Search code examples
dockerconnectiondocker-machine

How do I check why my internet is only half working?


My internet is only working for heavily cached sites. Reddit, Gmail, Facebook, etc. The odd thing is, sites like Reddit make queries to non-reddit sites to import the images and they pop up fine when viewing from there, but when I get sent to out.reddit.com and then if I go elsewhere to other non-heavily cached sites, I get timed out connection error.

I can't even visit SpeedTest.net because it times out. I also can't even post a question on StackExchange because of it. What could possibly be going on and how to I debug?

EDIT: I had an inclination that it had to do with Docker. I removed all traces using a powershell script and through remove programs and still didn't work.


Solution

  • user3654055 are friends IRL and we debugged this in person.

    It's always best to start from layer 1 and work our way up.

    user3654055's computer could connect to wireless networks. This tells us layers 1 and 2 are working . user3654055's computer received a DHCP lease. Further testing of layer 3 showed inconsistent results with pinging local IP addresses.

    I ran route print to print all routes. This produced a huge amount of output. Normal output for a Windows computer connected to a flat LAN should produce perhaps 3 routes.

    user3654055 had recently installed Docker and attempted to set up a private internal network for the containers on their PC.

    user3654055 had created two virtual networks (one internal vEthernet switch, one external vEthernet switch), a NAT interface, and bridged the wireless adapter to one of those interfaces and had not set up routing correctly for any traffic.

    This produced the above scenario where certain traffic was routed correctly or hit the cache and the page would load, but most traffic was routed incorrectly and resulted in a timeout.

    Disabling all the vEthernet switches and the NAT interface and removing the wireless adapter from the bridge let the user use their wireless card again. The above configuration could work if the user set up routing correctly by hand, but we can save that for a later date.