Cum să utilizați comanda dig pe Linux

Să disecăm acea bucată cu bucată.

; > DiG 9.11.3-1ubuntu1.11-Ubuntu > wdzwdz.com ;; opțiuni globale: +cmd ;; Am răspuns: ;; ->>HEADER

Acum, iată ce înseamnă toate acestea:

Prima linie: versiunea de dig și domeniul care a fost interogat.
Opțiuni globale: după cum vom vedea, puteți utiliza dig pentru a interoga mai multe domenii simultan. Această linie arată opțiunile care au fost aplicate tuturor interogărilor de domeniu. În exemplul nostru simplu, a fost doar opțiunea implicită +cmd (comandă).
Opcode: Query: Acesta este tipul de operație care a fost solicitată și care, în acest caz, a fost o interogare. Această valoare poate fi, de asemenea, o interogare inversă sau o stare dacă doar testați starea sistemului DNS.
Stare: Nicio eroare: Nu au existat erori și solicitarea a fost rezolvată corect.
ID: 12017: Acest ID aleatoriu leagă cererea și răspunsul.
Indicatori: qr rd ra: Acestea reprezintă interogare, recursivitate dorită și recursivitate disponibilă. Recursiunea este o formă de căutare DNS (cealaltă este iterativă). Este posibil să vedeți, de asemenea, AA, care înseamnă Răspuns Autorizat, ceea ce înseamnă că un Server de Nume Autorizat a furnizat răspunsul.
Interogare: 1: numărul de interogări din această sesiune, care a fost unul.
Răspuns: 4: numărul de răspunsuri din acest răspuns, care este patru.
Autoritate: 0: numărul de răspunsuri care au venit de la un server de nume autorizat, care a fost zero în acest caz. Răspunsul a fost returnat din memoria cache a unui server precursor DNS. Nu va exista nicio secțiune autorizată în răspuns.
Adițional: 1: Există o informație suplimentară. (În mod ciudat, nimic nu este listat decât dacă această valoare este două sau mai mare.)

Optează Pseudosecția

În continuare, vedem următoarele în Pseudosecția Opt:

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

Să descompunem asta:

EDNS: versiunea 0: versiunea de Sistem de extensie pentru DNS asta se foloseste. EDNS transmite date extinse și steaguri prin extinderea dimensiunii Protocolul de datagramă utilizator (UDP) pachete. Acest lucru este indicat de un steag de dimensiune variabilă.
steaguri: Nu sunt utilizate steaguri.
udp: 4096: dimensiunea pachetului UDP.

Secțiunea de întrebări

În secțiunea Întrebări, vedem următoarele:

;; QUESTION SECTION:
;wdzwdz.com. IN A

Iată ce înseamnă asta:

wdzwdz.com: numele de domeniu pe care îl interogăm.
IN: Facem o interogare de clasă de internet.
R: Dacă nu specificăm altfel, dig va solicita o înregistrare A (adresă) de la serverul DNS.

Secțiunea de răspunsuri

Secțiunea Răspuns conține următoarele patru răspunsuri pe care le-am primit de la serverul DNS:

wdzwdz.com. 3551 IN A 151.101.194.217
wdzwdz.com. 3551 IN A 151.101.130.217
wdzwdz.com. 3551 IN A 151.101.66.217
wdzwdz.com. 3551 IN A 151.101.2.217

Iată ce înseamnă aceste răspunsuri:

  Cum să-ți clonezi instalarea Linux cu Clonezilla

3551: Acesta este Time to Live (TTL), un întreg semnat pe 32 de biți care deține intervalul de timp pentru care o înregistrare poate fi stocată în cache. Când expiră, datele trebuie utilizate într-un răspuns la o solicitare până când sunt reîmprospătate de serverul DNS.
IN: Am făcut o interogare de clasă de Internet.
R: Am cerut o înregistrare A de la serverul DNS.

Sectiunea Statistici

Statisticile este secțiunea finală și conține următoarele informații:

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

Iată ce avem:

Timp de interogare: 0 ms: Timpul necesar pentru a primi răspunsul.
SERVER: 127.0.0.53#53(127.0.0.53): adresa IP și numărul portului serverului DNS care a răspuns. În acest caz, indică soluția locală de stocare în cache. Aceasta redirecționează cererile DNS către oricare dintre serverele DNS din amonte sunt configurate. Pe computerul de testare Manajro, adresa listată aici era 8.8.8.8#53, care este Serviciul DNS public Google.
CÂND: Duminică, 22 mar 07:44:37 EDT 2020: Când a fost făcută cererea.
MSG SIZE rcvd: 106: Dimensiunea mesajului primit de la serverul DNS.

