0.0.0.0/8 据说是当前网络。范围内的 IP 地址是否不公开?它们本质上是私有 IP 地址吗,虽然没有说是?谢谢。
0.0.0.0/8 中的 IP 地址是否本质上是私有 IP 地址,虽然没有说是?
网络工程
IP地址
2022-02-08 01:14:17
2个回答
IPv4 地址的 IANA 注册表参考 RFC 1122 的 0.0.0.0/8。RFC 1122 在第 3.2.1.3 节中定义了该块中的地址,请注意它是在分类时代编写的,因此需要进行一些翻译才能将其翻译成现代术语。
首先定义0.0.0.0/32(在有类术语中网络号为0,主机号为0)
(a) { 0, 0 }
This host on this network. MUST NOT be sent, except as
a source address as part of an initialization procedure
by which the host learns its own IP address.
实际上,此地址广泛用于 DHCP,它还在套接字 API 中用作通配符地址以指定“任何接口”。一些实现还将尝试发送数据包或连接到 0.0.0.0 与尝试将它们发送到环回地址相同。
现在让我们看看 0.0.0.0/8 的其余部分(在分类术语网络编号 0 中)
(b) { 0, <Host-number> }
Specified host on this network. It MUST NOT be sent,
except as a source address as part of an initialization
procedure by which the host learns its full IP address.
因此,原则上,如果您的网络在网络特定地址和 IP 地址的主机部分之间具有静态映射,您可以在初始化过程中使用 0.0.0.0/8 中的地址作为源地址来查找 IP 的网络部分地址。
在实践中,这很少发生。虽然网络特定地址和 Internet 地址之间的静态映射在 Internet 早期是一件事,但如今它们基本上闻所未闻。
范围内的 IP 地址是否不公开?
它们不在公共互联网上使用。
它们本质上是私有 IP 地址吗,虽然没有说是?
并不真地。
是的,它们的预期用途是给定网络的本地用途,但它们的预期用途非常具体。它们不打算用作通用私有地址。
您可能会问“既然没有人将它们用于其原始目的,并且它们不用于 Internet 上的任何东西,为什么不忽略 RFC 并将它们用作通用私有地址?”。
对此的答案是“不幸的是,实现不会让你”。
该0.0.0.0/8块由 ARIN 保留,请参阅RFC 1122。(彼得的回答很好地解释了 RFC 的术语,请阅读并欣赏。)
0.0.0.0/32可以暂时使用 [edit]作为源地址,用于通过 DHCP 等通过网络获取本地 IP 地址。