address_families(7)

ИМЯ
address_families - семейства адресов сокетов (домены)

СИНТАКСИС
#include <sys/types.h>          /* смотрите ЗАМЕЧАНИЯ */
#include <sys/socket.h>

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

ОПИСАНИЕ
Параметр domain в socket(2) задает домен соединения: выбирает семейство протоколов, которое будет использоваться для соединения. Семейства описаны в <sys/socket.h>. В настоящее время ядром Linux распознаются следующие форматы:

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

AF_INET
    Протоколы Интернет IPv4, дополнительная информация доступна в ip(7).

AF_AX25
    Протокол любительского радио AX.25, дополнительная информация доступна в ax25(4).

AF_IPX
    Протоколы Novell IPX.

AF_APPLETALK
    AppleTalk, дополнительная информация доступна в ddp(7).

AF_NETROM
    Протокол пакетного уровня AX.25, дополнительная информация доступна в netrom(4), The Packet Radio Protocols and Linux (https://www.tldp.org/HOWTO/AX25-HOWTO/x61.html) и AX.25, NET/ROM и главах ROSE network programming из Linux Amateur Radio AX.25 HOWTO (https://www.tldp.org/HOWTO/AX25-HOWTO/x2107.html).

AF_BRIDGE
    Нельзя использовать для создания сокетов; в основном используется для связей типа «мост» в протокольных командах rtnetlink(7).

AF_ATMPVC
    Доступ к неструктурированным постоянным виртуальным каналам ATM (PVC), дополнительная информация доступна в ATM on Linux HOWTO (https://www.tldp.org/HOWTO/text/ATM-Linux-HOWTO).

AF_X25
    Протокол ITU-T X.25 / ISO-8208, дополнительная информация доступна в x25(7).

AF_INET6
    Протоколы Интернет IPv6, дополнительная информация доступна в 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, дополнительная информация доступна в Documentation/networking/decnet.txt из дерева исходного кода Linux.

AF_NETBEUI
    Зарезервировано для «проекта 802.2LLC», никогда не использовалось.

AF_SECURITY
    Недолго существовавшее (с Linux 2.1.30 по 2.1.99pre2) семейство протоколов для вызовов из межсетевого экрана.

AF_KEY
    Прокотол управления ключами, изначально разрабатывался для использования с IPsec (начиная с Linux 2.1.38). Никак не связан с keyctl(2) и возможностью хранения ключей в ядре. Дополнительная информация доступна в RFC 2367 PF_KEY Key Management API, Version 2 (https://tools.ietf.org/html/rfc2367)

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

AF_PACKET
    Низкоуровневый пакетный интерфейс, дополнительная информация доступна в packet(7).

AF_ECONET
    Протокол Acorn Econet (удалён в Linux 3.5); дополнительная информация доступна в Econet documentation (http://www.8bs.com/othrdnld/manuals/econet.shtml)

AF_ATMSVC
    Доступ к коммутируемым виртуальным каналам ATM (SVC); дополнительная информация доступна в ATM on Linux HOWTO (https://www.tldp.org/HOWTO/text/ATM-Linux-HOWTO)

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
    Транспортный слой PPP общего назначения для поднятия туннелей L2 (L2TP и PPPoE). Смотрите файл Documentation/networking/l2tp.txt в дереве исходного кода Linux.

AF_WANPIPE
    Устаревший протокол для территориально распределённой сети (WAN), использовался в картах Sangoma WAN («WANPIPE»); удалён в Linux 2.6.21.

AF_LLC
    Протокол управления логической связью (IEEE 802.2 LLC), верхних подуровень канального уровня сетевого стека протоколов ISO/OSI (начиная с Linux 2.4); никак не связан с AF_PACKET. Смотрите главу 13.5.3. Logical Link Control в Understanding Linux Kernel Internals (O'Reilly Media, 2006) и IEEE Standards for Local Area Networks: Logical Link Control (The Institute of Electronics and Electronics Engineers, Inc., New York, New York, 1985). В исторических заметках (https://wiki.linuxfoundation.org/networking/llc) описана разработка протокола.

AF_IB
    Собственная адресация InfiniBand (начиная с Linux 3.11).

AF_MPLS
    Многопротокольная коммутация по меткам (начиная с Linux 4.1); по большей части используется для настройки маршрутизации MPLS через netlink(7), так как нет возможности создавать сокеты в пользовательском пространстве.

AF_CAN
    Автотранспортный протокол шины Controller Area Network (начиная с Linux 2.6.25). Дополнительную информацию смотрите в файле Documentation/networking/can.rst в дереве исходного кода Linux.

AF_TIPC
    TIPC, протокол «кластерных доменных сокетов» (начиная с Linux 2.6.16). Смотрите TIPC Programmer's Guide (http://tipc.io/programming.html) и описание протокола (http://tipc.io/protocol.html)

AF_BLUETOOTH
    Сокетный протокол Bluetooth низкого уровня (начиная с Linux 3.11). Описан в Bluetooth Management API overview (https://git.kernel.org/pub/scm/bluetooth/bluez.git/tree/doc/mgmt-api.txt) и An Introduction to Bluetooth Programming Альбертом Хуангом (Albert Huang) (https://people.csail.mit.edu/albert/bluez-intro/)

AF_IUCV
    Протокол IUCV (средство межпользовательской связи) z/VM для взаимодействия гипервизор-гость (начиная с Linux 2.6.21); никак не связан с AF_VSOCK и/или AF_SMC. Дополнительную информацию смотрите в IUCV protocol overview (https://www.ibm.com/support/knowledgecenter/en/SSB27U_6.4.0/com.ibm.zvm.v640.hcpb4/iucv.htm)

AF_RXRPC
    Rx, протокол процедурных вызовов Andrew File System (начиная с Linux 2.6.22).Дополнительную информацию смотрите в файле Documentation/networking/rxrpc.txt дерева исходного кода Linux.

AF_ISDN
    Новый протокол взаимодействия с драйвером «модульного ISDN» (начиная с Linux 2.6.27). Смотрите вики mISDN (http://www.misdn.eu/wiki/Main_Page/)

AF_PHONET
    Интерфейс IPC/RPC к сотовому модему Nokia (начиная с Linux 2.6.31). Дополнительную информацию смотрите в файле Documentation/networking/phonet.txt дерева исходного кода Linux.

AF_IEEE802154
    Неструктурированный пакетный протокол IEEE 802.15.4 WPAN (персональная беспроводная сеть) (начиная с Linux 2.6.31). Дополнительную информацию смотрите в файле Documentation/networking/ieee802154.txt дерева исходного кода Linux.

AF_CAIF
    Протокол взаимодействия Ericsson Communication CPU с Application CPU (CAIF)(начиная с Linux 2.6.36). Дополнительную информацию смотрите в файле Documentation/networking/caif/Linux-CAIF.txt дерева исходного кода Linux.

AF_ALG
    Взаимодействие с ядерным интерфейсом шифрования (начиная с Linux 2.6.38). Дополнительную информацию смотрите в файле Documentation/crypto/userspace-if.rst дерева исходного кода Linux.

AF_VSOCK
    Протокол VMWare VSockets для взаимодействия гипервизор-гость (начиная с Linux 3.9);никак не связан с AF_IUCV и AF_SMC. Дополнительную информацию смотрите в 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 (начиная с Linux 4.7).

AF_SMC
    Протокол SMC-R (подключения к общей памяти через RDMA) (начиная с Linux 4.11), и протокол SMC-D (подключения к общей памяти, прямой доступ к памяти) для межузлового гостевого взаимодействия z/VM (начиная с Linux 4.19); никак не связан с AF_RDS, AF_IUCV или AF_VSOCK. В RFC 7609 IBM's Shared Memory Communications over RDMA (SMC-R) Protocol (https://tools.ietf.org/html/rfc7609) приведена информация по SMC-R. В SMC-D Reference Information (https://www-01.ibm.com/software/network/commserver/SMC-D/index.html) приведена информация по SMC-D.

AF_XDP
    Интерфейс XDP (короткий путь прохождения данных) (начиная с Linux 4.18). Дополнительную информацию смотрите в файле Documentation/networking/af_xdp.rst дерева исходного кода Linux.

СМ. ТАКЖЕ
socket(2), socket(7)

ПЕРЕВОД
Русский перевод этой страницы руководства был сделан Dmitry Bolkhovskikh <d20052005@yandex.ru> и Yuri Kozlov <yuray@komyakino.ru>

Этот перевод является бесплатной документацией; прочитайте Стандартную общественную лицензию GNU версии 3 (https://www.gnu.org/licenses/gpl-3.0.html) или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.

Если вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо на man-pages-ru-talks@lists.sourceforge.net.