11-04-2021 09:21 AM in
Since the update to Android 11, a weird issue came up: when using the wifi hotspot functionality, DNS resolution is broken for some devices which connect to the internet via the phone.
Specifically: I run an Ubuntu 20.04 VM using VirtualBox on a windows laptop. The windows laptop works fine, i.e. it connects to the internet, my different vpn connections all work, etc.
On the other hand, the ubuntu vm has a problem doing dns resolution. It has a "NAT" network connection, using IntelPro1000/MT virtual NIC, with the cable-connected flag enabled. Virtualbox version is the latest: 6.1.18.
What seems to be happening is that the systemd daemon, handling the dns resolution in ubuntu, gets the IP of the phone as DNS server (correctly, I presume, as windows also has the same IP for the dns server). But then it has problems communicating with it.
The syslog file presents many messages similar to the following:
Apr 11 07:48:46 ubuntu20 systemd-resolved: Using degraded feature set (UDP) for DNS server 192.168.21.8.
12-04-2021 11:01 AM in
In case anyone else has the same problem: I somehow managed to fix this. I am not 100% sure about what did it, but I have:
- wiped app cache (and restarted the phone in the process)
- changed network config for the phone wifi hotspot to use 5ghz instead of 2.4 ghz
- changed network config for the phone wifi hotspot to use Protected Management Frames
13-04-2021 08:56 AM - last edited 14-04-2021 03:18 PM
Sadly it seems that the solution was only temporary, and most likely not due to the config changes described above. Today the same issue started happening again 😞
I tend to rule out problems with the VM itself, as it had been working fine for a long time, and it did not have recent package updates involving core networking functionality
14-04-2021 03:17 PM in
Yesterday I installed the new OS update made available for the A40. It sadly did not fix the problem.
The workaround I put in place in the end is to set systemd-resolved to use the Google DNS servers, by editing /etc/systemd/resolved.conf