<aside>
📖
L3.2 — Domain Name System (DNS) by Kirk Martinez. This lecture covers why DNS exists (replacing the original HOSTS.TXT file), the distributed hierarchical structure of DNS, DNS record types (A, AAAA, MX, NS, CNAME, PTR, SRV, TXT, HINFO, SOA), how DNS lookups work (iterative vs recursive responses, forwarders), DNS tools (nslookup, dig, Python socket.getaddrinfo, Wireshark captures), the DNS hierarchy (root → TLDs → delegated zones), zone delegation (Nominet → JISC → University), root nameservers (13 names, 1730+ instances via anycast), caching and TTLs, public DNS servers (Google 8.8.8.8, Cloudflare 1.1.1.1, Quad9), DNS privacy concerns, and mDNS (multicast DNS for zero-configuration local networks).
</aside>
📋 At a Glance
- [ ] Know that DNS maps domain names to IP addresses (and more) — replacing the old HOSTS.TXT flat file
- [ ] Explain why DNS must be distributed and hierarchical (scalability, resilience, no single point of failure)
- [ ] Know DNS operates on port 53, primarily using UDP
- [ ] Know the key DNS record types: A (IPv4), AAAA (IPv6), MX (mail), NS (nameserver), CNAME (alias), PTR (reverse), TXT, SOA
- [ ] Explain CNAME records as aliases — the DNS lookup continues with the new name
- [ ] Know TXT records are used for SPF, DKIM, DMARC, site verification, etc.
- [ ] Distinguish iterative (referral to another server) from recursive (answer from cache or resolved before reply)
- [ ] Explain what a resolver, forwarder, and authoritative nameserver are
- [ ] Use DNS tools:
nslookup, dig, Python socket.getaddrinfo()
- [ ] Trace through the DNS hierarchy: root → TLD (.uk) → delegated zone (.ac.uk) → authoritative server (soton.ac.uk)
- [ ] Explain zone delegation: ICANN → TLD registrars (Nominet for .uk) → JISC for .ac.uk → University
- [ ] Know there are 13 root nameserver names (a–m.root-servers.net), operated by 12 independent organisations
- [ ] Explain anycast: same IP advertised at multiple locations, routers direct to nearest instance via BGP
- [ ] Explain DNS caching at every level (OS, home router, ISP) with TTLs (typically 1–72 hours)
- [ ] Know public DNS servers: Google (8.8.8.8), Cloudflare (1.1.1.1), Quad9 (9.9.9.9) — and their privacy implications
- [ ] Explain mDNS (RFC 6762): local DNS without a server, multicast to ff02::fb / 224.0.0.251 on UDP port 5353