我有两个主机。它们都具有相同的 IP/子网,例如:1.2.3.4/24。我知道这很糟糕,因为网络中会有重复的 IP。好的。
但是:如果我有不同的(?)范围:
1.2.3.4/22
和
1.2.3.4/24
同样的情况,会不会造成IP冲突?或者由于不同的子网,它们不会以任何方式相互影响?
我有两个主机。它们都具有相同的 IP/子网,例如:1.2.3.4/24。我知道这很糟糕,因为网络中会有重复的 IP。好的。
但是:如果我有不同的(?)范围:
1.2.3.4/22
和
1.2.3.4/24
同样的情况,会不会造成IP冲突?或者由于不同的子网,它们不会以任何方式相互影响?
IPv4 地址是一个 32 位的数字,掩码不同也没关系,所有 32 位都是地址,所以如果它们相同,则它是相同的地址。
掩码(或掩码长度)只是确定地址的哪一部分代表网络,哪一部分代表网络上的主机。/24网络地址是网络的子网/22。这意味着/24网络是网络的一部分/22,但/22网络也有其他不属于/24网络的地址。单个地址是/24网络的一部分,并且通过扩展,/22是包含网络的/24网络的一部分。无论网络掩码(或掩码长度)如何,地址都是相同的地址。
IPv4 数据包头不包含任何掩码信息;它们只有地址,因此无法从数据包中确定您的意思是哪个网络,所以是的,您有两个具有相同地址的主机。
将您的网络/子网视为二叉树。增加一点掩码长度只是将网络的主机地址数量减半。在下图中,无论您从主机地址( 、 等)上方的二叉树的哪个位置开始/22,/23 /24沿着二叉树向下移动都会到达相同的最终地址:
掩码长度只是告诉您从二叉树的哪个位置开始。
通用概念:
简短的回答: 是的,它仍然存在冲突。
长答案:
如果它连接到同一个广播域(L2 网络交换机),那么两者都无法按预期工作。
如果它在不同的 L2 网络中。只能访问一台主机。哪个 - 取决于路由规则。(例如任播以这种方式工作)。但这仍然给 TCP 协议带来麻烦,因此 anucast 最常用于简单的 UDP 无状态请求-响应协议。以 DNS 为例。
详细了解需要了解 ARP(ND)和 TCP 协议的工作原理。