127.0.0.1/8 和 CIDR 表示法

127.0.0.1/8 和 CIDR 表示法

经过深入审查后,我经常在 Linux 配置文件中看到网络和 CIDR 符号:

127.0.0.1/8

设置网络环回接口。

正确的 CIDR 应该是

127.0.0.0/8

因为 127.0.0.1 是环回 IP。为什么许多默认的 linux 和 bsd 配置文件使用第一个?

答案1

查看第一个例子,127.0.0.1/8很明显,它在地址中不属于前缀的部分设置了位(前 8 位,由 指定/8)。
如果目标只是定义标识此网络的前缀,那么包含这些位实际上没有任何意义,而127.0.0.0/8(甚至127/8)才是可行的方法。

但是,如果目标是一次性指定主机地址和网络前缀长度(对经典主机 IP 地址 + 网络掩码的更现代的看法),则127.0.0.1/8非常有意义。

从问题中看不出这一点,但我想您在指定主机地址的情况下见过这种情况。
另一种选择似乎是有人犯了一个错误。

答案2

在 CIDR 表示法中,127.0.0.1/8是指定主机地址和子网掩码的一种方式。127.0.0.0/8是指定网络地址和子网掩码的一种方式。 它们是两个不同的东西,都以 CIDR 表示法表示。

如果我说我的网络地址是 192.168.1.0/24,我的主机地址是 192.168.1.1/24,那么这意味着我的网络地址是 192.168.1.0,子网掩码是 255.255.255.0,我的主机地址是 192.168.1.1,子网掩码是 255.255.255.0。正如您的示例所暗示的那样,CIDR 表示法可用于表示两者。

答案3

地址范围中的每个地址127.0.0.0/8都是 IPv4 环回地址,而不仅仅是127.0.0.1

在许多情况下,用 来引用地址是完全正确的,而127.0.0.1/8不是像以前那样使用地址和掩码,例如127.0.0.1 255.0.0.0

相关内容