AllInfo

Wie die dig-Befehl unter Linux

Fatmawati Achmad Zaenuri/Shutterstock

Die Linux-dig-Befehl ermöglicht die Abfrage von DNS-Servern und DNS-lookups durchführen. Sie können auch finden, dass die domain eine IP-Adresse führt zurück. Wir zeigen Ihnen, wie!

Wie der dig-Befehl Funktioniert

Menschen die Linux-dig-Befehl, um die Domain Name System (DNS) – Servern. dig ist die Abkürzung für Domain Information Groper. Mit dig können Sie Abfragen DNS-Server für Informationen über verschiedene DNS-Datensätze, einschließlich host-Adressen, mail-Austausch, name-Server und Verwandte Informationen. Es war beabsichtigt, ein tool für die Diagnose von DNS-Probleme. Jedoch, Sie können es verwenden, zu stöbern und erfahren Sie mehr über die DNS, das ist eine der zentralen Systeme, die halten, internet-routing-Verkehr.

Das internet nutzt internet-Protokoll (IP) – Adressen zu identifizieren, “Standorte”, um das web, sondern die Menschen verwenden Sie domain-Namen. Wenn Sie einen domain-Namen in eine Anwendung, wie ein web-browser oder SSH-client, etwas zu übersetzen hat aus dem domain-Namen, um die aktuelle IP-Adresse. Dies ist, wo der Domain-Name-System kommt in.

Wenn Sie einen Domänennamen verwenden, die mit jedem internet-fähigen Programm, Ihre lokalen router nicht lösen können (es sei denn es ist im Cache eine Vorherige Anforderung). So, der router Abfragen, die entweder von Ihrem Internet Service Provider (ISP) DNS-server, oder jede andere, die Sie konfiguriert haben, Ihr system zu verwenden. Diese werden als DNS-Vorläufer-Server.

Wenn der DNS-server vor kurzem den gleichen Wunsch, von jemand anderes auf dem gleichen computer, die Antwort könnte in Ihren cache. Wenn das der Fall ist, es sendet einfach, dass die gleichen Informationen zurück zu Ihrem Programm.

Wenn der DNS-Vorläufer-server nicht finden kann die domain in den cache, dann Kontakte einen der DNS-root-name-server. Ein root-server wird nicht halten, die Informationen, die zum auflösen von Domänennamen in IP-Adressen, aber es wird halten Sie Listen von Servern, die helfen können, mit Ihrer Anfrage.

Der root-server sieht das bei den top-level-domain, auf die Ihre domain-Namen gehört, wie .COM .ORG .CO.UK, und so weiter. Es sendet dann eine Liste der top-level-domain-Servern, die mit diesen Arten von domains zurück, um die DNS-Vorläufer-server. Der DNS-Vorläufer-server kann dann seine Anfrage noch einmal, um eine top-level-domain-server.

Die top-level-domain-server sendet die details des autoritativen name server (wo die details der Domäne gespeichert sind) wieder auf die DNS-Vorläufer-server. Der DNS-server fragt dann den autoritativen name-server, der das hosten der zone der Domäne, in der Sie ursprünglich eingegeben hat, in Ihrem Programm. Die maßgeblichen name-server sendet die IP-Adresse zurück an den DNS-server, die wiederum sendet es an Sie zurück.

Installation Graben

Graben war bereits installiert auf unserem Ubuntu 18.04 und Fedora 30 Computer. Allerdings mussten wir, um es zu installieren auf dem Manjaro 18.04 computer mit dem folgenden Befehl:

sudo pacman -Sy bind-tools

Erste Schritte mit Graben

In unserem ersten Beispiel werden wir die Rückkehr der IP-Adressen im Zusammenhang mit einem domain-Namen. Häufig werden mehrere IP-Adressen zugeordnet sind, eine einzige domain-Namen. Dies geschieht oft, wenn Loadbalancing verwendet wird, zum Beispiel.

Wir verwenden die +kurze Abfrage-option, wie unten gezeigt, die uns eine knappe Antwort:

Graben howtogeek.com +kurz

Alle IP-Adressen im Zusammenhang mit der howtogeek.com domain aufgeführt sind, für uns. Am anderen Ende des Spektrums, wenn wir nicht mit der ” + ” short query-option, die Ausgabe ist sehr ausführlich.

Also, wir geben Sie den folgenden, um Rohr durch weniger:

Graben howtogeek.com | weniger

Der output ist in weniger, wie unten gezeigt.

Hier ist die vollständige Liste:

