Files
firezone/rust/headless-client/docs/debian_dns.md
Reactor Scram 3a67eacfbe refactor(linux-client): replace client-tunnel with headless-client which is the same thing (#4516)
Unfortunately I had to keep `linux-client` to get the compatibility
tests to pass. #4578 aims to remove that package.

Please add to this list if you think of anything:

```[tasklist]
# Things that may break that CI/CD won't catch
- [ ] Github release artifacts
- [ ] Knowledge base 
- [ ] Docker images
- [ ] Docker containers
- [ ] Existing `linux-client` users
- [ ] Anything that downloads ghcr artifacts
- [ ] Nix (Not sure if it's built in CI. It had a merge conflict)
```

Refs #4515, and #3712, #3782

I think this is what Thomas and I agreed on in Slack / Github

---------

Signed-off-by: Reactor Scram <ReactorScram@users.noreply.github.com>
Co-authored-by: Thomas Eizinger <thomas@eizinger.io>
2024-04-10 22:01:55 +00:00

2.3 KiB

Debian default DNS setups

Conclusion

As of Feb 16th, the code in Firezone will probably work well on Ubuntu. On Debian we'd need to either ask for systemd-resolved to be installed, or fall back on rewriting /etc/resolv.conf, since we don't cooperate with NM yet.

  • Ubuntu 20.04 has systemd-resolved built in to systemd itself. We can ignore NM for now and call resolvectl
  • Debian 12 with XFCE has NM and dnsmasq. NM manages resolv.conf by itself without systemd-resolved.
  • Debian 12 CLI just seems to have a fixed resolv.conf at install time. No NetworkManager, no dnsmasq, no systemd-resolved.

Derived from this, with some redactions for brevity and blank lines for readability:

uname -r; dpkg -l | grep dns; dpkg -l | grep resolv; dpkg -l | grep network-manager; cat /etc/resolv.conf; which resolvectl;

Ubuntu 20.04

5.15.0-94-generic

ii  dnsmasq-base                               2.80-1.1ubuntu1.6                   amd64        Small caching DNS proxy and DHCP/TFTP server
ii  network-manager                            1.22.10-1ubuntu2.3                  amd64        network management framework (daemon and userspace tools)
ii  network-manager-config-connectivity-ubuntu 1.22.10-1ubuntu2.3                  all          NetworkManager configuration to enable connectivity checking
ii  network-manager-gnome                      1.8.24-1ubuntu3                     amd64        network management framework (GNOME frontend)

# This file is managed by man:systemd-resolved(8). Do not edit.

/usr/bin/resolvectl

Debian 12 with XFCE

6.1.0-18-amd64

ii  dnsmasq-base                          2.89-1                              amd64        Small caching DNS proxy and DHCP/TFTP server
ii  network-manager                       1.42.4-1                            amd64        network management framework (daemon and userspace tools)
ii  network-manager-gnome                 1.30.0-2                            amd64        network management framework (GNOME frontend)

# Generated by NetworkManager
nameserver 192.168.1.1

# resolvectl not installed

Debian 12, CLI only

6.1.0-17-amd64

ii  bind9-dnsutils               1:9.18.19-1~deb12u1            amd64        Clients provided with BIND 9

nameserver 192.168.1.1
nameserver 192.168.1.1

# resolvectl not installed