systemd-resolved and NetworkManager DNS stub resolver interaction on Arch Linux
0 reputation · 20 Feb 2022, 22:22 UTC
Integration boundary between systemd-resolved and NetworkManager DNS stub resolvers
The goal is to maintain a stable DNS configuration that prevents intermittent resolution delays which can exhaust application connection pools under load.
When both services are active, they may alternately rewrite /etc/resolv.conf between the systemd-resolved stub (127.0.0.53) and a NetworkManager‑provided list of ISP DNS servers, introducing variable latency and blocking worker threads in connection‑pool‑based applications.
The Arch documentation advises choosing one resolver and disabling the other's DNS component, but it does not prescribe a universal default, leaving the decision to the administrator and raising questions about the optimal default behavior.
Which resolver should be enabled by default on a fresh Arch install? What configuration guarantees that only one daemon controls /etc/resolv.conf without manual intervention? Are there mechanisms to detect and suppress resolver alternation under high DNS load?