Ein eigener Ubuntu DNS Server mit BIND9 ist für viele Linux-Lernende ein sehr spannendes Projekt. DNS gehört zu den wichtigsten Basisdiensten im Netzwerk, weil Namen wie server.example.local oder www.example.com in IP-Adressen übersetzt werden. Ohne DNS müssten Sie sich statt verständlicher Namen viele IP-Adressen merken. Genau deshalb ist das Thema Ubuntu DNS Server mit BIND9 professionell aufsetzen für Administratoren, IT-Studenten und Anfänger sehr wichtig. Die aktuelle Ubuntu-Server-Dokumentation erklärt BIND9 als DNS-Server unter Ubuntu und zeigt, wie er installiert, konfiguriert und mit Tools wie dig, host und named-checkzone getestet wird. Die offizielle BIND9-Dokumentation von ISC beschreibt BIND 9 außerdem als vollständige DNS-Software mit Unterstützung für autoritative Zonen, rekursive Auflösung, ACLs und viele Sicherheitsfunktionen. :contentReference[oaicite:0]{index=0}
Für Anfänger wirkt DNS am Anfang oft kompliziert, weil mehrere Begriffe gleichzeitig auftauchen: Zone, Forward Lookup, Reverse Lookup, Resource Records, rekursiver Resolver, autoritativer Server und Caching. In der Praxis lässt sich das Thema aber Schritt für Schritt sauber aufbauen. In diesem Tutorial lernen Sie, wie Sie BIND9 unter Ubuntu installieren, welche Konfigurationsdateien wichtig sind, wie Sie eine eigene Forward-Zone und Reverse-Zone anlegen und wie Sie Ihren DNS-Server danach prüfen und absichern. Die Ubuntu-Dokumentation empfiehlt für die Installation das Paket bind9 und für Tests zusätzlich dnsutils. Die BIND9-ARM-Dokumentation beschreibt außerdem die Bedeutung von Zonendateien, ACLs und Prüfwerkzeugen wie named-checkconf und named-checkzone. :contentReference[oaicite:1]{index=1}
Was ist BIND9 unter Ubuntu?
BIND9 ist ein DNS-Server. Der Name steht für Berkeley Internet Name Domain. Unter Ubuntu wird BIND9 sehr häufig genutzt, wenn ein eigener DNS-Server für ein lokales Netzwerk, ein Labor, eine interne Domain oder eine öffentliche Zone aufgebaut werden soll. Die Ubuntu-Server-Dokumentation beschreibt BIND9 genau als den Standardweg, um unter Ubuntu einen DNS-Server einzurichten. Die offizielle BIND9-Dokumentation erklärt zusätzlich, dass BIND sowohl als autoritativer Nameserver als auch als rekursiver Resolver eingesetzt werden kann. :contentReference[oaicite:2]{index=2}
Was ein DNS-Server im Alltag macht
- Hostnamen in IP-Adressen auflösen
- Reverse-Auflösung von IP-Adressen in Namen bereitstellen
- DNS-Antworten für Clients zwischenspeichern
- Eigene interne oder externe Zonen verwalten
Autoritativ oder rekursiv – der wichtigste Unterschied
Bevor Sie BIND9 professionell aufsetzen, sollten Sie zwei Rollen verstehen. Ein autoritativer DNS-Server beantwortet Anfragen für die Zonen, für die er selbst zuständig ist. Ein rekursiver DNS-Server fragt dagegen bei Bedarf andere DNS-Server im Internet oder im Netzwerk ab und liefert den Clients das Ergebnis zurück. Die BIND9-Dokumentation trennt diese Aufgaben klar und behandelt beide Rollen ausführlich. Für viele Lernumgebungen unter Ubuntu ist es sinnvoll, zuerst mit einem einfachen autoritativen DNS-Server für eine lokale Testzone zu beginnen. :contentReference[oaicite:3]{index=3}
Warum ein eigener Ubuntu DNS Server sinnvoll ist
Ein eigener DNS-Server unter Ubuntu ist besonders nützlich, wenn Sie interne Systeme sauber benennen möchten. Statt IP-Adressen wie 192.168.1.10 zu merken, können Sie Namen wie srv1.lab.local oder db1.example.test verwenden. In Laboren, Schulungsumgebungen und Testnetzwerken ist das sehr praktisch. Zusätzlich lernen Sie dadurch wichtige Linux- und Netzwerkgrundlagen. Die Ubuntu-Dokumentation beschreibt genau solche internen und kontrollierten Einsatzszenarien für BIND9. :contentReference[oaicite:4]{index=4}
Ubuntu vorbereiten und aktualisieren
Bevor Sie BIND9 installieren, sollte das Ubuntu-System aktuell sein. Das ist wichtig für Stabilität und Sicherheit.
Paketlisten aktualisieren
sudo apt update
Pakete aktualisieren
sudo apt upgrade -y
Danach kann die eigentliche DNS-Installation beginnen.
BIND9 und wichtige Werkzeuge installieren
Die Ubuntu-Server-Dokumentation nennt für die Grundinstallation das Paket bind9. Zusätzlich empfiehlt sie dnsutils für Tests und Fehlersuche. Genau diese Kombination ist für Anfänger ideal, weil Sie damit den Server installieren und später direkt mit dig oder host prüfen können, ob Ihre Konfiguration funktioniert. :contentReference[oaicite:5]{index=5}
BIND9 installieren
sudo apt install bind9 -y
Testwerkzeuge installieren
sudo apt install dnsutils -y
Dienststatus prüfen
sudo systemctl status bind9
Dienst aktivieren
sudo systemctl enable bind9
Die wichtigsten Konfigurationsdateien verstehen
Ein professionelles BIND9-Setup unter Ubuntu lebt von einer sauberen Dateistruktur. Die Ubuntu-Dokumentation verwendet unter anderem /etc/bind/named.conf als Einstieg und bindet von dort weitere Dateien ein. Typisch sind außerdem Dateien wie named.conf.options, named.conf.local und eigene Zonendateien. Die BIND9-ARM-Dokumentation beschreibt allgemein, dass Konfigurationsdateien aus Anweisungen und Blöcken bestehen und Zonen dort klar definiert werden. :contentReference[oaicite:6]{index=6}
Wichtige Dateien unter Ubuntu
/etc/bind/named.conffür die Grundstruktur/etc/bind/named.conf.optionsfür globale Optionen/etc/bind/named.conf.localfür lokale Zonen/etc/bind/db.*oder eigene Dateien für Zonendaten
Globale Optionen in named.conf.options
In named.conf.options legen Sie wichtige Grundregeln fest, etwa auf welchen Interfaces BIND lauscht, welche Forwarder genutzt werden und welche Clients rekursive Auflösung verwenden dürfen. Die Ubuntu-Dokumentation zeigt dort typische Einstellungen wie Forwarder und Rekursionsoptionen. Die BIND9-Dokumentation beschreibt außerdem ACLs und andere Zugriffskontrollen für sichere Umgebungen. Für Anfänger ist wichtig: Öffnen Sie Rekursion nicht unnötig für alle Netze. :contentReference[oaicite:7]{index=7}
Ein einfaches Beispiel
options { directory "/var/cache/bind";recursion yes;
allow-recursion { 127.0.0.1; 192.168.1.0/24; };
forwarders {
1.1.1.1;
8.8.8.8;
};
dnssec-validation auto;
listen-on { any; };
listen-on-v6 { any; };};
Diese Konfiguration erlaubt Rekursion nur lokal und aus dem internen Netz und nutzt zusätzlich Upstream-DNS-Server als Forwarder. Die Ubuntu-Dokumentation zeigt, dass Forwarder und Rekursion in diesem Bereich konfiguriert werden. Die Ubuntu-DNSSEC-Dokumentation beschreibt zudem DNSSEC als Sicherheitsmechanismus für Authentizität und Integrität von DNS-Daten. :contentReference[oaicite:8]{index=8}
Eine eigene Forward-Zone anlegen
Für einen autoritativen DNS-Server brauchen Sie mindestens eine Zone. Eine Forward-Zone löst Namen in IP-Adressen auf. In der Ubuntu-Dokumentation wird die Zonendefinition in
named.conf.localangelegt. Danach wird eine passende Zonendatei erstellt. Genau das ist der klassische Weg für ein professionelles BIND9-Setup unter Ubuntu. :contentReference[oaicite:9]{index=9}Zone in named.conf.local eintragen
zone "lab.local" { type master; file "/etc/bind/db.lab.local"; };Damit weiß BIND9, dass er für die Zone lab.local autoritativ zuständig ist und die Daten aus der angegebenen Datei liest.
Die Zonendatei für die Forward-Zone erstellen
Die Zonendatei enthält die eigentlichen DNS-Einträge. Die BIND9-Dokumentation erklärt Resource Records wie
SOA,NS,Aund andere im Detail. Für einen sauberen Einstieg brauchen Sie mindestens einen SOA-Eintrag, einen NS-Eintrag und einige A-Records. :contentReference[oaicite:10]{index=10}Beispiel für /etc/bind/db.lab.local
$TTL 86400 @ IN SOA ns1.lab.local. admin.lab.local. ( 2026031901 3600 1800 604800 86400 )@ IN NS ns1.lab.local.
ns1 IN A 192.168.1.10
srv1 IN A 192.168.1.20
web1 IN A 192.168.1.30Der Serienwert im SOA-Eintrag sollte bei Änderungen erhöht werden. Genau das gehört zu einer sauberen DNS-Verwaltung.
Eine Reverse-Zone anlegen
Ein professioneller Ubuntu DNS Server sollte nicht nur Vorwärtsauflösung, sondern auch Reverse-Auflösung beherrschen. Dabei wird eine IP-Adresse zurück in einen Namen übersetzt. Das ist besonders nützlich für Diagnose, Logs und manche Netzwerkdienste. Die Ubuntu-Dokumentation zeigt auch Reverse-Zonen als wichtigen Bestandteil der DNS-Konfiguration. :contentReference[oaicite:11]{index=11}
Reverse-Zone in named.conf.local eintragen
zone "1.168.192.in-addr.arpa" { type master; file "/etc/bind/db.192.168.1"; };Beispiel für /etc/bind/db.192.168.1
$TTL 86400 @ IN SOA ns1.lab.local. admin.lab.local. ( 2026031901 3600 1800 604800 86400 )@ IN NS ns1.lab.local.
10 IN PTR ns1.lab.local.
20 IN PTR srv1.lab.local.
30 IN PTR web1.lab.local.Konfiguration immer prüfen
Ein sehr wichtiger Teil professioneller DNS-Verwaltung ist das Prüfen der Konfiguration, bevor der Dienst neu geladen wird. Die BIND9-Dokumentation beschreibt dafür
named-checkconfundnamed-checkzone. Genau diese Werkzeuge sollten Sie immer nutzen, bevor Sie Änderungen aktivieren. :contentReference[oaicite:12]{index=12}Gesamte Konfiguration prüfen
sudo named-checkconfForward-Zone prüfen
sudo named-checkzone lab.local /etc/bind/db.lab.localReverse-Zone prüfen
sudo named-checkzone 1.168.192.in-addr.arpa /etc/bind/db.192.168.1Wenn diese Tests sauber laufen, können Sie BIND9 neu laden oder neu starten.
BIND9 neu laden und Status prüfen
Nach Änderungen an Konfigurationsdateien oder Zonendateien sollten Sie den Dienst neu laden. Unter Ubuntu wird BIND9 dabei per systemd verwaltet.
Dienst neu starten
sudo systemctl restart bind9Status prüfen
sudo systemctl status bind9Wenn Fehler auftreten, helfen Statusmeldungen und Logs oft schnell weiter.
DNS mit dig und host testen
Die Ubuntu-Dokumentation empfiehlt
dnsutilsausdrücklich für Tests und Fehlersuche. Dazu gehören Werkzeuge wiedigundhost. Für ein professionelles Setup sollten Sie nach jeder Änderung prüfen, ob Forward- und Reverse-Auflösung wirklich funktionieren. :contentReference[oaicite:13]{index=13}Forward-Lookup testen
dig @127.0.0.1 web1.lab.localReverse-Lookup testen
dig @127.0.0.1 -x 192.168.1.30Mit host testen
host web1.lab.local 127.0.0.1 host 192.168.1.30 127.0.0.1Zugriff mit ACLs sicher einschränken
Ein professioneller DNS-Server sollte nicht unnötig offen für alle Clients sein. Die BIND9-Dokumentation beschreibt Address Match Lists und ACLs als zentrale Werkzeuge, um rekursive Auflösung oder andere Funktionen auf bestimmte Clients zu begrenzen. Für Ubuntu-Labore und Produktivumgebungen ist das sehr wichtig. Rekursion sollte nur für vertrauenswürdige Netze erlaubt sein. :contentReference[oaicite:14]{index=14}
Einfaches ACL-Beispiel
acl internes_netz { 127.0.0.1; 192.168.1.0/24; };options {
recursion yes;
allow-recursion { internes_netz; };
};Damit bleibt rekursive Auflösung auf lokale und interne Clients beschränkt.
Warum DNSSEC später wichtig werden kann
Wenn der Server über einfache interne Tests hinausgeht, kommt oft auch DNSSEC ins Spiel. Die Ubuntu-Dokumentation beschreibt DNSSEC als Sicherheits-Erweiterung für DNS, mit der Authentizität und Integrität von DNS-Daten geprüft werden können. Für Anfänger ist das noch kein Pflichtschritt, aber es ist gut zu wissen, dass BIND9 unter Ubuntu auch diesen Bereich unterstützt. :contentReference[oaicite:15]{index=15}
Firewall und Netzwerk nicht vergessen
Ein DNS-Server muss über die richtigen Ports erreichbar sein. DNS nutzt typischerweise Port 53 für UDP und TCP. Wenn BIND9 nur intern genutzt wird, sollte die Freigabe auch nur intern erfolgen. Für ein professionelles Ubuntu-Setup ist es wichtig, nicht mehr zu öffnen als nötig.
Typische UFW-Beispiele
sudo ufw allow 53/udp sudo ufw allow 53/tcpWenn der Server nur im lokalen Netz erreichbar sein soll, sollten zusätzliche Netzwerkregeln entsprechend eingeschränkt werden.
Typische Fehler bei BIND9 unter Ubuntu
Viele Probleme bei BIND9 entstehen nicht durch komplizierte Technik, sondern durch kleine Tippfehler. Ein vergessener Punkt hinter einem FQDN, ein falscher Serienwert oder eine nicht geprüfte Zonendatei kann den gesamten Dienst blockieren. Genau deshalb sind
named-checkconfundnamed-checkzoneso wichtig. Die BIND9-ARM-Dokumentation betont diese Prüfwerkzeuge ausdrücklich. :contentReference[oaicite:16]{index=16}Häufige Fehler
- FQDNs in Zonendateien ohne abschließenden Punkt
- Seriennummer im SOA-Eintrag nicht erhöhen
- Forward- oder Reverse-Zone nicht in
named.conf.localeingetragen - Syntax nicht mit Prüfwerkzeugen getestet
- Rekursion unnötig offen für alle Netze
Eine sinnvolle Lernstrategie für Anfänger
Auch wenn das Thema professionell klingt, sollten Anfänger klein anfangen. Erst BIND9 installieren. Dann eine einzige interne Forward-Zone anlegen. Danach eine Reverse-Zone ergänzen. Anschließend Konfiguration mit den Prüfwerkzeugen testen. Erst wenn das sicher läuft, sollten ACLs, DNSSEC oder komplexere Zonen dazukommen. Genau dieser Weg ist meist erfolgreicher als ein zu schneller Einstieg in große und offene DNS-Setups. :contentReference[oaicite:17]{index=17}
Empfohlene Reihenfolge
- Ubuntu aktualisieren
- BIND9 und dnsutils installieren
- Eine einfache Forward-Zone anlegen
- Dann eine Reverse-Zone ergänzen
- Mit
named-checkconfundnamed-checkzonetesten - Erst danach ACLs und weiterführende Sicherheitsfunktionen ausbauen
Wichtige Befehle im Überblick
Wenn Sie einen Ubuntu DNS Server mit BIND9 professionell aufsetzen möchten, sollten Sie diese Befehle sicher kennen. Die wichtigsten Werkzeuge dafür werden in der Ubuntu- und BIND9-Dokumentation ausdrücklich empfohlen. :contentReference[oaicite:18]{index=18}
BIND9 installieren
sudo apt install bind9 -y
Testwerkzeuge installieren
sudo apt install dnsutils -y
Gesamtkonfiguration prüfen
sudo named-checkconf
Zone prüfen
sudo named-checkzone lab.local /etc/bind/db.lab.local
Reverse-Zone prüfen
sudo named-checkzone 1.168.192.in-addr.arpa /etc/bind/db.192.168.1
Dienststatus prüfen
sudo systemctl status bind9
DNS-Abfrage testen
dig @127.0.0.1 web1.lab.local
dig @127.0.0.1 -x 192.168.1.30
Wer diese Grundlagen sauber versteht und praktisch anwendet, kann mit Ubuntu und BIND9 einen sehr ordentlichen DNS-Server aufbauen. Genau das ist im Alltag entscheidend: Nicht nur irgendeinen Resolver laufen lassen, sondern Zonen, Auflösung, Prüfung und Sicherheit so kombinieren, dass der DNS-Dienst stabil, nachvollziehbar und professionell verwaltet wird. :contentReference[oaicite:19]{index=19}
::contentReference[oaicite:20]{index=20}
Konfiguriere Cisco Router & Switches und liefere ein Packet-Tracer-Lab/GNS3
Ich biete professionelle Unterstützung im Bereich Netzwerkkonfiguration und Network Automation für private Anforderungen, Studienprojekte, Lernlabore, kleine Unternehmen sowie technische Projekte. Ich unterstütze Sie bei der Konfiguration von Routern und Switches, der Erstellung praxisnaher Topologien in Cisco Packet Tracer, dem Aufbau und Troubleshooting von GNS3- und EVE-NG-Labs sowie bei der Automatisierung von Netzwerkaufgaben mit Netmiko, Paramiko, NAPALM und Ansible. Kontaktieren Sie mich jetzt – klicken Sie hier.
Meine Leistungen umfassen:
-
Professionelle Konfiguration von Routern und Switches
-
Einrichtung von VLANs, Trunks, Routing, DHCP, NAT, ACLs und weiteren Netzwerkfunktionen
-
Erstellung von Topologien und Simulationen in Cisco Packet Tracer
-
Aufbau, Analyse und Fehlerbehebung von Netzwerk-Labs in GNS3 und EVE-NG
-
Automatisierung von Netzwerkkonfigurationen mit Python, Netmiko, Paramiko, NAPALM und Ansible
-
Erstellung von Skripten für wiederkehrende Netzwerkaufgaben
-
Dokumentation der Konfigurationen und Bereitstellung nachvollziehbarer Lösungswege
-
Konfigurations-Backups, Optimierung bestehender Setups und technisches Troubleshooting
Benötigen Sie Unterstützung bei Ihrem Netzwerkprojekt, Ihrer Simulation oder Ihrer Network-Automation-Lösung? Kontaktieren Sie mich jetzt – klicken Sie hier.

