Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Role: Connectivity & Naming

Responsibility

This role ensures that users and services can find each other. It handles DNS resolution and internal routing, maintaining a consistent namespace across local and remote connections.

Key Guarantees

  • Unified Namespace: Use of *.risu.tech globally.
  • Split-Horizon DNS: Internal names resolve to internal IPs; external names point to the Edge.
  • Service Discovery: Automatic detection and registration of “floating” workloads.
  • L4 Load Balancing (VIP): Providing stable virtual IPs for cluster-wide services (like Ingress) to ensure they are reachable even if nodes fail.

Current Stack Choice

  • OpenWRT as the bootstrap resolver, Technitium DNS as the internal authority, and ExternalDNS for Kubernetes-driven automation. Details and runbooks live in Connectivity & Naming Stack.

Implementation Options

OptionBest FitGood AtCosts / RisksIntegration Notes
CoreDNS + ExternalDNSK8s, K3s, TalosK8s-native, clean in-cluster discovery.Split-horizon needs careful design.Decide “source of truth” (Git/IaC) and VPN DNS view.
Pi-hole / AdGuard HomeAny (External)Easy local DNS + blocking; great for split-horizon.Another stateful service; HA takes effort.Ensure VPN hands out this DNS; avoid public leaks.
WireGuard / TailscaleAnyStable remote access.Tailscale is managed-ish; WireGuard is DIY.DNS distribution over VPN is the key integration point.
MetalLB / Kube-vipK8s, K3s, TalosProvides L4 LoadBalancer IPs on bare-metal.Requires network support (ARP/BGP); configuration overhead.Essential for giving the Ingress Controller a stable IP in a cluster.
ConsulNomadFirst-class in Nomad ecosystems.Adds a control plane component.Decide how Consul names map to your DNS naming scheme.

Typical Stack Pairings

  • K8s: MetalLB/Kube-vip + CoreDNS + ExternalDNS + WireGuard/Tailscale
  • Nomad: Consul (+ DNS integration) + Traefik/Fabio + WireGuard/Tailscale
  • Hybrid: Pi-hole/AdGuard as “front” DNS for LAN/VPN regardless of orchestrator