Recently, my wife kept complaining that her computer had problems with wireless Internet access, very frequently like once every few minutes. She kept having to disconnect and connect her wireless connection in order to gain the Internet access. I checked it out and found that the connection to the wireless router was OK but the computer kept losing the DNS (Domain Name Server). In other words, it lost the ability to look up the IP address for the domain names (like yahoo.com, google.com) on the browser. It’s like losing the Internet Directory. When I forced the DNS IP directly using Google’s public DNS (18.104.22.168 & 22.214.171.124) into the wireless network adapter, it worked perfectly. Somehow, the router, as the DHCP server and network gateway, was no longer able to provide the exact IP address. I originally suspect her wireless adapter must have a down-rev driver so I downloaded and installed the latest driver. And then I uninstalled Lenovo’s ReadComm since it’s often the troublemaker based on my Google search. Neither of the above two fixed the problem. What’s going on?
My router is D-Link DIR-615. Over a month ago, I also noticed that it would occasionally behave the same way even for my wired connected desktop. But the problem went away after I manually programmed Google’s DNS into the router instead of using Comcast’s (my ISP’s) DNS. I figured Comcast’s DNS must have been gone offline. This time, my wired connection has no DNS problem but my wife’s computer via wireless network does. This forced me to suspect the router must be the problem.
I decided to upgrade the firmware to the latest (3.13NA) but the problem got even worse. Now my wired connection was behaving the same way. I suspected now all the firmware upgrades must have caused the internal variables to be wrongly initialized because I was saving and restoring the configuration file to save me from the trouble of customizing the router. Based on my experience working with computer BIOS and firmware, the firmware set up a certain memory space for the “constants” used for program execution. If it’s not set up correctly as each successive version of firmwares may have used different memory spaces, the firmware would do some strange things.
After restoring the router’s “factory defaults,” which essentially re-initialize the “constants” memory spaces, the router seemed to be working as expected. Hopefully, this is the end of a long struggle working with a “cheap” but capable router.
The lesson learned is that it’s best to trust the “factory defaults,” as they are often the optimal ones since it’s how it’s been tested or QA’ed.