Where Is resolv.conf and What Manages It?
resolv.conf names DNS servers at /etc/resolv.conf. Managers like NetworkManager and systemd-resolved rewrite it.
Last updated
resolv.conf is usually output, not config. Something generates it: NetworkManager, systemd-resolved, netplan, or DHCP clients. Editing the file directly loses to the next rewrite.
Read the header first. It names the generator most of the time. Fix DNS at the generator level and the file follows on its own.
Where resolv.conf stores this, by platform
/etc/resolv.conf
Generated nameserver list. Symlinked to stub or managed stores on most distros. Read, rarely write.
Frequently asked questions
My resolv.conf edits keep disappearing. Why?
It is generated. Edit the manager config instead: NetworkManager connections, netplan nameservers, or resolved.conf. Hand edits vanish on reboot.
How do I tell what manages my DNS?
Check the header comment naming the generator, then ls -l for symlinks. Stub listeners mean systemd-resolved owns it.
resolv.conf shows 127.0.0.53. What now?
resolvectl status shows per-link servers. That reflects reality better than the file when resolved intermediates.
Notice an outdated path? Let us know.