首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >什么是AF_INET,我为什么需要它?

什么是AF_INET,我为什么需要它?
EN

Stack Overflow用户
提问于 2009-10-20 11:28:43
回答 6查看 241.3K关注 0票数 248

我刚开始学习套接字编程,并且一直看到这个AF_INET

然而,我从来没有见过用其他东西来代替它。我的讲师并不是很有帮助,他们只是说“你就是需要它”。

所以我的问题是:

AF_INET

  • Is的用途是什么?
    • 如果没有,为什么会在那里?将来可能发生的变化?如果有,why?

是什么?

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2009-10-20 11:46:04

AF_INET是一个af,用于指定您的套接字可以与之通信的地址类型(在本例中为互联网协议v4地址)。创建套接字时,必须指定其地址族,然后只能将该类型的地址与套接字一起使用。例如,Linux内核支持其他29个地址族,如UNIX (AF_UNIX)套接字和IPX (AF_IPX),还支持IRDA和蓝牙(AF_IRDAAF_BLUETOOTH,但怀疑您是否会在如此低的级别上使用它们)。

在大多数情况下,坚持使用AF_INET进行网络上的套接字编程是最安全的选择。还有用于互联网协议v6地址的AF_INET6

希望这能帮上忙

票数 342
EN

Stack Overflow用户

发布于 2009-10-20 11:36:54

AF_INET的主要目的是允许其他可能的网络协议或地址族(AF用于地址族;PF_INET用于(IPv4)互联网协议族)。例如,可能还存在一些Netware SPX/IPX网络;还有其他网络系统,如DECNet、StarLAN和SNA,更不用说不成熟的ISO (开放式系统互连),这些系统不一定使用现在无处不在的IP地址来识别网络连接中的对等主机。

AF_INET (回想起来,应该命名为AF_INET4)的普遍替代品是AF_INET6,用于IPv6地址族。IPv4使用32位地址;IPv6使用128位地址。

您可能会看到一些其他值-但它们是不寻常的。它的存在是为了考虑其他选择和未来的发展方向。套接字接口实际上是非常通用的--这也是它在其他网络接口衰落的情况下蓬勃发展的原因之一。

生活(大部分)变得更简单了--心存感激。

票数 51
EN

Stack Overflow用户

发布于 2013-01-17 11:29:20

套接字特征在于它们的域、类型和传输协议。常见的域有:

主机和端口号:地址格式为UNIX pathname

  • AF_INET:地址格式为
  1. AF_UNIX

(实际上还有许多其他选项可用于特殊目的).usually我们使用AF_INET进行套接字编程

参考:http://www.cs.uic.edu/~troy/fall99/eecs471/sockets.html

票数 17
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1593946

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档