什么是IP地址0.0.0.1以及如何使用它?

skw*_*kie 7 ip

我一直在看到0.0.0.1Nginx 配置和 OpenResty 代码中使用的 IP 地址,但我不知道它是什么。

一个谷歌结果显示它是一个有效的保留地址,但我没有找到如何使用它的线索。有人可以帮我了解更多吗?

DrZ*_*Zoo 10

我认为您不能为主机分配任何 0.0.0.0/8 地址。

0.0.0.0/8 网络由 IANA 根据RCF 5735保留。这是“目前使用”的原因是:

"This" network.

我确实找到了解释特殊地址使用的IANA IPv4 特殊用途地址注册页面。在本文档中,它更具体地介绍了 0.0.0.0/8 并说它是为了"This host on this network"

一些重要的术语

来源

  • 一个布尔值,指示分配的专用地址块中的地址在用作传输两个设备的 IP 数据报的源地址时是否有效。

目的地

  • 一个布尔值,指示分配的专用地址块中的地址在用作传输两个设备的 IP 数据报的目标地址时是否有效。

可转发

  • 一个布尔值,指示路由器是否可以转发目的地址来自外部接口之间分配的专用地址块的 IP 数据报。

全球可达

  • 一个布尔值,指示目标地址从分配的专用地址块中提取的 IP 数据报是否可转发到指定的管理域之外。

协议保留

  • 一个布尔值,指示专用地址块是否由 IP 本身保留。如果创建专用地址块的 RFC 要求所有兼容的 IP 实现在处理发往或来自地址块包含的地址的数据包时以特殊方式运行,则该值为“TRUE”。

0.0.0.0/8 仅作为source地址列出,并且是reserved-by-protocol. 它不是一个destinationforwardableglobally reachable地址。

经过更多的挖掘,RCF 1122RCF 1700都支持这一点。

RCF 1122 states a { 0, <Host-number> } address 
Run Code Online (Sandbox Code Playgroud)

此网络上的指定主机。它不得被发送,除非作为源地址作为初始化程序的一部分,主机通过该程序获知其完整的 IP 地址。

RCF 1700 states a { 0, <Host-number> } address 
Run Code Online (Sandbox Code Playgroud)

此网络上的指定主机。只能用作源地址。

经过所有这些查找,我仍然不清楚如何使用 0.0.0.0/8 地址之一。根据我的理解,在计算机获取 IP 地址之前,这些地址之一似乎以某种方式用作源地址。

我的一个猜测是它可以用于 ARP 或 DCHP DISCOVERY 请求。即使这样,根据我的经验,DHCP DISCOVERY 的源地址是 0.0.0.0/32

更新:我发现了一个示例,其中 0.0.0.1 用于阿尔卡特朗讯线路卡的 ARP 请求,其中将 0.0.0.1 称为请求的发送者。

这通常用于 RAPS(环自动保护交换)卡、链路聚合/多机箱链路聚合或其他无源硬件。

  • 我会做更多的查找,也许会给某人发消息,看看我是否可以获得关于如何使用这些地址之一的更清晰、更真实的解释。 (3认同)
  • @Anaksunaman 我找到了一个例子,我把它添加到了答案中。 (3认同)