*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->OpenBSD man pages -> inet (4)              



NAME    [Toc]    [Back]

     inet - Internet protocol family

SYNOPSIS    [Toc]    [Back]

     #include <sys/types.h>
     #include <netinet/in.h>

DESCRIPTION    [Toc]    [Back]

     The Internet protocol family is a  collection  of  protocols
layered atop
     the  Internet  Protocol  (IP) transport layer, and utilizing
the Internet
     address format.  The Internet family provides protocol  support for the
     SOCK_STREAM,  SOCK_DGRAM,  and  SOCK_RAW  socket  types; the
SOCK_RAW interface
 provides access to the IP protocol.

ADDRESSING    [Toc]    [Back]

     Internet addresses are four byte quantities, stored in  network standard
     format  (on  the VAX these are word and byte reversed).  The
include file
     <netinet/in.h>  defines  this  address  as  a  discriminated

     Sockets  bound  to  the Internet protocol family utilize the
following addressing

           struct sockaddr_in {
                   u_int8_t        sin_len;
                   sa_family_t     sin_family;
                   in_port_t       sin_port;
                   struct          in_addr sin_addr;
                   int8_t          sin_zero[8];

     Sockets may be created with the local address INADDR_ANY  to
     ``wildcard''  matching on incoming messages.  The address in
a connect(2)
     or sendto(2) call may be given as INADDR_ANY to mean  ``this
host''.  The
     distinguished  address  INADDR_BROADCAST  is  allowed  as  a
shorthand for the
     broadcast address on the primary network if the  first  network configured
     supports broadcast.

PROTOCOLS    [Toc]    [Back]

     The  Internet  protocol family is comprised of the IP transport protocol,
     Internet Control Message Protocol (ICMP), Transmission  Control Protocol
     (TCP),  and  User  Datagram  Protocol (UDP).  TCP is used to
support the
     SOCK_STREAM abstraction while UDP is  used  to  support  the
SOCK_DGRAM abstraction.
   A  raw interface to IP is available by creating
an Internet
     socket of type SOCK_RAW.  The ICMP message protocol  is  accessible from a
     raw socket.

     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 choose 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
     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 ioctl(2) commands  on  a
datagram socket
  in  the  Internet domain; they have the same form as the
 (see netintro(4)).

     SIOCSIFNETMASK  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.

     SIOCGIFNETMASK  Get interface network mask.

SEE ALSO    [Toc]    [Back]

     ioctl(2),  socket(2),  icmp(4),  ip(4), netintro(4), tcp(4),

     "An Introductory 4.3 BSD Interprocess Communication  Tutorial", PS1, 7.

     "An  Advanced  4.3 BSD Interprocess Communication Tutorial",
PS1, 8.

HISTORY    [Toc]    [Back]

     The inet protocol interface appeared in 4.2BSD.

CAVEATS    [Toc]    [Back]

     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.

OpenBSD      3.6                           June      5,      1993
[ Back ]
 Similar pages
Name OS Title
inet6 FreeBSD Internet protocol version 6 family
inet6 OpenBSD Internet protocol version 6 family
atalk OpenBSD AppleTalk Protocol Family
raw IRIX raw network protocol family
unix OpenBSD UNIX-domain protocol family
unix FreeBSD UNIX-domain protocol family
unix IRIX UNIX-domain protocol family
ns OpenBSD Xerox Network Systems(tm) protocol family
ip FreeBSD Internet Protocol
ip IRIX Internet Protocol
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service