为什么子网掩码以完整的点表示法指定,而不是仅仅一个数字?

为什么子网掩码以完整的点表示法指定,而不是仅仅一个数字?

IPv4 的子网掩码(不知道 v6 是否如此)以完整的点表示法指定,例如255.255.255.0。这意味着低八位可用于为 LAN 上的设备分配 IP 地址(如果我理解正确的话)。为什么要写出完整的子网,而我只需说8,即掩码中的 0 位数量(因为它们都在低端)?

答案1

因为指示掩码中设置的位数比指示未设置的位数更有意义。那就是 /24。反过来,这是因为掩码更常用于回答“目的地是否与我在同一个网络中?”这个问题,而答案取决于按位掩码与IP地址之间,如果这样对源IP和掩码以及目的IP和掩码相同的操作结果相同,说明它们在同一个网络内,不需要网关交互。

是的,斜线表示法更方便,但理解起来也更复杂,因为它需要理解掩码/前缀的用途。很多人缺乏这种理解,所以他们更容易使用他们熟悉的常用 IP 表示法。这就是这种表示法的主要原因。

答案2

有些网络掩码可以用点分表示法定义,但不能用 CIDR 表示法定义。在实际生活中,您应该避免使用非 CIDR 网络掩码。例如:

    10.0.0.0 255.254.255.0

请注意,第二个八位字节中有一个位翻转。这变成了在单个网络 + 子网中定义的两个 IP 地址范围。如果我能找到铅笔和纸,我会说出这两个范围等于什么。

相关内容