I'm having a problem with Docker on my college network. When I start the systemd Docker service, my host's networking gets completely disabled. Restarting the Network Manager doesn't help, and I have to reboot my system to get the internet back. It seems to have something to do with DNS settings, but I'm not sure. Last year, I fixed a similar problem while setting up invidious with Docker, but I can't remember the details or what I searched for. I know my college has strict network policies, and just changing the DNS in /etc/resolv.conf doesn't seem to work either. Does anyone have suggestions to help me get Docker running without cutting off my internet access?
5 Answers
You might be running into a conflict with the network ranges your college uses. Since they have strict policies, it might be worth talking to their IT department to see if they have specific ranges you could use.
Check the default bridge network settings in Docker. In my situation, the default bridge IP conflicted with the network, so I had to change it manually. This might be a simple fix for you too.
You'll probably need to update the Docker daemon configuration to set the IPs from a specific address pool. By default, it uses Class B (172.16.0.0/12) subnets, which might be causing the conflict. Edit your /etc/docker/daemon.json to something like this: { "bip": "10.0.0.1/24", "default-address-pools":[{"base":"10.2.0.0/16","size":24}] }. It helped me resolve a similar issue!
I had a similar experience at work. The solution for me was to change the Docker network to use a range like 10.0.x.x instead of the conflicting 172.x.x.x that our network used. This resolved my issues, so maybe you could try that too.
If all else fails, do a fresh Docker installation. Since you aren't sure what changes you've made in the past, starting over might be your best bet.
Wow, changing the bip really fixed it for me! Thanks a ton for the tip!