接收广播(或其他数据包)时0.0.0.0地址的含义是什么?

问题描述 投票:0回答:1

我有两个脚本,第一个发送广播,第二个接收UDP数据包。仅当接收脚本将其 IP 地址(通过绑定)设置为 0.0.0.0 时,它才起作用。为什么?这个地址应该类似于“不存在的地址”,那么脚本如何将其设置为像他自己的地址一样呢?为什么127.0.0.1(或者确切地说是192.168.0.xx)不起作用?

谢谢你,RA

c udp ipv4
1个回答
4
投票

您的机器可能有两个或多个具有不同 IP 的接口,因为您已经知道

127.0.0.1
IP 表示您的本地机器,而
192.168.0.xx
是路由器通过 DHCP 发送给您或由您静态分配的本地 IP,
 0.0.0.0
是一个特殊地址,表示您机器的 每个 IP 地址

因此,如果您在 0.0.0.0 中绑定某些服务侦听器,则所有 IP 都会受到影响。

例如,您需要仅接收本地主机的流量,然后将服务器设置在127.0.0.1上,现在您还需要来自192.168.0.xx的流量,然后绑定在这个IP上。但是,如果您需要流量通过您绑定

0.0.0.0
地址的所有 IP。如果您的计算机上运行有两个或多个具有两个不同 IP 的接口,则服务器将侦听这两个接口。

© www.soinside.com 2019 - 2024. All rights reserved.