# Why is resolv.conf being overwritten?

Last validated Jan 5, 2026

Tailscale overwrites `/etc/resolv.conf` when
[MagicDNS][kb-magicdns] is enabled in the tailnet and
`--accept-dns` is enabled on the machine running Tailscale and there
doesn't appear to be a DNS manager running on the system.

## Common questions

### How do I stop tailscaled from overwriting `/etc/resolv.conf`?

For Linux, refer to [Linux DNS][kb-linux-dns]. The short summary is
that you'll have the best experience by using
`systemd-resolved`. Tailscale tries to interoperate with a number of
other DNS managers before resorting to overwriting `/etc/resolv.conf`.

If a DNS manager isn't available for your system, or you don't want to run one,
and don't want Tailscale to overwrite `/etc/resolv.conf`, you can either
[disable MagicDNS][kb-magicdns] for all devices in your tailnet or
run `tailscale set --accept-dns=false` to disable MagicDNS on a single device.

Even if you set `--accept-dns=false`, Tailscale's MagicDNS server
still replies at `100.100.100.100` (or `fd7a:115c:a1e0::53`), as long
as MagicDNS is enabled in the tailnet. If you'd like to manually
configure your DNS configuration, you can point `*.ts.net` queries at
`100.100.100.100`. The [`100.100.100.100`][kb-what-is-quad100] resolver runs inside
`tailscaled` on the device and replies authoritatively to Tailscale
DNS names without needing to forward queries out to the network.

[kb-linux-dns]: /docs/reference/linux-dns

[kb-magicdns]: /docs/features/magicdns

[kb-what-is-quad100]: /docs/reference/quad100
