I have wasted the last 2.5 hours trying to see where I went wrong with my configuration and I just can't.
For the record, I am running OpenSuse Tumbleweed with Gnome, latest update for everything. Up to now I have been using AdGuard as my DNS resolver, but am now trying to switch to Mullvad but at this point I think I probably don't want to anymore. Reason being, I just can not get it to work for the life of me.
My system has NetworkManager installed so I go there, select my connected Wifi, and enter Mullvad's DNS address 194.242.2.4 in thr IPv4 section, then I go to check to see if it shows I am using their DNS and it Firefox AND Vivaldi give no internet connection errors. I go back to Adguard DNS and my internet is back working again. I go back to Mullvad, you guessed it, no internet once again. I even tried Cloudflare and Quad 9's DNS addresses and both of those worked as well but Mullvad's just does not want to work and I am going insane over it.
And no I can not edit resolv.conf through the terminal because NetworkManager will override it and no I don't want to delete NetworkManager. Any feedback would be appreciated.
Edit: I have Mullvad DNS on my phone and got it running with zero issues so this is more of a Linux problem than a Mullvad DNS problem I think.
Solution:
Open terminal and follow through
sudo zypper install systemd-network
sudo nano /etc/systemd/resolved.conf
Copy paste this into the file that you just opened and change the DNS to whichever DNS provider you are using.
[Resolve]
DNS=194.242.2.4 2a07:e340::4
FallbackDNS=194.242.2.2 2a07:e340::2
Domains=~.
DNSSEC=yes
DNSOverTLS=opportunistic
#MulticastDNS=no
#LLMNR=no
#Cache=yes
#CacheFromLocalhost=no
#DNSStubListener=no
#DNSStubListenerExtra=
#ReadEtcHosts=yes
#ResolveUnicastSingleLabel=no
Ctrl + O to write out and Ctrl + X to exit back to the terminal main page.
ln -sf ../run/systemd/resolve/stub-resolv.conf /etc/resolv.conf
sudo systemctl start systemd-resolved
sudo systemctl enable systemd-resolved
sudo systemctl restart NetworkManager
Boom it should be working now.
Things like this are why I still haven’t switched to Linux. Had a play with Mint on a USB stick and liked it, but I just worry that when I start to use it for real, I am going to spend far too much time searching for solutions to weird problems and going down rabbit holes.
LOL this isn't even a Linux issue. This is an "I'm confused about how DNS works" issue.
no this is in fact a Linux issue. Because I was able to get DOT working on Windows and Android (GrapheneOS) working in like 2 minutes. This is in fact a Linux issue. Another thing that is a Linux issue is my microphone not having any drivers for the last 4 months on my brand new laptop that I bought and yes I am running the latest kernel.
No I am not going to switch back to Windows but y'all need to stop gobbling Linux as this perfect no can do wrong operating system because it is FAR from it and is still by far, the most difficult operating system to use even for some semi tech savvy people like me.
Network manager not working well with DNS over TLS is not a Linux issue? Ok, thanks for the education.
Read the post. The user obviously didn't even know that Mullvad uses DNS over TLS and that the other providers used regular DNS, nor did he know how to properly troubleshoot a DNS issue, which is a skill you should have on any OS if you're going to mess about with DNS settings.
How the fuck am I supposed to know that Network Manager won't support DNS over TLS by default when every other operating system does? I've messed around with DNS before on multiple devices and never had any issues until now. We get it. You use Arch. Mr skillful
Read the documentation? Use google?
The very first hit when you google "dns over tls tumbleweed" provides the answer: https://dev.to/archerallstars/using-dns-over-tls-on-opensuse-linux-in-4-easy-steps-enable-cloud-firewall-for-free-today-2job
A more generic query "dns over tls linux" gives this, which works just the same: https://medium.com/@jawadalkassim/enable-dns-over-tls-in-linux-using-systemd-b03e44448c1c
Both google searches return several more hits that basically say the same thing.
Even the NetworkManager reference manual refers you to systemd-resolved as the solution: https://www.networkmanager.dev/docs/api/latest/settings-connection.html
I don't use NetworkManager, I've never even used Tumbleweed and I found the answer in all of 10 minutes. Of course that doesn't help if you're so clueless that you didn't even know that you were using DNS-over-TLS, or that DoT is a very recent development that differs significantly from regular DNS and that it requires a DNS resolver that supports it.
Like Windows 10? (Hint: it doesn't)
Who cares what I use. When I'm messing with something I don't understand, I at least read the documentation first instead of complaining on the internet and calling the whole community toxic and, I quote, "Butthurt Linux gobblers" when you get the slightest bit of pushback.