I recently tried to enable system-wide DNS over https on Fedora. To do so I had to to some research and found out how comfusing it is for the average user (and even experienced users) to change the settings. In fact there are multiple backends messing with system DNS at the same time.

Most major Linux distributions use systemd-resolved for DNS but there is no utility for changing its configuration.

The average user would still try to change DNS settings by editing /etc/relov.conf (which is overwritten and will not survive reboots) or changing settings in Network Manager.

Based on documentation of systemd-resolved, the standard way of adding custom DNS servers is putting so-called ‘drop-in’ files in /etc/systemd/resolved.conf.d directory, especially when you want to use DNS-over-TLS or DNS-over-https.

Modern browsers use their buit-in DNS settings which adds to the confusion.

I think this is one area that Linux needs more work and more standardization.

How do you think it should be fixed?

  • @Molecular0079
    link
    English
    431 year ago

    changing settings in Network Manager.

    What’s wrong with this method? I feel like this is the main one and it works well for me. Even if you were using systemd-resolved, I believe it still works.

    • @[email protected]
      link
      fedilink
      171 year ago

      This is the answer for desktop Linux. Have NM create the drop in for systemd-resolved when the settings are changed. This is NM’s job.

    • mFatOP
      link
      fedilink
      English
      121 year ago

      1.It doesn’t support DoH 2.It’s set per connection, not system-wide. If you connect to another wifi network you have to set dns again.

      • @[email protected]
        link
        fedilink
        English
        21 year ago

        Do any modern OS’s set DNS system wide?

        I don’t disagree there should be an option because I see maybe why they wouldn’t do that.

        • @lo_fi
          link
          English
          11 year ago

          Yeah, it’s pretty easy on macos using configuration profiles