DNS Fundamentals

How DNS resolution works, what mDNS does on a local network, and when to use custom dnsmasq records instead.

Published July 14, 2024

DNS Fundamentals

DNS converts human-readable names into IP addresses. Without it, every service would need to be reached by raw address.

Without DNS:
  You type:  http://openwebui.local:8080
  Computer:  "I don't know the IP for that"
 
With DNS:
  You type:  http://openwebui.local:8080
  Computer -> DNS server: "What is openwebui.local?"
  DNS -> Computer: "192.168.1.25"
  Computer -> 192.168.1.25:8080: request
  OpenWebUI loads

DNS Resolution Chain

Your device -> Router (local DNS relay)
                  v if not cached
              Upstream DNS (1.1.1.1 Cloudflare or 8.8.8.8 Google)
                  v
              Authoritative DNS server for that domain
                  v
              IP address returned, cached by router

Local DNS Names

mDNS lets devices on the same network discover each other by hostname without central configuration.

Container sets hostname: openwebui
mDNS broadcasts:         "I am openwebui.local at 192.168.1.25"
Other devices can use:   http://openwebui.local

This is convenient, but it is usually less predictable than explicit infrastructure DNS.

Custom Local DNS via dnsmasq

Routers running dnsmasq, including ASUS Merlin, can map hostnames directly to IP addresses.

address=/proxmox.home/192.168.1.20
address=/nas.home/192.168.1.30

That approach is more reliable than mDNS for servers, storage, and internal services you expect to stay stable.

nas.home is a good example of where that stability matters. The hostname can stay fixed even if the storage role behind it evolves into the Proxmox-backed NAS layout in TrueNAS SCALE On Proxmox.

Comments

Sign in with GitHub to leave a comment or reaction.