Kennisbank › Dns › BIND: Choosing a DNS Server When Everything Depends On It
dns starter 09 September 2026

BIND: Choosing a DNS Server When Everything Depends On It

BIND: Choosing a DNS Server When Everything Depends On It The file is called `named.conf`, and if you get it wrong, nothing resolves.That single fact explains

That single fact explains most of what follows. BIND is the software that turns `pixzo.nl` into an IP address for a large part of the internet, and it has been doing that job since the 1980s. If you are standing up a DNS server today, you have a choice to make, and BIND is one of the options on the table — not automatically the right one.

So let's talk about what BIND actually is, where it came from, and what it costs you to run it.

The short version

BIND stands for Berkeley Internet Name Domain. It is an open source implementation of the Domain Name System, maintained since 1994 by the Internet Systems Consortium, a non-profit. It runs as a daemon, usually called `named`, on Unix-like systems: Linux, the BSDs, and everything downstream of them.

It resolves names. It serves zones. It speaks DNSSEC. It does views, dynamic updates, master and slave replication, the whole list.

That list is also the problem. More on that in a moment.

Where it came from, briefly

DNS as a protocol did not start with BIND. Paul Mockapetris wrote the first working nameserver, Jeeves, between 1983 and 1984, for DEC Tops-20 machines at USC-ISI and SRI-NIC. That was the architecture. The Unix implementation came next, and that is where BIND begins.

A group of graduate students at the University of California at Berkeley built the first Unix nameserver under a DARPA grant. In 1984, four of them were named as authors of that first implementation: Douglas Terry, Mark Painter, David Riggle, and Songnian Zhou. It was limited, experimental, and academic.

In 1985, Kevin Dunlap at DEC rewrote large parts of it. Stability, performance, reliability — the things that separate a research tool from something you would put in front of real traffic. A release is dated to June 1986.

Then in 1988, Paul Vixie took over maintenance while at DEC. This is the turning point. Vixie did not just improve the code; he professionalized the process around it. Security, standardization, a maintenance discipline that a critical piece of infrastructure needs.

In 1994, the Internet Systems Consortium was founded by Rick Adams, Paul Vixie, and Carl Malamud to give BIND a durable home. From version 4.9.3 onward, ISC and its predecessor, the Internet Software Consortium, maintained it. In 2004 the organization formally changed its name to Internet Systems Consortium — the same entity that maintains BIND and DHCP today.

BIND 8 arrived in May 1997, released by Bob Halley and Paul Vixie. It was meant as an interim step: better security and reliability, but the codebase was already showing its age. The real rewrite was already underway.

That rewrite landed on 16 September 2000 as BIND 9.0.0. New design, modular architecture, DNSSEC support, built to scale from a small office network to top-level domain infrastructure. It became the default DNS implementation for most of the internet.

What running BIND actually costs you

Configuration lives in `named.conf` and in zone files. You manage the running server with `rndc`, the name server control utility, which lets you reload zones and query status without restarting the daemon.

The feature set is genuinely broad. Forward and reverse lookup zones. Master and slave setups. DNSSEC. Views, which let you return different answers based on client IP — useful, and easy to get subtly wrong. Dynamic updates.

Every one of those features is a knob. Every knob is a way to misconfigure something that will not fail loudly until it does.

A typo in `named.conf` or a zone file can take name resolution down for everything behind it. That is not a BIND-specific flaw; it is what happens when a single process sits in front of every lookup your infrastructure makes.

The debugging tools exist and they work. `mdig` is a piped DNS lookup tool. `ldns-testns` spins up a fake nameserver for testing. On the client side, `/etc/hosts` holds static mappings and `/etc/resolv.conf` defines which servers get queried. BIND is the active server; those files shape the client side of the same conversation.

None of this is hidden. It is all documented, extensively, because BIND has been around long enough that someone has hit your problem before. That documentation is an asset. It is also a sign of how much surface area you are taking on.

The alternatives are not worse

PowerDNS, Unbound, and Knot DNS all resolve names. They are not toys.

Unbound is a validating, recursive, caching resolver. If that is all you need — recursion for a set of clients, no authoritative serving — Unbound does that job with a configuration file you can read in one sitting. Knot DNS focuses on authoritative serving and performance. PowerDNS separates the nameserver from the backend, which means you can drive it from a database instead of zone files.

Each of those makes a trade. Unbound is not trying to be an authoritative server for your zones. PowerDNS asks you to run and maintain a database alongside it. Knot is fast and focused, and if you need the full BIND feature matrix, it is not that.

BIND's advantage is that it does all of it, in one package, with decades of documentation and a non-profit steward. Its cost is that "all of it" is a lot to hold in your head.

What you are really choosing

If you are running a small resolver for a handful of machines, BIND is more software than the job requires. Unbound will do it and you will understand the config by lunch.

If you are serving authoritative zones for domains you own, with DNSSEC signing and views and replication, BIND is a reasonable default and the documentation will carry you. So will Knot, with less to learn and less to break.

If your zone data already lives in a database, PowerDNS is the shape you want, and you have accepted the cost of running that database.

The honest summary: BIND is not the right answer because it is the biggest. It is the right answer when you actually need the size.

Self-hosting DNS sounds clean until a zone transfer fails at 02:00 and every service behind that domain goes dark. Then you are not the person waiting for an answer. You are the person who has to give one.

Pick the tool that matches the job you have, not the job you might have someday. The one you can debug at 02:00 is worth more than the one with the longer feature list.

← Terug naar kennisbank
← Terug naar kennisbank