Wie die dig-Befehl unter Linux

0
291
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:

  • Erste Zeile: version von dig und die Domäne abgefragt wurde.
  • Globale Optionen: Wie wir sehen werden, können Sie Graben, um Abfragen an mehrere domains gleichzeitig. Diese Linie zeigt die Optionen, die angewendet wurden, um alle domain-Abfragen. In unserem einfachen Beispiel, es wurde nur die Standard +cmd (Befehl) option.
  • Opcode: Query: Dies ist die Art von Betrieb, die angefordert wurde die, in diesem Fall, war eine Abfrage. Dieser Wert kann auch iquery für eine inverse Abfrage oder status, wenn Sie gerade die Prüfung der Zustand des DNS-system.
  • Status: Noerror: Es gab keine Fehler und der Antrag wurde ordnungsgemäß aufgelöst.
  • ID: 12017: Diese random-ID verknüpft die request-und response zusammen.
  • Flags: qr rd ra: Diese stehen für Abfragen, Rekursion gewünscht wird, und die Rekursion zur Verfügung. Rekursion ist eine form des DNS-lookup (der andere ist ein iterativer). Möglicherweise sehen Sie auch AA, das steht für verlässliche Antwort, im Sinne einer Autoritativen Name-Server, sofern die Antwort.
  • Abfrage: 1: Die Anzahl der Anfragen, die in dieser Sitzung, das war eine.
  • Antwort: 4: Die Anzahl der Antworten, die in dieser Antwort, die ist vier.
  • Autorität: 0: Die Anzahl der Antworten kam von einem Autoritativen Name-Server, die null war in diesem Fall. Die Antwort zurückgegeben wurde aus dem cache eines DNS-Vorläufer-server. Es wird keine maßgebliche Abschnitt in der Antwort.
  • Zusätzliche Informationen: 1: Es ist ein Teil von zusätzlichen Informationen. (Seltsamerweise nichts aufgeführt ist, es sei denn, dieser Wert ist zwei-oder höher.)

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:

  • EDNS: version: 0: Die version des Extension-System für DNS verwendet wird. EDNS überträgt die erweiterten Daten und flags durch die Erweiterung der Größe des UDP (User Datagram Protocol) – Pakete. Dies wird durch eine variable Größe der fahne.
  • flags: Keine flags verwendet werden.
  • udp: 4096: Der UDP-Paketgröße.

Frage Abschnitt

In den Frage-Abschnitt, sehen wir das folgende:

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

Hier ist, was das bedeutet:

  • howtogeek.com: Der domain-name, den wir Abfragen.
  • IN: Wir machen eine internet-Klasse-Abfrage.
  • A: Sofern wir nichts anderes angeben, Graben Anfrage ein A (Adress) – record aus dem DNS-server.

– 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:

  • 3551: Dies ist die Time to Live (TTL), mit einem 32-bit-Ganzzahl mit Vorzeichen, die hält das Zeit-Intervall für die ein Eintrag zwischengespeichert werden können. Wenn es abläuft, müssen die Daten verwendet werden, in einer Antwort auf eine Anfrage bis es aktualisiert wurde, indem Sie den DNS-server.
  • IN: Wir haben eine Internet-Klasse-Abfrage.
  • A: Wir fragten nach Einem a-record aus dem DNS-server.

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:

  • Query Time: 0 msec: die Zeit, Die es dauerte, bis die Reaktion.
  • SERVER: 127.0.0.53#53(127.0.0.53): Die IP-Adresse und port-Nummer des DNS-server geantwortet hat. In diesem Fall, es zeigt auf das lokale caching-stub-resolver. Dieser leitet DNS-Anfragen auf welcher upstream-DNS-Server konfiguriert sind. Auf der Manajro test-computer, der die Adresse hier aufgeführt wurde 8.8.8.8#53, die Google public DNS-Dienst.
  • WANN: Sun Mar 22 07:44:37 EDT 2020: Wenn der Antrag gestellt wurde.
  • MSG SIZE rcvd: 106: Die Größe der Nachricht von dem DNS-server.

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:

  • +nocomments: nicht zeigen Kommentarzeilen.
  • +noauthority: Don ‘ T show der authority-Abschnitt.
  • +noadditional: zeigen nicht die zusätzlichen Abschnitt.
  • +nostats: zeigen nicht die Statistik-Sektion.
  • +noanswer: zeigen nicht den Antwort-Abschnitt.
  • +noall: nicht alles zeigen!

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:

  • +Kommentare: Kommentar Anzeigen Linien.
  • +Behörde:die Show der authority-Abschnitt.
  • +zusätzlich: Anzeigen des zusätzlichen Abschnitt.
  • +Statistik: Zeigt die Statistik-Sektion.
  • +Antwort: Zeigen Sie den Antwort-Abschnitt.
  • +alle: alles Zeigen.

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:

  • Ein Datensatz: Links die domain auf eine IP-version-4-Adresse.
  • MX-Record: Mail-exchange-Datensätze direkt E-Mails an domains auf die korrekte E-mail-server.
  • NS-Record: Name server records delegieren einer domain (oder subdomain) zu einer Gruppe von DNS-Servern.
  • TXT: Text-Datensätze speichern von text-basierte Informationen über die domain. In der Regel werden Sie verwendet werden könnten, zu unterdrücken, gefälscht oder gefälschte E-Mail.
  • SOA: Start of authority records halten kann eine Menge von Informationen über die domain. Hier finden Sie die primary-name-server, die verantwortliche Partei, einen Zeitstempel für änderungen, die Häufigkeit der zone wird aktualisiert, und eine Reihe von Fristen für Wiederholungen und verlässt.
  • TTL: Time to live, ist eine Einstellung für jeden DNS-Datensatz, der angibt, wie lange ein DNS-Vorläufer-server ist erlaubt-cache jede DNS-Abfrage. Wenn die Zeit abläuft, müssen die Daten aktualisiert werden, für nachfolgende Anfragen.
  • ALLE: Das sagt Graben zurück jede Art von DNS-Datensatz, der es kann.

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

  • › Wie Spielen Lokale Multiplayer-Spiele Online mit Steam Remote Play Zusammen
  • › Wie Schreibt man einen Apple II BASIC-Programm in Ihrem Web-Browser
  • › Warum Sollten Sie Kaufen die 2020 MacBook Air
  • › Wie zu Beheben Ihre Tastatur Eingeben von Zahlen Anstelle von Buchstaben
  • › Wie Bauen Sie Ihre Eigene Cloud File Sync mit Nextcloud