Skip to content

Commit

Permalink
Ensure tailscale* interfaces aren't managed by networkd for MagicDNS
Browse files Browse the repository at this point in the history
  • Loading branch information
jmacdonagh committed Jan 4, 2025
1 parent 1f571be commit a182858
Showing 1 changed file with 17 additions and 1 deletion.
18 changes: 17 additions & 1 deletion create_tailscale_sysext.sh
Original file line number Diff line number Diff line change
Expand Up @@ -34,17 +34,33 @@ curl -o "${TMP_DIR}/${TARBALL}" -fsSL "${URL}"

tar xf "${TMP_DIR}/${TARBALL}" -C "${TMP_DIR}" --strip-components=1

mkdir -p "${SYSEXTNAME}"/usr/{bin,sbin,lib/{systemd/system,extension-release.d,tmpfiles.d},share/tailscale}
mkdir -p "${SYSEXTNAME}"/usr/{bin,sbin,lib/{systemd/system,systemd/system/tailscaled.service.d,systemd/network,extension-release.d,tmpfiles.d},share/tailscale}

mv "${TMP_DIR}/tailscale" "${SYSEXTNAME}/usr/bin/tailscale"
mv "${TMP_DIR}/tailscaled" "${SYSEXTNAME}/usr/sbin/tailscaled"
mv "${TMP_DIR}/systemd/tailscaled.service" "${SYSEXTNAME}/usr/lib/systemd/system/tailscaled.service"
mv "${TMP_DIR}/systemd/tailscaled.defaults" "${SYSEXTNAME}/usr/share/tailscale/tailscaled.defaults"

cat <<EOF >"${SYSEXTNAME}"/usr/lib/systemd/system/tailscaled.service.d/10-networkd-reload.conf
# Reload systemd-networkd.service to pick up 50-tailscale.network
[Service]
ExecStartPre=systemctl reload systemd-networkd.service
EOF

cat <<EOF >"${SYSEXTNAME}"/usr/lib/tmpfiles.d/10-tailscale.conf
C /etc/default/tailscaled - - - - /usr/share/tailscale/tailscaled.defaults
EOF

cat <<EOF >"${SYSEXTNAME}"/usr/lib/systemd/network/50-tailscale.network
[Match]
Kind=tun
Name=tailscale*
[Link]
Unmanaged=yes
EOF

rm -rf "${TMP_DIR}"

RELOAD=1 "${SCRIPTFOLDER}"/bake.sh "${SYSEXTNAME}"
Expand Down

0 comments on commit a182858

Please sign in to comment.