我在一个本地网络中有两台主机:192.168.31.10 和 192.168.31.11,它们的网关都是 192.168.31.1。
192.168.31.10上的路由表如下:
0.0.0.0 0.0.0.0 192.168.31.1 192.168.31.10
192.168.31.0 255.255.255.0 On-Link 192.168.31.10
我可以理解路线表。
我不明白的是,如果我删除第二条路由规则,主机 10 就无法 ping 通主机 11。我猜想,第一条路由规则应该生效,然后路由器将 IP 数据包转发到主机 11,但事实并非如此。有人能告诉我为什么吗?
答案1
问题是,如果没有第二条路由,您的计算机就不知道如何找到位于同一子网上的路由器,因此无法发送流量。
答案2
我想我找到了答案。RFC1918 第 3 节中说得很清楚:“由于私有地址没有全局意义,因此有关私有网络的路由信息不得在企业间链路上传播,具有私有源地址或目标地址的数据包也不得通过此类链路转发。未使用私有地址空间的网络(尤其是 Internet 服务提供商的网络)中的路由器应配置为拒绝(过滤掉)有关私有网络的路由信息。如果此类路由器收到此类信息,则不应将拒绝视为路由协议错误。”