noble (7) address_families.7.gz

Provided by: manpages_6.7-2_all bug

NAME

       address_families - socket address families (domains)

SYNOPSIS

       #include <sys/types.h>          /* See NOTES */
       #include <sys/socket.h>

       int socket(int domain, int type, int protocol);

DESCRIPTION

       The  domain  argument of the socket(2) specifies a communication domain; this selects the protocol family
       which will be used for communication.   These  families  are  defined  in  <sys/socket.h>.   The  formats
       currently understood by the Linux kernel include:

       AF_UNIX
       AF_LOCAL
              Local communication.  For further information, see unix(7).

       AF_INET
              IPv4 Internet protocols.  For further information, see ip(7).

       AF_AX25
              Amateur radio AX.25 protocol.  For further information, see ax25(4).

       AF_IPX IPX - Novell protocols.

       AF_APPLETALK
              AppleTalk For further information, see ddp(7).

       AF_NETROM
              AX.25  packet  layer protocol.  For further information, see netrom(4), The Packet Radio Protocols
              and Linux  ⟨https://www.tldp.org/HOWTO/AX25-HOWTO/x61.html⟩  and  the  AX.25,  NET/ROM,  and  ROSE
              network     programming     chapters     of     the    Linux    Amateur    Radio    AX.25    HOWTO
              ⟨https://www.tldp.org/HOWTO/AX25-HOWTO/x2107.html⟩.

       AF_BRIDGE
              Can't be used for creating  sockets;  mostly  used  for  bridge  links  in  rtnetlink(7)  protocol
              commands.

       AF_ATMPVC
              Access  to  raw  ATM  Permanent  Virtual Circuits (PVCs).  For further information, see the ATM on
              Linux HOWTO ⟨https://www.tldp.org/HOWTO/text/ATM-Linux-HOWTO⟩.

       AF_X25 ITU-T X.25 / ISO/IEC 8208 protocol.  For further information, see x25(7).

       AF_INET6
              IPv6 Internet protocols.  For further information, see ipv6(7).

       AF_ROSE
              RATS (Radio Amateur Telecommunications Society).  Open Systems  environment  (ROSE)  AX.25  packet
              layer protocol.  For further information, see the resources listed for AF_NETROM.

       AF_DECnet
              DECet  protocol  sockets.  See Documentation/networking/decnet.txt in the Linux kernel source tree
              for details.

       AF_NETBEUI
              Reserved for "802.2LLC project"; never used.

       AF_SECURITY
              This was a short-lived (between Linux 2.1.30 and 2.1.99pre2) protocol family for firewall upcalls.

       AF_KEY Key management protocol, originally developed for usage with IPsec (since Linux 2.1.38).  This has
              no  relation  to  keyctl(2)  and  the  in-kernel  key  storage  facility.  See RFC 2367 PF_KEY Key
              Management API, Version 2 ⟨https://tools.ietf.org/html/rfc2367⟩ for details.

       AF_NETLINK
              Kernel user interface device.  For further information, see netlink(7).

       AF_PACKET
              Low-level packet interface.  For further information, see packet(7).

       AF_ECONET
              Acorn   Econet   protocol   (removed   in   Linux   3.5).    See    the    Econet    documentation
              ⟨http://www.8bs.com/othrdnld/manuals/econet.shtml⟩ for details.

       AF_ATMSVC
              Access    to   ATM   Switched   Virtual   Circuits   (SVCs)   See   the   ATM   on   Linux   HOWTO
              ⟨https://www.tldp.org/HOWTO/text/ATM-Linux-HOWTO⟩ for details.

       AF_RDS Reliable Datagram Sockets (RDS) protocol (since Linux 2.6.30).  RDS over RDMA has no  relation  to
              AF_SMC    or    AF_XDP.     For    further    information,    see    rds(7),    rds-rdma(7),   and
              Documentation/networking/rds.txt in the Linux kernel source tree.

       AF_IRDA
              Socket interface over IrDA (moved to staging in Linux 4.14, removed in Linux 4.17).   For  further
              information, see irda(7).

       AF_PPPOX
              Generic   PPP   transport   layer,   for   setting   up   L2   tunnels   (L2TP  and  PPPoE).   See
              Documentation/networking/l2tp.txt in the Linux kernel source tree for details.

       AF_WANPIPE
              Legacy protocol for wide area network (WAN) connectivity  that  was  used  by  Sangoma  WAN  cards
              (called "WANPIPE"); removed in Linux 2.6.21.

       AF_LLC Logical  link  control  (IEEE  802.2  LLC)  protocol,  upper  part  of  data link layer of ISO/OSI
              networking protocol stack (since Linux 2.4); has no relation to AF_PACKET.   See  chapter  13.5.3.
              Logical  Link  Control  in  Understanding  Linux  Kernel Internals (O'Reilly Media, 2006) and IEEE
              Standards for Local Area  Networks:  Logical  Link  Control  (The  Institute  of  Electronics  and
              Electronics  Engineers,  Inc.,  New  York,  New York, 1985) for details.  See also some historical
              notes ⟨https://wiki.linuxfoundation.org/networking/llc⟩ regarding its development.

       AF_IB  InfiniBand native addressing (since Linux 3.11).

       AF_MPLS
              Multiprotocol Label Switching (since Linux 4.1); mostly used  for  configuring  MPLS  routing  via
              netlink(7), as it doesn't expose ability to create sockets to user space.

       AF_CAN Controller    Area    Network    automotive    bus    protocol    (since   Linux   2.6.25).    See
              Documentation/networking/can.rst in the Linux kernel source tree for details.

       AF_TIPC
              TIPC, "cluster domain sockets"  protocol  (since  Linux  2.6.16).   See  TIPC  Programmer's  Guidehttp://tipc.io/programming.html⟩  and the protocol description ⟨http://tipc.io/protocol.html⟩ for
              details.

       AF_BLUETOOTH
              Bluetooth low-level socket protocol (since Linux 3.11).  See  Bluetooth  Management  API  overview
              ⟨https://git.kernel.org/pub/scm/bluetooth/bluez.git/tree/doc/mgmt-api.txt⟩  and An Introduction to
              Bluetooth  Programming  by  Albert  Huang  ⟨https://people.csail.mit.edu/albert/bluez-intro/⟩  for
              details.

       AF_IUCV
              IUCV  (inter-user  communication  vehicle)  z/VM  protocol for hypervisor-guest interaction (since
              Linux  2.6.21);  has  no  relation  to  AF_VSOCK  and/or  AF_SMC  See   IUCV   protocol   overview
              ⟨https://www.ibm.com/support/knowledgecenter/en/SSB27U_6.4.0/com.ibm.zvm.v640.hcpb4/iucv.htm⟩  for
              details.

       AF_RXRPC
              Rx,  Andrew  File  System  remote   procedure   call   protocol   (since   Linux   2.6.22).    See
              Documentation/networking/rxrpc.txt in the Linux kernel source tree for details.

       AF_ISDN
              New  "modular  ISDN"  driver  interface  protocol  (since  Linux  2.6.27).   See  the  mISDN  wiki
              ⟨http://www.misdn.eu/wiki/Main_Page/⟩ for details.

       AF_PHONET
              Nokia     cellular     modem     IPC/RPC     interface     (since     Linux     2.6.31).       See
              Documentation/networking/phonet.txt in the Linux kernel source tree for details.

       AF_IEEE802154
              IEEE 802.15.4 WPAN (wireless personal area network) raw packet protocol (since Linux 2.6.31).  See
              Documentation/networking/ieee802154.txt in the Linux kernel source tree for details.

       AF_CAIF
              Ericsson's Communication CPU to Application CPU interface (CAIF) protocol  (since  Linux  2.6.36).
              See Documentation/networking/caif/Linux-CAIF.txt in the Linux kernel source tree for details.

       AF_ALG Interface to kernel crypto API (since Linux 2.6.38).  See Documentation/crypto/userspace-if.rst in
              the Linux kernel source tree for details.

       AF_VSOCK
              VMWare VSockets protocol for hypervisor-guest interaction (since Linux 3.9); has  no  relation  to
              AF_IUCV and AF_SMC.  For further information, see vsock(7).

       AF_KCM KCM     (kernel     connection     multiplexer)     interface     (since    Linux    4.6).     See
              Documentation/networking/kcm.txt in the Linux kernel source tree for details.

       AF_QIPCRTR
              Qualcomm IPC router interface protocol (since Linux 4.7).

       AF_SMC SMC-R (shared memory communications over RDMA) protocol (since  Linux  4.11),  and  SMC-D  (shared
              memory communications, direct memory access) protocol for intra-node z/VM quest interaction (since
              Linux 4.19); has no relation to AF_RDS, AF_IUCV or AF_VSOCK.  See RFC  7609  IBM's  Shared  Memory
              Communications  over  RDMA  (SMC-R)  Protocol  ⟨https://tools.ietf.org/html/rfc7609⟩  for  details
              regarding  SMC-R.   See  SMC-D  Reference   Information   ⟨https://www-01.ibm.com/software/network
              /commserver/SMC-D/index.html⟩ for details regarding SMC-D.

       AF_XDP XDP  (express data path) interface (since Linux 4.18).  See Documentation/networking/af_xdp.rst in
              the Linux kernel source tree for details.

SEE ALSO

       socket(2), socket(7)