Fiind selectiv

Nu trebuie să vă mulțumiți cu cele două extreme: buzele strânse și vorbele. Comanda dig vă permite să includeți sau să excludeți selectiv secțiuni din rezultate.

Următoarele opțiuni de interogare vor elimina acea secțiune din rezultate:

+nocomments: Nu afișa linii de comentarii.
+noauthority: Nu afișați secțiunea de autoritate.
+noadditional: Nu afișați secțiunea suplimentară.
+nostats: nu afișați secțiunea de statistici.
+noanswer: Nu afișați secțiunea de răspuns.
+noall: Nu arăta nimic!

Opțiunea de interogare +noall este de obicei combinată cu una dintre cele de mai sus pentru a include o secțiune în rezultate. Deci, în loc să tastați un șir lung de opțiuni de interogare pentru a dezactiva mai multe secțiuni, puteți folosi +noall pentru a le dezactiva pe toate.

Puteți folosi apoi următoarele opțiuni de interogare inclusiv pentru a le reactiva pe cele pe care doriți să le vedeți:

+comments: Afișează rândurile de comentarii.
+authority: Afișează secțiunea de autoritate.
+additional: Afișați secțiunea suplimentară.
+statistici: arată secțiunea statistici.
+răspuns: Afișează secțiunea de răspuns.
+all: Arată totul.

Introducem următoarele pentru a face o solicitare și pentru a exclude rândurile de comentarii:

dig wdzwdz.com +nocomments

The

Dacă folosim opțiunea de interogare +noall pe cont propriu, așa cum se arată mai jos, nu vom obține niciun rezultat util:

dig wdzwdz.com +noall

The

Putem adăuga selectiv secțiunile pe care vrem să le vedem. Pentru a adăuga secțiunea de răspuns, introducem următoarele:

dig wdzwdz.com +noall +answer

The

Dacă introducem următoarele pentru a activa +stats, vom vedea și secțiunea de statistici:

dig wdzwdz.com +noall +answer +stats

The

Combinația +noall +answer este folosită des. Puteți adăuga alte secțiuni la linia de comandă după cum este necesar. Dacă doriți să evitați să tastați +noall +answer pe linia de comandă de fiecare dată când utilizați dig, le puteți pune într-un fișier de configurare numit „.digrc”. Se află în directorul dvs. de acasă.

  Cele mai bune 5 distribuții Linux imuabile și solide

Introducem următoarele pentru a crea unul cu echo:

echo "+noall +answer" > $HOME/.digrc

Putem apoi să tastam următoarele pentru a-i verifica conținutul:

cat .digrc

The comenzile $HOME/.digrc” și „cat .digrc” într-o fereastră de terminal.” width=”646″ height=”122″ >

Aceste două opțiuni vor fi acum aplicate tuturor utilizărilor viitoare ale dig, după cum se arată mai jos:

dig ubuntu.org
dig linux.org
dig github.com

Acest fișier de configurare dig va fi utilizat pentru exemplele rămase din acest articol.

Înregistrări DNS

Informațiile returnate la solicitările dvs. de săpături sunt extrase din diferite tipuri de înregistrări deținute pe serverul DNS. Dacă nu cerem ceva diferit, săpați interogări în înregistrarea A (adresă). Următoarele sunt tipurile de înregistrări utilizate în mod obișnuit cu dig:

O înregistrare: conectează domeniul la o adresă IP versiunea 4.
Înregistrare MX: Schimbul de e-mail înregistrează e-mailurile directe trimise către domenii către serverul de e-mail corect.
Înregistrare NS: înregistrările serverului de nume deleg un domeniu (sau subdomeniu) unui set de servere DNS.
Înregistrare TXT: Înregistrările text stochează informații bazate pe text cu privire la domeniu. De obicei, acestea pot fi folosite pentru a suprima e-mailurile falsificate sau falsificate.
Înregistrare SOA: Începutul înregistrărilor de autoritate poate deține o mulțime de informații despre domeniu. Aici, puteți găsi serverul de nume principal, partea responsabilă, un marcaj de timp pentru modificări, frecvența reîmprospătărilor zonei și o serie de limite de timp pentru reîncercări și abandonuri.
TTL: Timpul de viață este o setare pentru fiecare înregistrare DNS care specifică cât timp unui server precursor DNS îi este permis să memoreze în cache fiecare interogare DNS. La expirarea acestui timp, datele trebuie reîmprospătate pentru solicitările ulterioare.
ANY: Acest lucru îi spune lui Dig să returneze fiecare tip de înregistrare DNS pe care o poate.

