Files
tailscale-initramfs/config/config
Paul Aurich 564c3c3539 Create /etc/resolv.conf in initramfs for tailscale client
On Debian systems, unless configured by something else, there isn't an
/etc/resolv.conf in the initramfs, which hinders DNS resolution.
Tailscale has its fallback DNS functionality, but that has problems [1]
in the corner-case situation of a Debian initramfs environment:

- no /etc/resolv.conf means tailscale (or golang?) attempts to use
  127.0.0.1 as a DNS resolver
- the loopback interface (lo) isn't brought up in the initramfs. linux
  sends the DNS traffic off-device (destined for 127.0.0.1)

Even with the Tailscale fix for that issue, it's a fallback and there's
a noticeable delay, so do the correct thing here and create
/etc/resolv.conf.

[1] https://github.com/tailscale/tailscale/issues/6110
2023-05-03 19:53:13 -07:00

64 lines
1.8 KiB
Plaintext

#
# Configuration options for the tailscale-initramfs boot scripts.
# You must run update-initramfs(8) to effect changes to this file (like
# for other files in the '/etc/tailscale/initramfs' directory).
#
# Authkey to be used to authenticate to tailscale. Passed to "tailscale up"
# --authkey, so can also be file:/path/to/secret (the file will be copied into
# the initramfs).
#
# Note that the config (and any key) is stored in the initramfs, which is
# often outside of a cryptroot.
# - https://tailscale.com/kb/1068/acl-tags/#generate-an-auth-key-with-an-acl-tag
# - https://tailscale.com/kb/1111/ephemeral-nodes/
#
TAILSCALE_AUTHKEY=
#
# Hostname to pass to "tailscale up".
# Default: ${HOSTNAME}-initramfs.
#
#TAILSCALE_HOSTNAME=
#
# Command-line options to pass to tailscale, in addition to
# --authkey"${TAILSCALE_AUTHKEY}"
# Default: none
#
#TAILSCALE_OPTIONS=
#
# Command-line options to pass to tailscaled
# Default: none
#
#TAILSCALED_OPTIONS=
#
# Set to any non-empty string to log out of tailscale before passing out of
# the initramfs. This is ineffective if some other package in the initramfs
# (dropbear-initramfs) brings down the external interfaces. See IFDOWN in
# dropbear-initramfs's config.
# Default: none
#
#TAILSCALE_LOGOUT=
#
# Space-delimited list of DNS server(s) to put in /etc/resolv.conf in the
# initramfs if /etc/resolv.conf doesn't exist and if no DNS servers were
# returned from DHCP.
#
# Tailscale will eventually fall back to bootstrapping DNS itself, but there's
# no reason to rely on that (adds a slight delay). Tailscale's fallback is
# also problematic in some corner cases in some versions (see
# https://github.com/tailscale/tailscale/issues/6110).
#
#FALLBACK_DNS_SERVERS=
#
# Bring down interfaces matching this pattern before passing out of the
# initramfs. (Same behavior as dropbear-initramfs)
# Default: *
#
#IFDOWN=*