; <<>> DiG 9.11.3-1ubuntu1.11-Ubuntu <<>> howtogeek.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 12017
;; Fahnen: qr rd ra; QUERY: 1, ANTWORT: 4, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; FRAGE-ABSCHNITT:
;howtogeek.com. IN EINEM

;; ANTWORT-ABSCHNITT:
howtogeek.com. 3551 IN EINEM 151.101.194.217
howtogeek.com. 3551 IN EINEM 151.101.130.217
howtogeek.com. 3551 IN EINEM 151.101.66.217
howtogeek.com. 3551 IN EINEM 151.101.2.217

;; Query time: 0 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Sun Mar 22 07:44:37 CEST 2020
;; MSG SIZE rcvd: 106

Let ‘ s sezieren, dass Stück für Stück.

Header

Zuerst lassen Sie uns nehmen einen Blick an haben wir in der Kopfzeile:

; <<>> DiG 9.11.3-1ubuntu1.11-Ubuntu <<>> howtogeek.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 12017
;; Fahnen: qr rd ra; QUERY: 1, ANTWORT: 4, AUTHORITY: 0, ADDITIONAL: 1

Nun, hier ist, was all das bedeutet:

Opt Pseudosection

Weiter sehen wir die folgenden in der Opt Pseudosection:

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494

Lassen Sie uns brechen, dass nach unten:

Frage Abschnitt

In den Frage-Abschnitt, sehen wir das folgende:

;; FRAGE-ABSCHNITT:
;howtogeek.com. IN EINEM

Hier ist, was das bedeutet:

– Antwort-Sektion

Die Antwort Abschnitt enthält die folgenden vier Antworten, die wir erhielten vom DNS-server:

howtogeek.com. 3551 IN EINEM 151.101.194.217
howtogeek.com. 3551 IN EINEM 151.101.130.217
howtogeek.com. 3551 IN EINEM 151.101.66.217
howtogeek.com. 3551 IN EINEM 151.101.2.217

Hier ist, was diese Antworten bedeuten:

Statistik Sektion

Statistik ist der Letzte Abschnitt, und enthält die folgenden Informationen:

;; Query time: 0 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Sun Mar 22 07:44:37 CEST 2020
;; MSG SIZE rcvd: 106

Hier ist, was wir haben:

Als Selektive

Sie nicht haben, um sich für die beiden Extreme der schmallippig und geschwätzig. Der dig-Befehl ermöglicht es Ihnen, selektiv ein-oder ausschließen Abschnitte aus den Ergebnissen.

Die folgende Abfrage Optionen entfernen Sie den Abschnitt von den Ergebnissen:

Die +noall-Abfrage-option ist in der Regel kombiniert mit einer von oben auf einen Abschnitt umfassen, in der die Ergebnisse. Also, anstatt eine lange Reihe von Abfrage-Optionen zu deaktivieren mehrere Abschnitte, die Sie verwenden können +noall, schalten Sie Sie alle Weg.

Sie können dann nutzen Sie das folgende inclusive-Abfrage-Optionen, um wiederum diejenigen, die Sie sehen wollen, wieder auf:

Wir geben im folgenden eine Anfrage zu stellen und schließen Sie die Kommentar-Zeilen:

Graben howtogeek.com +nocomments

Wenn wir die +noall-Abfrage-option auf seine eigene, wie unten dargestellt, werden wir nicht bekommen, eine nützliche Ausgabe:

Graben howtogeek.com +noall

Wir können selektiv fügen Sie die Abschnitte, die wir sehen wollen. Das hinzufügen der Antwort-Abschnitt, geben wir die folgenden:

Graben howtogeek.com +noall +answer

Wenn wir geben Sie die folgenden einschalten +stats, wir sehen auch die Statistiken-Abschnitt:

Graben howtogeek.com +noall +answer +stats

Die +noall +answer Kombination ist sehr Häufig eingesetzt. Sie können hinzufügen, andere Abschnitte der Befehlszeile als erforderlich. Wenn Sie möchten, um zu vermeiden, Eingabe +noall +answer auf der Befehlszeile jedes mal, wenn Sie Graben, Sie können Sie in eine Konfigurationsdatei namens “.digrc.” Es befindet sich in Ihrem home-Verzeichnis.

Wir geben Sie den folgenden, um eine zu erstellen mit echo:

echo “+noall +answer” > $HOME/.digrc

Wir können dann geben Sie den folgenden zu überprüfen sein Inhalt:

cat .digrc

Diese beiden Optionen werden jetzt angewendet werden für alle künftigen Verwendungen, von Graben, wie unten dargestellt:

Graben ubuntu.org
Graben linux.org
Graben github.com

