It is a regular file that apparently, even when the “nameserver” line is nonexistent, takes some amount of precedence over /etc/systemd/resolved.conf, which is also a normal file.
$ ls -la /etc/resolv.conf
-rw-r--r-- 1 root root 101 Jun 13 15:32 resolv.conf
$ ls -la /etc/systemd/resolved.conf
-rw-r--r-- 1 root root 1401 Jun 13 15:35 /etc/systemd/resolved.conf
Example of a symlink on my system:
$ ls -la /etc/localtime
lrwxrwxrwx 1 root root 30 Jun 12 15:52 localtime -> /usr/share/zoneinfo/US/Eastern
I have been using resolvectl status
for this work. You should know before reading this that I am using a bridge device (br0) for giving internet to a VM I sometimes run, and Arch Linux itself uses device (eno1).
By unimplementing the fix to /etc/resolv.conf
and confirming it broke my Plex Server’s DNS capabilites, resolvectl status
printed out:
$ sudo resolvectl status
Global
Protocols: +LLMNR +mDNS -DNSOverTLS DNSSEC=no/unsupported
resolv.conf mode: foreign
DNS Servers: 1.1.1.1
Fallback DNS Servers: 9.9.9.10 8.8.8.8 1.0.0.1 8.8.4.4 2001:4860:4860::8888 2606:4700:4700::1111 2606:4700:4700::1001
Link 2 (eno1)
Current Scopes: LLMNR/IPv6
Protocols: -DefaultRoute +LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
Link 3 (br0)
Current Scopes: LLMNR/IPv4 LLMNR/IPv6
Protocols: -DefaultRoute +LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
and now after populating /etc/resolv.conf
's nameserver
argument and showing it fixed all Plex Media Server issues with resolving “plex.tv”, it printed:
$ sudo resolvectl status
Global
Protocols: +LLMNR +mDNS -DNSOverTLS DNSSEC=no/unsupported
resolv.conf mode: foreign
DNS Servers: 1.1.1.1
Fallback DNS Servers: 9.9.9.10 8.8.8.8 1.0.0.1 8.8.4.4 2001:4860:4860::8888 2606:4700:4700::1111 2606:4700:4700::1001
Link 2 (eno1)
Current Scopes: LLMNR/IPv6
Protocols: -DefaultRoute +LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
Link 3 (br0)
Current Scopes: LLMNR/IPv4 LLMNR/IPv6
Protocols: -DefaultRoute +LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
These outputs seem identical, and like I mentioned before, I already had DNS capabilities using ping
and curl
before I fixed my /etc/resolv.conf
file, so that isn’t surprising. However, you have just drawn my attention to the fact that I re-enabled IPv6 on this system, so I rebooted with kernel argument ipv6.disable=1
, which did not help me previously but does not break my fix either. resolvectl status
on IPv4-only gave:
$ sudo resolvectl status
Global
Protocols: +LLMNR +mDNS -DNSOverTLS DNSSEC=no/unsupported
resolv.conf mode: foreign
DNS Servers: 1.1.1.1
Fallback DNS Servers: 9.9.9.10 8.8.8.8 1.0.0.1 8.8.4.4 2001:4860:4860::8888 2606:4700:4700::1111 2606:4700:4700::1001
Link 2 (eno1)
Current Scopes: none
Protocols: -DefaultRoute +LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
Link 3 (br0)
Current Scopes: LLMNR/IPv4
Protocols: -DefaultRoute +LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported