diff options
| author | Jacob McDonnell <jacob@jacobmcdonnell.com> | 2026-04-25 19:55:15 -0400 |
|---|---|---|
| committer | Jacob McDonnell <jacob@jacobmcdonnell.com> | 2026-04-25 19:55:15 -0400 |
| commit | 253e67c8b3a72b3a4757fdbc5845297628db0a4a (patch) | |
| tree | adf53b66087aa30dfbf8bf391a1dadb044c3bf4d /static/netbsd/man4/inet.4 4.html | |
| parent | a9157ce950dfe2fc30795d43b9d79b9d1bffc48b (diff) | |
docs: Added All NetBSD Manuals
Diffstat (limited to 'static/netbsd/man4/inet.4 4.html')
| -rw-r--r-- | static/netbsd/man4/inet.4 4.html | 128 |
1 files changed, 128 insertions, 0 deletions
diff --git a/static/netbsd/man4/inet.4 4.html b/static/netbsd/man4/inet.4 4.html new file mode 100644 index 00000000..a8a64588 --- /dev/null +++ b/static/netbsd/man4/inet.4 4.html @@ -0,0 +1,128 @@ +<table class="head"> + <tr> + <td class="head-ltitle">INET(4)</td> + <td class="head-vol">Device Drivers Manual</td> + <td class="head-rtitle">INET(4)</td> + </tr> +</table> +<div class="manual-text"> +<section class="Sh"> +<h1 class="Sh" id="NAME"><a class="permalink" href="#NAME">NAME</a></h1> +<p class="Pp"><code class="Nm">inet</code> — <span class="Nd">Internet + protocol family</span></p> +</section> +<section class="Sh"> +<h1 class="Sh" id="SYNOPSIS"><a class="permalink" href="#SYNOPSIS">SYNOPSIS</a></h1> +<p class="Pp"><code class="In">#include + <<a class="In">sys/types.h</a>></code> + <br/> + <code class="In">#include <<a class="In">netinet/in.h</a>></code></p> +</section> +<section class="Sh"> +<h1 class="Sh" id="DESCRIPTION"><a class="permalink" href="#DESCRIPTION">DESCRIPTION</a></h1> +<p class="Pp">The Internet protocol family is a collection of protocols layered + atop the + <a class="permalink" href="#Internet"><i class="Em" id="Internet">Internet + Protocol</i></a> (IP) transport layer, and using the Internet address + format. The Internet family provides protocol support for the + <code class="Dv">SOCK_STREAM</code>, <code class="Dv">SOCK_DGRAM</code>, and + <code class="Dv">SOCK_RAW</code> socket types; the + <code class="Dv">SOCK_RAW</code> interface provides access to the IP + protocol.</p> +</section> +<section class="Sh"> +<h1 class="Sh" id="ADDRESSING"><a class="permalink" href="#ADDRESSING">ADDRESSING</a></h1> +<p class="Pp">Internet addresses are four byte quantities, stored in network + standard format (on the VAX these are word and byte reversed). The include + file <code class="In"><<a class="In">netinet/in.h</a>></code> defines + this address as a discriminated union.</p> +<p class="Pp">Sockets bound to the Internet protocol family use the following + addressing structure,</p> +<div class="Bd Pp Bd-indent Li"> +<pre>struct sockaddr_in { + uint8_t sin_len; + sa_family_t sin_family; + in_port_t sin_port; + struct in_addr sin_addr; + int8_t sin_zero[8]; +};</pre> +</div> +<p class="Pp">Sockets may be created with the local address + <code class="Dv">INADDR_ANY</code> to effect “wildcard” + matching on incoming messages. The address in a <a class="Xr">connect(2)</a> + or <a class="Xr">sendto(2)</a> call may be given as + <code class="Dv">INADDR_ANY</code> to mean “this host”. The + distinguished address <code class="Dv">INADDR_BROADCAST</code> is allowed as + a shorthand for the broadcast address on the primary network if the first + network configured supports broadcast.</p> +</section> +<section class="Sh"> +<h1 class="Sh" id="PROTOCOLS"><a class="permalink" href="#PROTOCOLS">PROTOCOLS</a></h1> +<p class="Pp">The Internet protocol family comprises the IP transport protocol, + Internet Control Message Protocol (ICMP), Transmission Control Protocol + (TCP), and User Datagram Protocol (UDP). TCP is used to support the + <code class="Dv">SOCK_STREAM</code> abstraction while UDP is used to support + the <code class="Dv">SOCK_DGRAM</code> abstraction. A raw interface to IP is + available by creating an Internet socket of type + <code class="Dv">SOCK_RAW</code>. The ICMP message protocol is accessible + from a raw socket.</p> +<p class="Pp">The 32-bit Internet address contains both network and host parts. + It is frequency-encoded; the most-significant bit is clear in Class A + addresses, in which the high-order 8 bits are the network number. Class B + addresses use the high-order 16 bits as the network field, and Class C + addresses have a 24-bit network part. Sites with a cluster of local networks + and a connection to the Internet may chose to use a single network number + for the cluster; this is done by using subnet addressing. The local (host) + portion of the address is further subdivided into subnet and host parts. + Within a subnet, each subnet appears to be an individual network; + externally, the entire cluster appears to be a single, uniform network + requiring only a single routing entry. Subnet addressing is enabled and + examined by the following <a class="Xr">ioctl(2)</a> commands on a datagram + socket in the Internet domain; they have the same form as the + <code class="Dv">SIOCIFADDR</code> command (see + <a class="Xr">netintro(4)</a>).</p> +<dl class="Bl-tag"> + <dt id="SIOCSIFNETMASK"><a class="permalink" href="#SIOCSIFNETMASK"><code class="Dv">SIOCSIFNETMASK</code></a></dt> + <dd>Set interface network mask. The network mask defines the network part of + the address; if it contains more of the address than the address type + would indicate, then subnets are in use.</dd> + <dt id="SIOCGIFNETMASK"><a class="permalink" href="#SIOCGIFNETMASK"><code class="Dv">SIOCGIFNETMASK</code></a></dt> + <dd>Get interface network mask.</dd> +</dl> +</section> +<section class="Sh"> +<h1 class="Sh" id="SEE_ALSO"><a class="permalink" href="#SEE_ALSO">SEE + ALSO</a></h1> +<p class="Pp"><a class="Xr">ioctl(2)</a>, <a class="Xr">socket(2)</a>, + <a class="Xr">icmp(4)</a>, <a class="Xr">intro(4)</a>, + <a class="Xr">ip(4)</a>, <a class="Xr">netintro(4)</a>, + <a class="Xr">tcp(4)</a>, <a class="Xr">udp(4)</a></p> +<p class="Pp"><cite class="Rs"><span class="RsA">Stuart Sechrest</span>, + <span class="RsT">An Introductory 4.4BSD Interprocess Communication + Tutorial</span>.</cite> (see + <span class="Pa">/usr/share/doc/reference/ref3/sockets</span>)</p> +<p class="Pp"><cite class="Rs"><span class="RsA">Samuel J. Leffler</span>, + <span class="RsA">Robert S. Fabry</span>, <span class="RsA">William N. + Joy</span>, <span class="RsA">Phil Lapsley</span>, <span class="RsA">Steve + Miller</span>, and <span class="RsA">Chris Torek</span>, + <span class="RsT">Advanced 4.4BSD IPC Tutorial</span>.</cite> (see + <span class="Pa">/usr/share/doc/reference/ref3/sockets-advanced</span>)</p> +</section> +<section class="Sh"> +<h1 class="Sh" id="HISTORY"><a class="permalink" href="#HISTORY">HISTORY</a></h1> +<p class="Pp">The <code class="Nm">inet</code> protocol interface appeared in + <span class="Ux">4.2BSD</span>.</p> +</section> +<section class="Sh"> +<h1 class="Sh" id="BUGS"><a class="permalink" href="#BUGS">BUGS</a></h1> +<p class="Pp">The Internet protocol support is subject to change as the Internet + protocols develop. Users should not depend on details of the current + implementation, but rather the services exported.</p> +</section> +</div> +<table class="foot"> + <tr> + <td class="foot-date">June 28, 2022</td> + <td class="foot-os">NetBSD 10.1</td> + </tr> +</table> |