Dieser Graben Konfigurations-Datei wird in den restlichen Beispielen in diesem Artikel.

DNS-Einträge

Die zurückgegebenen Informationen, um Ihre dig-Anfragen gezogen wird aus verschiedenen Arten von Datensätzen gehalten auf dem DNS-server. Es sei denn, wir bitten für etwas anderes, Graben, fragt die Eine (Adress -) Datensatz. Im folgenden werden die Arten von Datensätzen Häufig verwendet, mit dig:

Angabe der Ein record-Typ nicht ändern, dass die Standard-Aktion, das ist eine Abfrage der Adresse aufzeichnen und abrufen der IP-Adresse, wie unten dargestellt:

Graben redhat.com Ein

Abfrage von mail-exchange-Datensätze verwenden wir die folgenden MX-Flagge:

Graben yahoo.com MX

Die name-server-flag gibt die folgenden Namen der root-name-Servern im Zusammenhang mit der top-level-domain:

Graben fedora.com NS

Für die Abfrage der start of authority-record, geben wir die folgende SOA-Flagge:

Graben manjaro.com SOA

Das TTL flag wird uns die Zeit zu Leben, für die Daten in den DNS-server cache. Wenn wir eine Reihe von Anfragen, die wir sehen, die time-to-live zu reduzieren, um nichts, und dann springt zurück zu seinem Anfangswert.

Wir geben Sie den folgenden:

Graben usa.gov TTL

Zu sehen, dass der text records, wir geben das TX-flag:

Graben usa.gov TXT

Die Angabe der DNS-Server

Wenn Sie verwenden möchten ein bestimmten DNS server für Ihre Anfrage nutzen Sie das at-Zeichen ( @ ), um es zu übergeben, um zu Graben, wie ein command-line-parameter.

Mit der Standard-DNS-server (siehe unten), Graben Sie verweist auf die lokalen caching-stub-resolver auf 127.0.0.53.

Graben usa.gov +stats

Nun, wir geben Sie den folgenden, um der Nutzung von Google-public-DNS-server auf 8.8.8.8:

dig @8.8.8.8 usa.gov +stats

Mittels dig mit Mehreren Domains

Wir passieren können mehrere Domänen zu Graben, auf der Kommando-Zeile, wie unten gezeigt:

Graben ubuntu.org fedora.org manjaro.com

Wenn Sie regelmäßig eine Reihe von domains, können Sie speichern Sie in einer text-Datei und übergeben Sie es zu Graben. Alle Domänen in der Datei überprüft werden wiederum.

Unsere Datei heißt “domains.txt.” Wir verwenden cat, um seinen Inhalt anzuzeigen, und dann gehen Sie zu Graben, mit der Option-f (file) die option. Wir geben Sie den folgenden:

Katze domains.txt
Graben -f domains.txt

Reverse-DNS-Lookups

Wenn Sie eine IP-Adresse haben und wissen wollen, wo es geht, Sie können versuchen, eine reverse-DNS-lookup. Wenn es behebt einen server registriert einen DNS-server, die Sie vielleicht in der Lage sein, um herauszufinden, seine Domäne.

Ob Sie können, hängt von der Anwesenheit von ein PTR-Eintrag (zeigereintrag). PTRs eine IP-Adresse aufzulösen, um einen vollständig qualifizierten domain-Namen. Allerdings, denn diese sind nicht verbindlich, Sie sind nicht immer auf eine domain.

Mal sehen, ob wir herausfinden können, wo die IP-Adresse 209.51.188.148 nimmt uns mit. Wir geben die folgende, mit der -x (reverse-lookup) – option:

dig-x 209.51.188.148

Presto! Die IP-Adresse aufgelöst wird gnu.org.

Denn ein PTR ist ein DNS-Datensatz, und wir wissen, dass Graben kann-Anforderung angegebene DNS-Einträge, könnten wir nicht einfach Fragen, Graben zum abrufen der PTR für uns? Ja, wir können, aber es dauert ein bisschen mehr Arbeit.

Haben wir die IP-Adresse in umgekehrter Reihenfolge und tack .in-addr.arpa auf das Ende, wie unten dargestellt:

Graben ptr-148.188.51.209.in-addr.arpa

Wir bekommen das gleiche Ergebnis; es dauerte nur ein bisschen mehr Aufwand.

Können Sie Graben?

Wir alle nutzen das internet täglich, und wissbegierige habe mich oft gefragt, wie die Magie passiert, wenn wir den Namen einer website in einem browser. Mit dig können Sie erforschen die Prozesse der Netzwerk-zaubern.

LESEN SIE WEITER

Exit mobile version