为什么路由器不转发本地网络中的 IP 数据包?

为什么路由器不转发本地网络中的 IP 数据包?

我在一个本地网络中有两台主机: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 服务提供商的网络)中的路由器应配置为拒绝(过滤掉)有关私有网络的路由信息​​。如果此类路由器收到此类信息,则不应将拒绝视为路由协议错误。”

相关内容