I updated to Android 12 Wednesday (build number FP4.SP1Y.B.041.20230109). Since, I can’t make the internet tethering work. I tried USB and Wi-Fi 2.4GHz, and I have the same behavior : my computer can connect to the phone, get an IP and ping the phone IP, but when I want to access internet I get the “Destination Net Unreachable”.
Disabling the hardware acceleration for internet share in the developer menu doesn’t help.
For me my usual setup of USB tethering mostly works, but there’s a serious problem after updating to Android 12: every so often the tethering just stops, with huge ping times and missed packets as far as I remember, but then returns to normal when I wake the phone.
Which operating system are you using on your notebook? I had some problems with Arch Linux and USB tethering a year ago and it took me quite some while to understand that I hadn’t set up systemd-resolve correctly.
Can you try if pinging an IP address still works when your connection gets laggy? It was mainly a bug in NetworkManager, resolv.conf wasn’t generated properly. Funny enough, I just found the bug and it was the complete opposite, replugging the phone lead to this behavior. DNS entry is kept on /etc/resolv.conf after interface unplugged. (#995) · Issues · NetworkManager / NetworkManager · GitLab
Have a look at your resolve.conf when the problem occurs, maybe some deeper sleep state of the phone leads to similar problems. Restarting NetworkManager helped it, too, you could try that.
My final solution:
I now set up systemd-resolved with a symlink resolv.conf -> /run/systemd/resolve/stub-resolv.conf so NetworkManager can autodetect the presence of systemd-resolved.
For me it’s not a DNS issue. I cannot even ping 8.8.8.8 or 1.1.1.1.
I am using Ubuntu. The phone doesn’t give me an IPv6 address so I cannot try in IPv6.
For some reason my phone was using my IPv6-only APN. Either the update made it switch to this APN, or for some reason this was no longer compatible with internet tethering.