My ISP provided me a hybrid DSL modem/router with a phone jack and 4 LAN ports. The DSL modem/router supports PPPoE passthrough, but it does not do PPPoE dialing. I also have a more powerful DD-WRT router with a WAN port and 4 LAN ports. The WAN port of the DD-WRT router is connected to a LAN port of the DSL modem/router. The DD-WRT router does PPPoE dialing and login, and is the gateway of my home network, which handles DHCP and NAT in addition to QoS. I have three devices connected to the LAN ports on the DD-WRT router.
Now I need to connect two devices to the DD-WRT router but there's only one free LAN port left. I don't want to add additional switches to the mix. I'm thinking about reusing the three LAN ports on the DSL modem/router. The idea is that since I'm not using the DSL modem/router as a router anyway, I can just use the three free LAN ports as a switch (the other LAN port is connected to the DD-WRT's WAN port to do PPPoE passthrough).
So here's what I did:
- I turned off DHCP and NAT on the DSL modem/router;
- I gave the DSL modem/router a static IP address within the IP range from the DD-WRT;
- I connected one LAN port on the DSL modem/router to the remaining free LAN port on the DD-WRT router;
- The two devices I needed to connect to the DD-WRT router are instead connected to the two free LAN ports on the DSL modem/router.
Effectively, the 3 LAN ports on the DSL modem/router and the 4 LAN ports on the DD-WRT router are connected by two switches, and they all get correct private IP addresses from the DHCP server on the DD-WRT router. The topology looks like this:
So far everything is fine, but the two devices (A and B) connected to the LAN ports on the DSL modem/router are acting weird: they can reach each other and the other three devices connected to the DD-WRT router's LAN ports without any issues, but
ping the DD-WRT router from the two devices results in the first few packets being dropped, but subsequent packets left intact. Here's a typical result of a ping from the devices connected on the LAN ports of the DSL modem/router:
# 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
192.168.0.1 is the DD-WRT router. As you can see, the response sequence number starts from 6: the first six are missing. The dropping behaviors seem pretty random: sometimes only a few packets are missing, sometimes no packets are missing, sometimes two or so dozens packets are missing.
I've swapped devices/cables/ports and I can guarantee that every piece of equipment is fine, and only the devices plugged into the LAN ports of the DSL modem/router will exhibit the weird behavior when accessing the DD-WRT router.
My question is: what could be the cause of this issue and how can I diagnose?