与这个问题仅略有关系,因为它是在同一次扫描中发现的:
netdiscover
在家庭网络上运行时,我的 iPod Touch(由 DHCP 保留的 IP 地址和 MAC 地址标识)既响应了我们 10.xxx 子网上的 IP 地址,也响应了 0.0.0.0。为什么会发生这种情况?
编辑: 运行一段时间后netdiscover
,似乎网络上的一台 PS3 也在响应 0.0.0.0 - 这是为什么?
答案1
来自文章0.0.0.0:
当计算机未连接到 TCP/IP 网络时,它们通常会显示地址 0.0.0.0。有了这个地址,计算机就无法通过 IP 与任何其他设备建立连接或通信。
TCP/IP 软件应用程序也使用 0.0.0.0 作为编程技术来监控来自任何有效 IP 地址的网络流量。虽然连接的计算机不使用此地址,但当消息来源未知时,通过 IP 传输的消息有时会在标头中包含 0.0.0.0。
还引用自此主题:
IP 地址 0.0.0.0 可以具有非常不同的含义,具体取决于其使用地点。
- 它不是分配给实际网络接口的有效地址,以及 10.0.0.0/8 子网中的任何其他地址(即以 0 开头的任何地址)。
- 它不能用作任何 IP 数据包的源地址,除非计算机还不知道自己的 IP 地址并且正在尝试获取 IP 地址(典型示例:DHCP)。
- 如果在路由表中使用,它标识默认网关;到 0.0.0.0 的路由是默认路由,即,当没有更具体的路由可用于目标地址时使用的路由。
- 最后,当在 netstat 命令的输出中看到时(这是您要求的),这意味着给定的套接字正在监听计算机拥有的所有可用 IP 地址;当计算机具有多个 IP 地址时,套接字只能绑定到特定的地址和端口对,或绑定到端口和所有地址;如果您在那里看到 IP 地址,则意味着套接字只监听该端口和该特定地址;如果您看到 0.0.0.0,则意味着它正在监听机器的所有地址上的该端口,包括环回地址(127.0.0.1)。
一种可能性是 iPod/PS3 上的软件存在错误,一旦 DHCP 授予了真实地址,就会忘记放弃 0.0.0.0 地址。
更危险的可能性是这些设备上的某些软件正在监听您本地网络上传输的所有信息。尽管可能性很小,但当这些设备连接到网络时,我不会代替您登录我的银行网站。