Is this a bug or intentional change in Fedora /etc/resolv.conf state?

Hi dear. I’m using Fedora since 24, & upgraded to 26 then to 28, thence to 30 & now on 32.

Before version 30 (when I was on 28), editing the file,
/etc/NetworkManager/NetworkManager.conf
by adding “dns=none” under “main” section will result in prevention any usage of DNS outside dnscrypt-proxy & MOST IMPORTANTLY NetworkManager GUI CAN NOT OVERRIDE /etc/resolv.conf file …
After upgraded to Fedora 30 (& till now after upgraded to Fedora 32), this changed & parameter “dns=none” seem not to be effective because inspite of setting it, /etc/resolv.conf file still be overrided by NetworkManager GUI !

Few days ago we suffer from a bug in dnscrypt-proxy that already solved, but it lead to send light over this issue - please see the following discussion:

In short, the question is: does the following state of /etc/resolv.conf being
the current /etc/resolv.conf is not a file but a link to /var/run/NetworkManager/resolv.conf
is intended change (new feature) introduced by Fedora, or an error happened on my system during system upgrade ?

If it is an error, then I have to delete current /etc/resolv.conf & create new one to be with correct setting. But if this state is intended by Fedora developers, then no need to change it. In fact at current state I’m able to switch easily between utilizing dnscrypt-proxy or using normal (non dnscrypt-proxy) Internet connection from within GUI of NetworkManager just by changing “Methods” to be “Automatic (DHCP) addresses only” or “Automatic (DHCP)” respectively.

Best.

The defaults should be like this:

> rpm -q systemd 
systemd-246.7-2.fc33.x86_64

> rpm -q --scripts systemd | grep -e /etc/resolv.conf$
  ln -fsv ../run/systemd/resolve/stub-resolv.conf /etc/resolv.conf

See also:

2 Likes

Hi. I think you miss-understood me ! I’m on Fedora 32 not on 33 ! I will continue to use Fedora 32 till reach end of life then I will upgrade to Fedora 34 …

I have no relation to new change in Fedora 33, nor in using of DNS over TLS ! I’m using - & will continue using - dnscrypt-proxy …

I run “$ rpm -q systemd” & output was:
systemd-245.8-2.fc32.x86_64

Then I run: “ rpm -q --scripts systemd | grep -e /etc/resol.conf” but the output was NO thing.

Obviously, you miss-understood me.

Any one can further help ?

Hi, I am on Fedora 33 and using dnscrypt-proxy with systemd-resolved without any problem. I didn’t change anything when upgraded to Fedora 33. I just set DNS server as 127.0.0.1 from the NetworkManager GUI. I am also able to easily switch between auto DNS and dnscrypt-proxy from GUI as you described.

So, why @Robert-André Mauchin at RedHat BugZilla asked me to delete the current /etc/resolv.conf & create new one ??
Please notice that @Robert-André Mauchin is Fedora packager who responsible for packaging of dnscrypt-proxy ! - see:

There are different methods to manage DNS. One is you make your /etc/resolve.conf read-only, tell NetworkManager to not touch it and put 127.0.0.1 in it, which is dnscrypt-proxy’s listening address (if it is configured to listen on that address). Maintainer is describing that. You can also let NetworkManager to manage etc/resolve.conf and set your DNS to be 127.0.0.1 from NetworkManager. And there is also systemd-resolved but I think it is not relevant for Fedora 32.

1 Like