Skip to Content
Navigation:
Cover for How DNS Works

How DNS Works

Have you ever updated your site’s DNS records, nothing changed, and you had no idea why? This zine is for you!

DNS has a bad reputation. It has terrible terminology, it’s totally invisible what’s happening behind the scenes, changes take a seemingly arbitrary amount of time to be applied, there are literally millions of computers that could be caching your records, there’s often no way to clear the caches, and if you mess it up you can take your site down for hours. Great.

And DNS is also everywhere! You have to set it up every time you create a new domain, so most of us come into contact with it at some point. Most people use it very infrequently, so it’s very normal to just copy and paste DNS records without understanding what they mean and hope for the best.

But it doesn’t have to be that way! DNS’s basic design is actually relatively straightforward and hasn’t changed since DNS was invented in the 1980s.

Because the core design of DNS doesn’t change, you can learn how it works once and then manage your DNS records with confidence for the rest of your life.

We’ll explain:

  • How DNS resolvers work, including a working implementation in Python (and how they can lie to you)
  • Every weird thing I know about DNS caching (like negative caching and resolvers that don’t respect your TTLs)
  • How to configure dig (my favourite DNS query tool) to give you human-readable output
  • The 6 most common DNS record types you’ll see in practice (A, AAAA, CNAME, MX, TXT, and NS)

This zine also comes with a free playground (Mess With DNS) where you can experiment with DNS and break things.

I want this!

Credits!

  • Cover art by Vladimir Kašiković
  • Editing by Dolly Lanuza, and Kamal Marhubi
  • Technical review by Ray Bejjani
  • Pairing: Marie Claire LeBlanc Flanagan
  • Copy Editing by Gersande La Flèche
  • and thanks to all 40 beta readers <3

Commonly asked questions:

what's a zine?

According to Wikipedia:

A fanzine (blend of fan and magazine or -zine) is a non-professional and non-official publication produced by enthusiasts of a particular cultural phenomenon (such as a literary or musical genre) for the pleasure of others who share their interest.

The zines on this site are usually about 20 pages, and they’re full of short, informative, and fun comics which will quickly teach you something useful.

who are these zines for?

They’re aimed at working programmers, like me! The idea is that you’re busy, you want to know how to use some computer thing, and the man page makes your head hurt.

is the PDF version printable?

Yes! The PDF version of the zine includes special PDFs designed to be easy printable on a home printer. Print it out, staple it, fold it, read it, and then give it to a friend! It turns out it’s way easier to convince your friends to read a physical thing that is in front of them.

They all have black & white version to make sure they print well if you only have a black & white printer.

Table of Contents:

Take a peek inside:

© Julia Evans 2024 | All rights reserved (see the FAQ for notes about licensing)