Der Domain Name Service, kurz DNS, ist ein fundamentales Element in modernen IP-Netzwerken, einschließlich des Internets. Seine primäre Funktion besteht darin, die IP-Adresse eines Computers zu ermitteln, wenn lediglich sein Hostname bekannt ist. Dieser scheinbar einfache Vorgang ist in Wirklichkeit recht komplex. Im globalen Maßstab des Internets muss jeder Benutzer in der Lage sein, die IP-Adresse jeder Ressource zu finden, unabhängig von ihrem Standort. Auf lokaler Ebene muss das DNS jeden Hostnamen in seine lokale IP-Adresse übersetzen und Anfragen für Internetadressen an öffentliche DNS-Server weiterleiten. Zur Unterstützung von Netzwerkadministratoren bei der effizienten Verwaltung des DNS stehen diverse Werkzeuge zur Verfügung. Einige dieser Tools helfen bei der Einrichtung, andere bei der Fehlerbehebung oder Überwachung der DNS-Umgebung. Im Folgenden werden wir einige der besten derzeit verfügbaren DNS-Tools näher betrachten.
Wir beginnen unsere Erörterung mit einer Erklärung, was DNS ist und wie es funktioniert. Wir werden uns bemühen, dies so verständlich wie möglich darzustellen. Anschließend werden wir die DNS-Verwaltung erörtern und uns mit den verschiedenen Aspekten dieser Thematik befassen. Da es in diesem Artikel hauptsächlich um Werkzeuge geht, stellen wir danach die verschiedenen Typen von DNS-Tools vor, die Netzwerkadministratoren zur Verfügung stehen. Dies führt uns dann zu unserem zentralen Thema: den besten verfügbaren DNS-Tools. Wir werden einige der nützlichsten Werkzeuge analysieren, die uns begegnet sind.
DNS: Grundlagen und Funktionsweise
In den Anfängen des Internets waren nur wenige Computer miteinander vernetzt. Um nicht mit umständlichen IP-Adressen arbeiten zu müssen, hatte jeder Computer einen Hostnamen. Jeder vernetzte Computer verfügte über eine Textdatei – treffend „Hosts“ genannt – welche die Zuordnung der IP-Adresse zum Hostnamen jedes anderen Computers im Netzwerk enthielt.
Solange die Anzahl der vernetzten Computer gering war, funktionierte dies gut. Es wurde jedoch schnell klar, dass eine bessere Methode zur Verteilung dieser Informationen benötigt wurde. Das DNS wurde speziell für diesen Zweck entwickelt. Im Grunde ist DNS eine dezentrale Version der „Hosts“-Datei, die in der Lage ist, die IP-Adresse eines beliebigen Hostnamens aufzulösen. Der Vorteil des DNS ist, dass es sich um ein verteiltes System handelt, bei dem jeder lokale Administrator lediglich dafür verantwortlich ist, Daten über die von ihm verwalteten Hosts auf den DNS-Servern aktuell zu halten.
Normalerweise verfügt jede Organisation über einen lokalen DNS-Server. Dieser ist für die Auflösung von IP-Adressen für lokale Ressourcen zuständig. Anfragen, die er nicht selbst beantworten kann, leitet dieser Server an seinen Forwarding-Server weiter, einen öffentlichen DNS-Server im Internet. Ich werde die genauen Details hier weglassen, aber jeder öffentliche Nameserver kann jeden öffentlichen Hostnamen in eine öffentliche IP-Adresse auflösen. Im Prinzip kann dies auch Ihr lokaler DNS-Server tun, da er Anfragen an einen öffentlichen Server weiterleitet.
Ein Nachteil dieser Architektur ist, dass die Auflösung einer IP-Adresse einige Zeit in Anspruch nehmen kann, da viele Server die Anfrage möglicherweise an einen weiteren Server weiterleiten müssen. Dieser Effekt wird durch lokales Caching abgemildert. Wenn ein DNS-Server Informationen im Auftrag eines anderen Servers anfordert, werden diese Informationen zwischengespeichert. Bei der nächsten Anforderung muss die Information nicht erneut von einem anderen Server bezogen werden. Dieses Caching ist jedoch nicht dauerhaft und läuft irgendwann ab, sodass die Server andere Server erneut abfragen müssen.
DNS-Verwaltung
Die Verwaltung des lokalen DNS ist eine wichtige Aufgabe. Jedes Mal, wenn ein neues Gerät – sei es ein Computer, ein Drucker oder ein anderes Netzwerkgerät – in das Netzwerk integriert wird, müssen sein Hostname und die entsprechende IP-Adresse dem lokalen DNS-Server hinzugefügt werden. Je nachdem, wie Sie IP-Adressen verwalten und welches Werkzeug Sie verwenden, kann dies ein vollständig manueller, ein vollständig automatisierter oder ein Prozess dazwischen sein.
Ein weiterer wichtiger Aspekt der DNS-Verwaltung ist die Sicherstellung, dass die Namensauflösung Ihrer öffentlich zugänglichen Ressourcen – wie Ihrer Website – korrekt konfiguriert und auf öffentlichen DNS-Servern verfügbar ist, sodass jeder Benutzer darauf zugreifen kann. Die Überwachung ist ein weiterer wesentlicher Bestandteil der DNS-Administration. Wenn das DNS ausfällt, ist keine Zuordnung von Hostnamen zu IP-Adressen möglich und alle verbundenen Ressourcen werden unerreichbar. Dies ist definitiv ein Zustand, den es zu vermeiden gilt.
Verschiedene Arten von DNS-Tools
Es gibt verschiedene Kategorien von DNS-Tools. Eine erste Kategorie sind DNS-Audit-Tools. Diese führen Forward- und Reverse-DNS-Abfragen aus, um zu überprüfen, ob beide Einträge übereinstimmen. Dies ist sehr nützlich, da nicht übereinstimmende Forward- und Reverse-Einträge zu einer Reihe von Problemen führen können.
Eine andere Art von Tool kann zur Analyse der Struktur Ihrer DNS-Architektur verwendet werden. Diese Werkzeuge können die Beziehungen zwischen DNS-Servern aufzeigen und Ihnen helfen, einen zielgerichteteren Ansatz zur DNS-Auflösung zu verfolgen. Wie bereits erwähnt, kann die Weiterleitung von DNS-Anfragen einige Zeit in Anspruch nehmen, daher ist eine effiziente Architektur von Vorteil, was diese Art von Tool bestätigen kann. Zu diesem Zweck kann auch DNS-Benchmarking-Software eingesetzt werden, um die Leistung verschiedener öffentlicher DNS-Server zu vergleichen und den am besten geeigneten öffentlichen DNS-Server für die Weiterleitung von Anfragen zu bestimmen.
Weiterhin gibt es Befehlszeilentools, die üblicherweise zum Testen der Namensauflösung durch manuelle Abfragen von Servern verwendet werden. Nslookup und Dig sind zwei solcher Befehle, die wir später näher betrachten werden.
Die letzte Kategorie von Tools sind Online-Tools, mit denen DNS-bezogene Tests von verschiedenen Standorten weltweit aus durchgeführt werden können. Diese Tools können Ihnen einen guten Eindruck davon vermitteln, wie Ihre Hosts von entfernten Clients aufgelöst werden.
Die besten DNS-Tools
Angesichts der Vielzahl der verfügbaren Werkzeuge war es keine leichte Aufgabe, die besten auszuwählen. Wir haben versucht, von jeder Tool-Kategorie mindestens ein Werkzeug zu berücksichtigen, um Ihnen einen Überblick über das verfügbare Angebot zu geben. Daher präsentieren wir eine Mischung aus lokal installierbarer Software, Befehlszeilenprogrammen, die in den meisten Betriebssystemen integriert sind, und Online-Tools.
1. SolarWinds Engineer’s Toolset (KOSTENLOSE Testversion)
Die ersten beiden Tools auf unserer Liste stammen aus dem SolarWinds Engineer’s Toolset. SolarWinds ist für die Entwicklung hochwertiger Netzwerkmanagement-Tools bekannt. Sein Flaggschiffprodukt, der Network Performance Monitor, gilt als eines der besten Tools zur Netzwerküberwachung. SolarWinds ist auch für seine zahlreichen kostenlosen Tools bekannt, kleinere Anwendungen, die jeweils auf einen bestimmten Bedarf von Netzwerkadministratoren zugeschnitten sind. Zwei Beispiele hierfür sind der Advanced Subnet Calculator und der Kiwi Syslog Server.
Das SolarWinds Engineer’s Toolset ist ein Paket von über 60 verschiedenen Tools. Einige davon sind kostenlose SolarWinds-Tools, während andere exklusiv in diesem Paket erhältlich sind. Im Bereich DNS sind zwei Tools im Engineer’s Toolset enthalten: SolarWinds DNS Audit und der SolarWinds DNS Structure Analyzer. Auf die anderen Tools des Pakets werden wir später noch eingehen.
1.1 SolarWinds DNS Audit (KOSTENLOSE Testversion im Engineer’s Toolset)
Das DNS-Audit-Tool von SolarWinds ist besonders nützlich für Administratoren, die ihr DNS manuell verwalten und konfigurieren. Die Funktionsweise ist relativ einfach, bietet aber erhebliche Vorteile. Das Tool scannt einen Bereich von IP-Adressen und führt Reverse-DNS-Abfragen für jede Adresse durch. Reverse-DNS ist der Prozess, bei dem ein DNS-Server abgefragt wird, um den Hostnamen zu einer bestimmten IP-Adresse zu finden, anstelle des umgekehrten Weges. Ein korrekt konfigurierter DNS-Server sollte für jeden Forward-Eintrag auch einen Reverse-DNS-Eintrag haben.
Sobald das Tool die Auflösung jeder IP-Adresse in einen Hostnamen abgeschlossen hat, versucht es, jeden Hostnamen in seine IP-Adresse aufzulösen und meldet alle Datensätze, bei denen eine Diskrepanz gefunden wird. Das Ergebnis der Prüfung wird in Tabellenform mit einer Zeile für jede gescannte IP-Adresse angezeigt.
1.2 SolarWinds DNS Structure Analyzer (KOSTENLOSE Testversion im Engineer’s Toolset)
Das nächste Tool aus dem SolarWinds Engineer’s Toolset, der SolarWinds DNS Structure Analyzer, unterscheidet sich grundlegend in seiner Funktion und Arbeitsweise. Dieses Tool erkennt und erstellt visuelle Diagramme der hierarchischen DNS-Struktur der DNS-Ressourceneinträge Ihres Unternehmens, einschließlich Root-Servern, Nameservern, globalen Top-Level-Domain-Servern, CName-Zeigern und autoritativen Adressservern. Das Tool erleichtert auch das Erkennen von Beziehungen zwischen mehreren Nameservern und Ziel-IP-Adressen anhand des DNS-Strukturdiagramms. Weiterleitungen von einem DNS-Server zu einem anderen werden grafisch dargestellt.
Der SolarWinds DNS Structure Analyzer ist möglicherweise nicht für jeden Anwender geeignet, aber für diejenigen, die ein solches Tool benötigen, ist es unschlagbar. Da es in der kostenlosen Testversion des Engineer’s Toolset enthalten ist, empfehlen wir Ihnen, es auszuprobieren und selbst zu sehen, ob es für Sie nützlich ist.
Weitere Werkzeuge im Engineer’s Toolset
Das SolarWinds Engineer’s Toolset enthält eine Vielzahl von Tools zur Fehlerbehebung. Darunter befinden sich Tools wie Ping Sweep, DNS Analyzer und TraceRoute, mit denen Sie Netzwerkdiagnosen durchführen und komplexe Netzwerkprobleme schnell beheben können. Für sicherheitsbewusste Netzwerkadministratoren sind Tools enthalten, mit denen Angriffe auf Ihr Netzwerk simuliert und Schwachstellen identifiziert werden können.
Das SolarWinds Engineer’s Toolset bietet auch Überwachungs- und Alarmierungsfunktionen. Einige dieser Tools überwachen Ihre Geräte und geben Warnungen aus, wenn sie Verfügbarkeits- oder Gesundheitsprobleme feststellen. Dies verschafft Ihnen oft genügend Zeit, um zu reagieren, bevor Benutzer überhaupt ein Problem bemerken. Darüber hinaus können Sie einige der enthaltenen Tools für das Konfigurationsmanagement und die Protokollkonsolidierung verwenden.
Hier sind einige weitere Tools, die Sie neben DNS Audit und DNS Structure Analyzer im SolarWinds Engineer’s Toolset finden:
Port-Scanner
Switch-Port-Mapper
SNMP-Sweep
IP-Netzwerkbrowser
Erkennung von MAC-Adressen
Ping-Sweep
Reaktionszeitmonitor
CPU-Monitor
Schnittstellenmonitor
TraceRoute
Entschlüsselung des Router-Passworts
SNMP-Brute-Force-Angriff
Angriff auf das SNMP-Wörterbuch
Config Compare, Downloader, Uploader und Editor
SNMP-Trap-Editor und SNMP-Trap-Empfänger
Subnetzrechner
DHCP-Bereichsmonitor
DNS-Struktur-Analysator
DNS-Audit
IP-Adressverwaltung
WAN-Killer
Im SolarWinds Engineer’s Toolset sind eine Vielzahl von Tools enthalten, zu viele, um sie alle hier aufzulisten. Mit einer kostenlosen 14-tägigen Testversion empfiehlt es sich, das Paket herunterzuladen und selbst zu sehen, was es leisten kann.
2. DNS Benchmark von GRC
Der Name dieses Tools sagt im Grunde schon alles. Wenn Sie sich gefragt haben, ob Ihre Wahl des DNS-Servers Ihre Internet-Erfahrung beeinflusst, bietet der DNS Benchmark von GRC ein umfassendes, genaues und kostenloses Windows-Dienstprogramm – unter Linux in Verbindung mit Wine – um die genaue Leistung von lokalen und externen DNS-Servern zu bestimmen.
Obwohl der DNS Benchmark von GRC über viele Funktionen verfügt, die die Bedürfnisse selbst anspruchsvollster Netzwerkadministratoren erfüllen – und auch Funktionen für ernsthafte DNS-Leistungsanalysen bietet – ist das Tool auch für Gelegenheitsnutzer und Einsteiger sehr einfach zu bedienen. Ein besonderes Plus ist der Preis: Das Tool ist zwar keine Open-Source-Software, aber kostenlos und für jeden zum Download verfügbar.
3. Nslookup
Das nächste Tool auf unserer Liste ist ein ziemlich nützliches Fehlerbehebungswerkzeug, das in den meisten Betriebssystemen – einschließlich aller modernen Windows-Versionen – vorhanden ist: nslookup. Es wird oft als Fehlerbehebungswerkzeug übersehen, bietet aber echten Mehrwert. Nslookup ist eines der grundlegendsten Tools, um die korrekte Konfiguration von DNS-Servern zu überprüfen. Der Name ist eine Abkürzung für „Name Server Lookup“.
Am besten verstehen Sie die Arbeitsweise und die Vorteile von nslookup, wenn Sie es in Aktion sehen. Wir beginnen daher mit einer kleinen Demonstration. Die Verwendung des Befehls ist sehr einfach: Sie geben ihn ein, gefolgt von der Abfrage. In unserem Beispiel verwenden wir www.google.com.
Der Befehl sieht dann so aus:
C:>nslookup www.google.com
Und so sieht die Antwort von nslookup aus:
Server: my.local.dns.server Address: 10.10.10.10 Non-authoritative answer: Name: www.google.com Addresses: 2607:f8b0:4002:80f::2004 172.217.4.4
Die ersten beiden Zeilen der Antwort geben an, welchen Server verwendet wird, um die Informationen zu beziehen, und die IP-Adresse dieses Servers. Standardmäßig wird der erste DNS-Server verwendet, der auf dem Computer konfiguriert ist, von dem aus Sie den Befehl verwenden. In der zweiten Zeile informiert nslookup Sie, dass es eine nicht autorisierende Antwort gibt. Dies ist kein Grund zur Sorge, sondern bedeutet lediglich, dass der Server, der die Antwort gibt, die Informationen von einem anderen Server erhalten hat. Es wäre tatsächlich überraschend, eine autorisierende Antwort vom DNS-Server Ihres lokalen Computers zu erhalten. Diese sehen Sie üblicherweise, wenn Sie Informationen über einen anderen lokalen Computer abfragen. Danach folgen natürlich die Informationen zu Ihrer eigentlichen Anfrage. Nslookup listet zunächst den Namen auf, den Sie abgefragt haben, gefolgt von der eigentlichen Antwort, oder in diesem Fall von den Antworten. In unserem Beispiel hat die Abfrage sowohl eine IPv6- als auch eine IPv4-Adresse zurückgegeben.
Nslookup verfügt auch über einen interaktiven Modus, den Sie durch Eingabe des Befehls selbst aktivieren können. Sobald das Tool gestartet ist – Sie sehen, dass sich die Eingabeaufforderung in ein „>“ ändert – können Sie Befehle direkt eingeben.
Es gibt viele verschiedene Möglichkeiten, DNS-Server mit nslookup abzufragen. Sie können beispielsweise nur Informationen über die Mailserver-Einstellungen abrufen, indem Sie im interaktiven Modus „set type=mx“ eingeben. Sie können auch eine Verbindung zu einem bestimmten DNS-Server herstellen. Um beispielsweise eine Verbindung zum DNS-Server von Google herzustellen, würden Sie „Server 8.8.8.8“ eingeben.
Nslookup bietet viel mehr Optionen als diese. Es ist hilfreich, sich mit dem Domain Name Service auszukennen, um das Tool optimal nutzen zu können. Obwohl es sich um ein älteres Tool handelt und viele es gerne durch modernere Alternativen ersetzen würden – wie Dig, unser nächstes Tool – ist es immer noch eines der am häufigsten verwendeten DNS-Tools.
4. Dig
Dig ist ein weiteres Befehlszeilentool, das zunehmend an Beliebtheit gewinnt. Sein Zweck ist nahezu identisch mit dem von nslookup, aber die Syntax ist etwas anders. Außerdem sind die Antworten von dig etwas ausführlicher als die von nslookup. Dies ist einer der Gründe, warum dig seinen älteren Cousin bisher nicht ablösen konnte. Ein weiterer Grund ist, dass nslookup auf fast jedem System vorhanden ist, während dig nur auf einigen Linux-Distributionen verfügbar ist. Dig kann auf jedem Linux- oder Windows-Computer installiert werden, aber warum sollten sich viele Administratoren die Mühe machen, wenn nslookup seine Aufgabe erfüllt?
So sieht eine typische dig-Abfrage aus:
$ dig -t mx www.google.com ; <<>> DiG 9.10.3-P4-Ubuntu <<>> -t mx www.google.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 40683 ;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;www.google.com. IN MX ;; AUTHORITY SECTION: google.com. 60 IN SOA ns1.google.com. dns-admin.google.com. 164707171 900 900 1800 60 ;; Query time: 61 msec ;; SERVER: 127.0.1.1#53(127.0.1.1) ;; WHEN: Wed Aug 09 14:34:03 EDT 2017 ;; MSG SIZE rcvd: 113
Wie Sie sehen können, ist die Antwort viel ausführlicher als die einer typischen nslookup-Abfrage.
5. Online-DNS-Tools – DNSstuff
Die letzte Kategorie von DNS-Tools, die wir besprechen möchten, sind Online-DNS-Tools. Diese Tools können sehr nützlich sein, da sie Ihnen eine andere Perspektive bieten, nämlich die eines Remote-Geräts irgendwo im Internet. Es gibt zahlreiche Websites, die DNS-Tools anbieten. Die angebotenen Tools variieren, aber alle ermöglichen es Ihnen zumindest, die öffentliche IP-Adresse eines vollqualifizierten Domainnamens zu ermitteln.
DNSstuff ist beispielsweise eine Website, die ein Dutzend verschiedener Tools zum Testen von verschiedenen Aspekten des DNS anbietet. Darunter befindet sich auch ein ausgefeiltes und einfach zu bedienendes Äquivalent zu nslookup oder dig. Der größte Nachteil dieser Art von Tools ist, dass Sie normalerweise keinen bestimmten DNS-Server auswählen können. Sie erhalten lediglich eine Perspektive von einem entfernten Internetstandort.