Name resolution error with Umbrel 1.1.2 and qemu-kvm

Just installed umbrelOS 1.1.2 on an Ubuntu 22.04 host using quemu-kvm (virt-manager). The guest (umbrel) does access the internet:

umbrel@umbrel:~$ sudo ping -c 2 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=114 time=8.27 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=114 time=8.27 ms

--- 8.8.8.8 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1002ms
rtt min/avg/max/mdev = 8.271/8.272/8.274/0.001 ms

But the name resolution system is not working:

umbrel@umbrel:~$ sudo ping -c 2 google.com
ping: google.com: Temporary failure in name resolution

So Umbrel cannot run correctly. I tried some other guest OSs with the same virtual environment and they are working. Any idea?

Adjust the DNS resolvers. Note that changes do not survive a reboot.

sudo nano /etc/resolv.conf

Crazy… My employee was filtering dns queries to Cloudflare (1.1.1.1) or Google (8.8.8.8). We are forced to use our internal dns server. If I edit /etc/resolv.conf and configure the dns server manually it works (until next reboot).

Anyway, this is not the real source of the error. libvirt is already running a DNS server (dnsmasq ), and it gives the network conf info to the vm.

journalctl -u NetworkManager.service on vm:

May 21 09:02:25 umbrel NetworkManager[1449]: <info>  [1716282145.7461] dhcp4 (enp10s0):   address 192.168.100.2
May 21 09:02:25 umbrel NetworkManager[1449]: <info>  [1716282145.7461] dhcp4 (enp10s0):   plen 24 (255.255.255.0)
May 21 09:02:25 umbrel NetworkManager[1449]: <info>  [1716282145.7461] dhcp4 (enp10s0):   gateway 192.168.100.1
May 21 09:02:25 umbrel NetworkManager[1449]: <info>  [1716282145.7462] dhcp4 (enp10s0):   lease time 3600
May 21 09:02:25 umbrel NetworkManager[1449]: <info>  [1716282145.7462] dhcp4 (enp10s0):   hostname 'umbrel'
May 21 09:02:25 umbrel NetworkManager[1449]: <info>  [1716282145.7462] dhcp4 (enp10s0):   nameserver '192.168.100.1'
May 21 09:02:25 umbrel NetworkManager[1449]: <info>  [1716282145.7462] dhcp4 (enp10s0):   domain name 'redvirtual'

IP and gateway are propperly configured, but nameserver is not updated.

cat /etc/resolv.conf on vm:

# Generated by NetworkManager
nameserver 1.1.1.1
nameserver 1.0.0.1

If I edit /etc/resolv.conf and set nameserver to 192.168.100.1 it works. So it seems that NetworkManager is discarting the dns info received by libvirt .

Think I found the error source:

$ cat /etc/NetworkManager/NetworkManager.conf
[main]
plugins=ifupdown,keyfile
dhcp=dhclient

[ifupdown]
managed=false

# This is important, we use Cloudflare for DNS because some users have routers that provide
# unreliable DNS that results in Docker errors when pulling like:
# Get "https://registry-1.docker.io/v2/tailscale/tailscale/manifests/sha256:d488853664499d792b359ea8c18f9a918b92e805b403733fe1c9aac9006ac8c1": dial tcp [2600:1f18:2148:bc01:571f:e759:a87a:2961]:443: connect: network is unreachable
[global-dns-domain-*]
servers=1.1.1.1,1.0.0.1

dns servers are fixed by default. Commented the last two lines and worked.

1 Like