My DHCP's DNS server is extremely unreliable for some reason, with queries regularly failing. When my router gets a new IP address from the ISP, it will often not be able to update Dynamic DNS since it cannot resolve the Dynamic DNS hostname at that time.
If I edit /etc/resolv.conf with the DNS server(s) I want it to use, things work fine. And then when it renews the DHCP lease from the ISP every 30 minutes, my manually edited DNS servers there are overwritten.
I have manually specified other DNS servers for clients, but how can I tell the Router itself to use a specific DNS server for itself, and have that change stick?
Yes, you are - you can set a custom DNS here that your router will use, rather than the "Automatic" setting which will use the one your ISP provides via DHCP.
I've just assumed those comments in the documentation are referring to clients of the router, not the router itself - but that was based on my own testing a couple of days ago when I originally reported this.
If I edit resolv.conf, it works as expected, but that gets overwritten every 30 minutes when a new DHCP lease is pulled from the ISP. So, seem to be back at square one - maybe gl-inet staff can comment on how for this to work correctly, or if a feature request needs to be made.
My ISP’s DNS, which it provides to the router via its DHCP lease, is unreliable and also sometimes slow.
So when the router gets a new DHCP lease and IP address, often it won’t be able to update Dynamic DNS with its new IP address since it can’t resolve the service’s host name to update. So I can’t access my router, and nor can I VPN into it.
From my experience, it’s common to be able to define custom DNS, even if you are using DHCP.