我的 ISP 为我提供了一个带有电话插孔和 4 个 LAN 端口的混合 DSL 调制解调器/路由器。DSL 调制解调器/路由器支持 PPPoE 直通,但不支持 PPPoE 拨号。我还有一个功能更强大的 DD-WRT 路由器,带有一个 WAN 端口和 4 个 LAN 端口。DD-WRT 路由器的 WAN 端口连接到 DSL 调制解调器/路由器的 LAN 端口。DD-WRT 路由器支持 PPPoE 拨号和登录,是我家庭网络的网关,除了 QoS 之外,它还处理 DHCP 和 NAT。我有三个设备连接到 DD-WRT 路由器上的 LAN 端口。
现在我需要将两个设备连接到 DD-WRT 路由器,但只剩下一个空闲的 LAN 端口。我不想再添加其他交换机。我正在考虑重新使用 DSL 调制解调器/路由器上的三个 LAN 端口。我的想法是,由于我无论如何都不会将 DSL 调制解调器/路由器用作路由器,所以我可以将三个空闲的 LAN 端口用作交换机(另一个 LAN 端口连接到 DD-WRT 的 WAN 端口以进行 PPPoE 直通)。
所以我做了以下事情:
- 我关闭了 DSL 调制解调器/路由器上的 DHCP 和 NAT;
- 我为 DSL 调制解调器/路由器提供了一个 DD-WRT 的 IP 范围内的静态 IP 地址;
- 我将 DSL 调制解调器/路由器上的一个 LAN 端口连接到 DD-WRT 路由器上剩余的空闲 LAN 端口;
- 我需要连接到 DD-WRT 路由器的两个设备而是连接到 DSL 调制解调器/路由器上的两个空闲 LAN 端口。
实际上,DSL 调制解调器/路由器上的 3 个 LAN 端口和 DD-WRT 路由器上的 4 个 LAN 端口由两个交换机连接,并且它们都从 DD-WRT 路由器上的 DHCP 服务器获取正确的私有 IP 地址。拓扑如下所示:
到目前为止一切都很好,但连接到 DSL 调制解调器/路由器 LAN 端口的两个设备(A 和 B)表现得很奇怪:它们可以毫无问题地互相访问,并可以访问连接到 DD-WRT 路由器 LAN 端口的其他三个设备,但这ping
两个设备上的 DD-WRT 路由器会导致前几个数据包被丢弃,但后续数据包完好无损。以下是从连接到 DSL 调制解调器/路由器 LAN 端口的设备执行 ping 的典型结果:
# ping 192.168.0.1
PING 192.168.0.1 (192.168.0.1): 56 data bytes
64 bytes from 192.168.0.1: seq=6 ttl=64 time=0.602 ms
64 bytes from 192.168.0.1: seq=7 ttl=64 time=0.535 ms
64 bytes from 192.168.0.1: seq=8 ttl=64 time=0.539 ms
64 bytes from 192.168.0.1: seq=9 ttl=64 time=0.536 ms
64 bytes from 192.168.0.1: seq=10 ttl=64 time=0.536 ms
64 bytes from 192.168.0.1: seq=11 ttl=64 time=0.465 ms
64 bytes from 192.168.0.1: seq=12 ttl=64 time=0.464 ms
64 bytes from 192.168.0.1: seq=13 ttl=64 time=0.411 ms
64 bytes from 192.168.0.1: seq=14 ttl=64 time=0.414 ms
IP192.168.0.1
是 DD-WRT 路由器。如您所见,响应序列号从 6 开始:前六个丢失。丢包行为似乎相当随机:有时只丢失几个数据包,有时没有丢失数据包,有时丢失二十几个数据包。
我已经交换了设备/电缆/端口,我可以保证每件设备都没有问题,只有插入 DSL 调制解调器/路由器的 LAN 端口的设备在访问 DD-WRT 路由器时才会表现出奇怪的行为。
我的问题是:该问题可能是什么原因造成的以及我该如何诊断?