比如以下这两个 IP 地址是同一个 IP 地址吗
通过子网掩码位运算后得出来的都一样,感觉会定位到同一个网络中的同一个主机
0.0000 1000.0.1 / 13 → 网络号 0.8.0.0 主机号 0.0.0.1
0.0000 1000.0.1 / 14 → 网络号 0.8.0.0 主机号 0.0.0.1
没看懂我意思,我贴张图吧,还是看不懂我问题就算了
当网络前缀为 14 位时,如第 14 位正好为 0 ,前面 13 位随便改变,(经过子网掩码位运算后会去除主机号后),网络号就会和 13 位的网络号发生重复,同理,主机号也会发生重复
没太理解你的问题,你这俩前缀长度都不一样,为啥会定位到同一个主机?有最长前缀匹配,只会匹配一个啊?
【针对问题补充】
对,按你这种设置是会重复。这就是常见的 IP 冲突问题,而且跟 CIDR 没啥太大关系,传统的那种掩码分配方式(虽然两者在大部分语境下其实是一回事儿)一样会有这个问题。
但因为最长前缀匹配的关系,只会转发到 /14,所以对于外层路由来说其实没有什么影响。有影响的只是你那个 /13 里重叠的那些主机,你会发现它们跟外网之间通信网络是故障的。