Fehlendes DNS-Loopback ausgleichen
by Michael Ochmann am 12. August 2016
Kunden von Internet-Service-Providern (ISPs) wie Kabel Deutschland (Vodafone) und der Deutschen Telekom, welche deren hauseigene Router/Modem Kombinationen nutzen und einen Server (NAS, Webserver oder Cloud) zu Hause aufsetzen möchten, stoßen auf kurz oder lang auf ein Problem:
Weder die Geräte der Telekom noch die von Kabel Deutschland ermöglichen dem Kunden, das sogenannte “DNS-Loopback” einzuschalten.
Wer jetzt seinem Heimserver eine Domain (z.B. DynDNS) verpassen will, der kann dies zwar für Zugriffe aus dem Internet tun, wird seinen Server allerdings aus seinem lokalen Netz nicht über diese Domain erreichen.
Die Lösung
Ich habe bei meinem Mediacenter, welches ich mit einem Raspberry Pi realisiert habe, als Kunde von Kabel Deutschland genau dieses Problem. Jetzt könnte ich selbstverständlich folgenden Eintrag in der Datei /etc/hosts
vornehmen:
Dann finde ich meinen Server auch im lokalen Netz unter meiner Domain. Das heißt, “auch” ist das falsche Wort. Ich finde ihn nur noch im lokalen Netz, wenn ich ihn von Außerhalb darunter erreichen will, muss ich ständig diesen Eintrag anpassen, also keine gute Lösung.
Der beste Lösungsansatz, den ich gefunden habe, ist auf dem Pi einen Domain-Name-Service (DNS) Server zu installieren, und dort den Eintrag für Lokal vorzunehmen.
Hierzu installiere ich einige Softwarepakete auf meinem Pi:
sudo apt-get install bind9 dnsutils
Nach der Installation muss im Verzeichnis /etc/bind/
dann die Zonendatei für die gewählte Domain angelegt werden. Für dieses Beispiel wählen wir die Domain server.example.com
. Okay, in oben genanntem Verzeichnis erstellen wir die Datei db.server.example.com
mit folgendem Inhalt:
Jetzt muss die neue Zone lediglich noch in der Datei /etc/bind/named.conf
bekannt gemacht werden. Dazu einfach ans Ende der Datei folgenden Block hinzufügen:
Im Anschluss muss der Service noch mit sudo service bind9
neugestartet werden, und das wars. Wenn man Glück hat, kann man den DNS direkt im Router eintragen, bei Kabel Deutschland ist es jedoch notwendig, ihn manuell auf jedem einzelnen Rechner in die entsprechende Netzwerkverbindung einzutragen.
Testen
Führt man nun im lokalen Netzwerk vom Client-Rechner den Befehl dig server.example.com
aus, sollte die Antwort so ähnlich aussehen:
Ist das der Fall, hat alles funktioniert. Herzlichen Glückwunsch, ihr habt die Schurken überlistet.
zurück