Specificarea tipului de înregistrare A nu schimbă acțiunea implicită, care este de a interoga înregistrarea adresei și de a obține adresa IP, după cum se arată mai jos:

dig redhat.com A

The

Pentru a interoga înregistrările schimbului de e-mail, folosim următorul steag MX:

dig yahoo.com MX

The

Steagul serverului de nume returnează următorul nume al serverelor de nume rădăcină asociate domeniului de nivel superior:

dig fedora.com NS

The

Pentru a interoga începutul înregistrării de autoritate, introducem următorul semnal SOA:

dig manjaro.com SOA

The

Steagul TTL ne va arăta timpul de viață pentru datele din memoria cache a serverului DNS. Dacă facem o serie de solicitări, vedem că timpul de viață se reduce la nimic, iar apoi revenim la valoarea sa de pornire.

  Cum se instalează serverul web Caddy pe Linux

Introducem următoarele:

dig usa.gov TTL

The

Pentru a vedea înregistrările text, introducem steag-ul TX:

dig usa.gov TXT

The

Specificarea serverului DNS

Dacă doriți să utilizați un anumit server DNS pentru cererea dvs., puteți utiliza semnul la (@) pentru a-l transmite pentru a săpa ca parametru de linie de comandă.

Cu serverul DNS implicit (a se vedea mai jos), săpați referințe soluția locală de stocare în cache la 127.0.0.53.

dig usa.gov +stats

Acum, introducem următoarele pentru a folosi serverul DNS public Google la 8.8.8.8:

dig @8.8.8.8 usa.gov +stats

The

Utilizarea dig cu mai multe domenii

Putem trece mai multe domenii de săpat pe linia de comandă, după cum se arată mai jos:

dig ubuntu.org fedora.org manjaro.com

The

Dacă verificați în mod regulat un set de domenii, le puteți stoca într-un fișier text și le puteți trece la săpat. Toate domeniile din fișier vor fi verificate pe rând.

Fișierul nostru se numește „domains.txt”. Vom folosi cat pentru a-și arăta conținutul, apoi îl vom trece pentru a săpa cu opțiunea -f (fișier). Introducem următoarele:

cat domains.txt
dig -f domains.txt

The

Căutări inverse DNS

Dacă aveți o adresă IP și doriți să știți unde se duce, puteți încerca o căutare inversă DNS. Dacă se rezolvă la un server înregistrat la un server DNS, s-ar putea să-i puteți afla domeniul.

Dacă poți depinde de prezența unui PTR (înregistrare pointer). PTR-urile rezolvă o adresă IP la a nume de domeniu complet calificat. Cu toate acestea, deoarece acestea nu sunt obligatorii, nu sunt întotdeauna prezente pe un domeniu.

Să vedem dacă putem afla unde ne duce adresa IP 209.51.188.148. Introducem următoarele, folosind opțiunea -x (căutare inversă):

dig -x 209.51.188.148

The

Presto! Adresa IP se rezolvă la gnu.org.

Deoarece un PTR este o înregistrare DNS și știm că dig poate solicita înregistrări DNS specificate, nu am putea să-i cerem doar lui dig să recupereze PTR-ul pentru noi? Da, putem, dar este nevoie de ceva mai multă muncă.

Trebuie să furnizăm adresa IP în ordine inversă și să introducem .in-addr.arpa la sfârșit, așa cum se arată mai jos:

dig ptr 148.188.51.209.in-addr.arpa

The

Obținem același rezultat; a fost nevoie doar de un pic mai mult efort.

Poți să-l sapi?

Cu toții folosim internetul zilnic, iar mințile curioase s-au întrebat adesea cum se întâmplă magia când introducem numele unui site web într-un browser. Cu dig, puteți explora procesele de conjurare a rețelei.