Raf*_*ski 9 networking ip subnet
我读到这个池:
我的问题是:
根据RFC 5735:
0.0.0.0/8 - 此块中的地址是指“此”网络上的源主机。地址 0.0.0.0/32 可用作此网络上此主机的源地址;0.0.0.0/8 中的其他地址可用于指代此网络上的指定主机([RFC1122],第 3.2.1.3 节)。
因此,查看RFC 1122:
0.0.0.0/32:
此网络上的此主机。不得发送,除非作为源地址作为初始化程序的一部分,主机通过该程序获知自己的 IP 地址。
0.0.0.0/8(即从 0.0.0.0 到 0.255.255.255 的任何 IP):
此网络上的指定主机。它不得被发送,除非作为源地址作为初始化程序的一部分,主机通过该程序获知其完整的 IP 地址。
所以@Spiff 是对的,它们专门用于在获取“真实”IP 地址之前的初始化过程。
但后来 RFC 1122 指出:
有一类主机(4.2BSD Unix 及其衍生产品,但不是 4.3BSD)使用非标准广播地址形式,用 0 代替 255(如 0.0.0.0 而不是 255.255.255.255)
因此 BSD 4.2 版实际上将广播发送到0.0.0.0.
更新:
又找到了一条信息:
0.0.0.0/32 是 INADDR_ANY [snip] 0.0.0.0/8 的另一个常见用途是指定 ifIndex 编号,如 OSPF 中的“链接数据”值,以及一些 BSD-ish 接口。
而在这里再次出现BSD:
imr_interface 应设置为 INADDR_ANY 以选择默认多播接口,或者如果主机是多宿主的,则选择具有多播功能的特定接口的 IP 地址。从 FreeBSD 4.4 开始,如果 imr_interface 成员在网络范围 0.0.0.0/8 内,根据 RIP 第 2 版 MIB 扩展 (RFC-1724),它将被视为系统接口 MIB 中的接口索引。
看起来它是由 IANA 保留的 - 分发 IP 地址的组织在表中看到 000/8。该表显示 000/8 到 255/8,即 0.0.0.0/8 到 255.0.0.0/8
我认为在 Windows 中,如果 ipconfig 显示它,则意味着没有分配 IP 地址,就像 ipconfig /release 可能或会导致它。
在 netstat -n 中,无论是列为“侦听”的 0.0.0.0 还是 RFC 1918 中的私有地址(如 192.168.1.0),或者如果是 127/8,它们都会告诉您谁可以连接,因此,如果 0.0.0.0,则任何人,如果 192.168.1.0,则只有它们,如果是 127/8,则只有本地主机。
至于什么协议,我只能说IP,因为它们是IP地址。但也许一些更高层协议会这样做……它不适用于广播。它不会识别任何其他 IP 地址或网络,事实上,因为网络上的计算机不应该具有该 IP 地址,所以它不会识别任何其他 IP 地址或网络。
在 Windows 中,当计算机具有该 IP 时,它并不在网络上。(更正一下,如果有有线或无线连接,它将在网络上,并且正如 grality 指出的那样,它们仍然有自己的 MAC 地址)
http://www.iana.org/assignments/ipv4-address-space/ipv4-address-space.xml
前缀指定 日期 Whois 状态注释
000/8 IANA - 本地标识 1981-09 保留
001/8 APNIC 2010-01 whois.apnic.net 分配
002/8 RIPE NCC 2009-09 whois.ripe.net 分配
003/8 通用电气公司1994-05 LEGACY
004/8 Level 3 Communications, Inc. 1992-12 LEGACY
005/8 RIPE NCC 2010-11 whois.ripe.net 已分配