The Perfect (Network) Storm

For the last few months, we’ve had a really annoying and intermittent issue with our home networking setup. I’ve had my home network configured to use the 192.168.100.x IP range for several years. In February this year, my Time Warner issued cable modem failed and I purchased a Motorola SB6121. This summer, in preparation for Google Fiber coming to our area, I upgraded my router to a Cisco RV130 small business VPN router. Ever since then, at odd intervals, we’d notice issues with internet access and discover that the router had reconfigured itself to use 10.10.10.x range for the internal network.

After the first couple of times of manually resetting the IP range, I created a backup config file to quickly restore the correct settings and reboot the router. I contacted Cisco support and spoke with several different support technicians. One had me set up a syslog server on my network so we could get a durable copy of the log entries from the router since the internal logs are cleared on a restart. This week, the support tech I was working with and I were reviewing the logs and found something pretty startling.

Any time the cable modem would lose connection to the upstream network, it would assign the IP address to the device connected to its ethernet port until it could reestablish a connection to the upstream DHCP server. That device just so happened to be the WAN interface of the RV130 router. Even though it only happened for a few seconds, the router would see an IP address on the WAN in the same range as the internal LAN. At that point, it made the decision to change the internal IP range to 10.10.10.x to avoid a conflict.

The fix was simply to pick a different IP range for my internal network. Once we figured out what was going on and reconfigured the internal IP range, I tested the theory by power cycling the cable modem while tailing the log file from the router. Sure enough the router configuration stayed consistent and we haven’t had issues since then.

Who would have guessed that a decision that I made 8+ years ago would conflict with a decision the Motorola engineers made for their equipment defaults?  I’m just glad we’re finally stable and I can get back to solving problems with the software that I write vs the stuff in my house that needs to “just work”