我正在复习网络知识,我发现:
- 网络地址是
0
子网掩码后全为s的 IP 地址 - 广播地址是
1
子网掩码后全为s的 IP 地址
当一个 IP 地址足够时,在子网中保留两个 IP 地址有什么意义?
我正在复习网络知识,我发现:
0
子网掩码后全为s的 IP 地址1
子网掩码后全为s的 IP 地址当一个 IP 地址足够时,在子网中保留两个 IP 地址有什么意义?
当一个 IP 地址足够时,在子网中保留两个 IP 地址有什么意义?
[...] 如果理论上可行,为什么要避免?
我们与历史共存。网络地址和广播地址之间的区别不像现在那么清晰。有些软件将全 0 视为广播,有些软件允许它作为主机,有些则不允许。
与其确切地找出当前和未来网络中的所有内容都需要什么,您可以“浪费”地址以避免任何潜在的不兼容。对于许多组织而言,互操作性是 IP 最重要的特征。
RFC“ Internet 主机的要求——通信层”(在 RFC 791 的相应部分之后)是这样写的:
1.2.2 Robustness Principle
At every layer of the protocols, there is a general rule whose
application can lead to enormous benefits in robustness and
interoperability:
"Be liberal in what you accept, and
conservative in what you send"
您必须记住,当时,其中许多事情都是实验性的,并且在您拥有数百万个主机之后,做某事的最佳方式可能不会变得显而易见。此外,IP 的设计正在与许多其他专有和商业网络协议竞争;它成为主导的原因之一正是因为这种多供应商、多时代的兼容性。
因此,作为我们可以实际使用的实际网络的价格的一部分,我们忍受着这个小皱纹以及许多其他问题,而不是理论上的网络,后者在小方面可能会更好。
当一个 IP 地址足够时,在子网中保留两个 IP 地址有什么意义?
网络地址和广播地址是不同的东西。网络地址用于将子网作为一个整体来引用,例如在路由表中。广播地址用于将数据报寻址到子网内的所有主机。
有时也可以对主机使用全零地址。但这并没有得到很好的支持,应该避免。
也RFC 3021见https://www.rfc-editor.org/rfc/rfc3021 ......有时主机使用的网络地址和广播地址的IS支持。
回到过去,当 CPU 资源稀缺时,使用此类地址是完全可以理解的,因为您可以使用带有XOR和AND门的简单逻辑计算来决定是否应该路由数据包。