关于INADDR_ANY的问题

关于INADDR_ANY的问题,第1张

关于INADDR_ANY的问题

它不会获取对Internet
(a)上每个IP地址的请求,而是会获取其服务的每个IP地址的请求。例如,它可能具有多个NIC,每个NIC都有一个单独的IP地址,或者它可能具有一个能够管理多个IP地址的NIC(它甚至可能具有多个NIC,每个NIC能够处理多个IP地址。

要查看的关键代码段是:

…我们通常希望多宿主主机上的应用程序能够接收指定 主机IP地址 (斜体)的数据报或连接请求

换句话说,您可能有一个多宿主设置,其中您的机器服务

10.0.0.15
10.0.0.16
。使用,
INADDR_ANY
您可以选择这两个地址的流量,
而无需 选择
10.0.0.17
可能是工作台另一端(或地球另一侧)上的计算机的请求。

下表中的第一行是请求的目的地,左列是您正在监听的地址,该表格显示了是否会向您发送请求

Y
N
):

Request to>  10.0.0.15  10.0.0.16  10.0.0.17Bind to:    *-------------------------------10.0.0.15   |    Y          N          N10.0.0.16   |    N          Y          NINADDR_ANY  |    Y          Y          N

(a)甚至在网络上都 看不到 绝大多数请求。绝大多数人甚至都没有将它连接到最近的路由器(甚至可能是您的ISP)。即使是那些 确实连接
到您最近的路由器的计算机,您的特定计算机也可能看不到它们是否是发往本地网段上的另一台计算机的(尽管是混杂模式)。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5046449.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-15
下一篇 2022-11-15

发表评论

登录后才能评论

评论列表(0条)

保存