地址族是什么?

28

当我阅读有关套接字编程的内容时,我了解到AF_代表地址族。但从字面上看,一个家族应该有许多成员。那么,比如AF_INET地址族的成员是什么?

在我看来,我认为说地址类型比说地址家族更加恰当。同样适用于PF(协议族)。

谢谢。


3
“类型”可以有不同的含义;广播地址是一种类型,多播地址是另一种类型等。 - Gabe
我同意。有时我也会对术语的选择感到困惑,比如 AF。我想可能存在一些历史原因,但我不确定。无论如何,在这种情况下,我会尝试弄清楚它们是否与我的概念理解相一致。但如果无法理解,我就会接受这个术语。 - yaobin
2个回答

34

AF_INET地址族的成员是IPv4地址。

AF_INET6地址族的成员是IPv6地址。

AF_UNIX地址族的成员是Unix域套接字的名称(例如:/var/run/mysqld/mysqld.sock)。

AF_IPX地址族的成员是IPX地址,等等。

我认为在这里你真的不需要区分类型。这些只是同义词;除了看起来更专业、更适合这个目的之外,类型是一个过于通用的词。

最终,这是一种约定。有很多文献使用了"地址族"这个术语,它已经成为了一个长期以来的行业术语,至少有几十年的历史了。


那么,什么时候应该计划添加/创建新的地址族类型(AF_)?有任何标准吗?我在网络行业工作,看到AF_<XXX>套接字注册消息,其中XXX是非标准名称。 - Abhishek Sagar
@Abnishek 网络寻址是OSI第三层功能;因此,每当您发明/引入/尝试新的L3协议(基本上意味着:任何IP替代品)时,您还需要一个新的地址族和一个新的AF_<XXX>常量。 - ulidtko

18
  Name                   Purpose                 
   AF_UNIX, AF_LOCAL      Local communication              
   AF_INET                IPv4 Internet protocols        
   AF_INET6               IPv6 Internet protocols
   AF_IPX                 IPX - Novell protocols
   AF_NETLINK             Kernel user interface device    
   AF_X25                 ITU-T X.25 / ISO-8208 protocol 
   AF_AX25                Amateur radio AX.25 protocol
   AF_ATMPVC              Access to raw ATM PVCs
   AF_APPLETALK           Appletalk                      
   AF_PACKET              Low level packet interface   

3
这个清单的来源在哪里?看起来相当不错且详尽。 - sarangj
3
@sarangj 你可以在 地址族(7) 手册中找到它们。 - yaobin

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接