Files
computer-playbook/scripts/system/network/dns/setup

🌐 DNS Setup Scripts

This directory contains platform-specific scripts for setting up local DNS resolution for the infinito.example domain (and subdomains) on the development machine.

All scripts map *.infinito.example → 127.0.0.1 so that local deployments are reachable via their expected hostnames.


📄 Scripts

🐧 linux.sh

General-purpose DNS setup for Linux systems. Supports multiple strategies depending on the environment:

  • NetworkManager + dnsmasq — preferred path when NetworkManager is active; configures the NM dnsmasq plugin with a wildcard zone entry.
  • System dnsmasq — fallback when NetworkManager is not running; configures a standalone dnsmasq service.
  • /etc/hosts fallback — used in non-systemd environments (e.g. Docker containers, LXC) where service management is unavailable; writes a managed block of host entries directly into the hosts file.

Shared helper functions are sourced from ../common.sh.

🪟 wsl.sh

WSL2-specific DNS setup. Only executes when running inside a WSL2 environment (detected via /proc/version). Configures:

  • dnsmasq with the discovered WSL2 upstream DNS gateway as forwarder.
  • systemd-resolved stub listener disabled to avoid port conflicts.
  • /etc/resolv.conf pointed at the local dnsmasq instance (127.0.0.1).
  • /etc/wsl.conf set to generateResolvConf=false to prevent WSL from overwriting the resolver config on restart.