Articole
    Home » Interogări DNS simplificate: dig, host și nslookup explicate
Interogări DNS simplificate: dig, host și nslookup explicate

Interogări DNS simplificate: dig, host și nslookup explicate

Despre acest articol

Dacă ai ajuns aici, probabil ai (sau vei avea) nevoie să dezlegi mistere DNS: de ce nu merge domeniul, cine are mailul, ce IP are serverul X, de ce nu se propagă recordurile, și lista continuă. Acest articol e pentru toți cei care administrează servere (cloud, Docker, VPS, server dedicat, etc.), dezvoltatori, devops și, în general, pentru cei care vor să aibă control asupra infrastructurii lor. Vom explora interogările DNS cu trei unelte legendare: dig, host și nslookup – explicate pe românește, cu exemple, mituri, hărți de decizie și hack-uri utile.

Dacă vrei să-ți simplifici viața de sysadmin sau să găsești rapid răspunsuri la probleme DNS, citește mai departe.

Hook – O situație dramatică

Imaginează-ți: tocmai ai migrat un site pe un VPS nou (sau server dedicat, vezi aici), ai schimbat DNS-urile, totul ar trebui să meargă… dar clientul te sună isteric: „Site-ul nu merge, emailul nu se livrează, ce-ai făcut?!”

Respiri adânc, deschizi terminalul și știi că fără interogări DNS rapide și corecte, ești ca un pilot fără radar. Aici intervin dig, host și nslookup – armele tale secrete pentru a descoperi rapid ce se întâmplă cu domeniile și serverele tale.

De ce contează interogările DNS?

  • Depanare instant – vezi dacă DNS-ul s-a propagat, ce IP răspunde, dacă recordurile MX/SRV/TXT sunt corecte.
  • Securitate – identifici rapid spoofing, DNS hijacking, setări greșite care pot lăsa portițe deschise.
  • Automatizare și monitorizare – scripturi care verifică dacă DNS-ul e OK după deploy/migrări/actualizări.
  • Optimizare – vezi dacă CDN-ul, load balancer-ul sau serviciile de email funcționează corect.

Cum funcționează DNS și interogările?

DNS (Domain Name System) e cartea de telefoane a Internetului. Tu tastezi root.md, DNS-ul caută și îți spune „sună la IP-ul X”. Totul se bazează pe interogări și răspunsuri, ca un joc de ping-pong între client și serverele DNS.

Algoritmul:

  1. Clientul întreabă: „Care-i IP-ul pentru root.md?”
  2. Rezolvatorul DNS întreabă serverele rădăcină, apoi pe cele autoritare, până găsește răspunsul.
  3. Rezultatul e stocat (cache) pentru un timp (TTL), apoi procesul se repetă la nevoie.

Tipuri de interogări:

  • A – adresa IPv4
  • AAAA – adresa IPv6
  • CNAME – alias
  • MX – servere de email
  • TXT – informații adiționale (SPF, verificări, etc.)
  • NS – nameservere
  • SRV – servicii specifice (VoIP, etc.)

dig, host, nslookup – Cum și când?

Trei unelte, trei personalități. Toate fac cam același lucru, dar fiecare are stilul ei.

1. dig – The Geeky Detective

  • Ultra-detalizat, arată tot ce vrei (și ce nu vrei) să știi.
  • Perfect pentru scripturi și debugging avansat.
  • Ușor de citit pentru oameni obișnuiți cu terminalul.

2. host – The Minimalist

  • Rapid, simplu, afișează doar ce-ți trebuie.
  • Ideal pentru un „check” rapid, fără multă vorbă.
  • Potrivit pentru taskuri repetitive sau simple.

3. nslookup – The Old Schooler

  • Clasic, există pe orice sistem (inclusiv Windows).
  • Interfață interactivă, prietenos pentru începători.
  • Nu arată la fel de mult ca dig, dar e omniprezent.

Setup rapid: Ghid pas cu pas

Nu trebuie să instalezi chestii complicate. Pe majoritatea distribuțiilor Linux, dig și host vin cu pachetul dnsutils sau bind-utils. nslookup e aproape mereu deja acolo.

Instalare

  • Debian/Ubuntu: sudo apt-get install dnsutils
  • RedHat/CentOS/Fedora: sudo yum install bind-utils
  • MacOS (Homebrew): brew install bind
  • Windows: nslookup e deja acolo. Pentru dig, vezi instrucțiuni ISC.

Comenzi de bază

  • dig: dig root.md
  • host: host root.md
  • nslookup: nslookup root.md

Cum verifici un record specific?

  • dig: dig MX root.md
  • host: host -t MX root.md
  • nslookup: nslookup -query=MX root.md

Vrei să folosești un DNS anume?

  • dig: dig @8.8.8.8 root.md
  • host: host root.md 8.8.8.8
  • nslookup: nslookup root.md 8.8.8.8

Extragere doar adresa IP (output curat)

  • dig: dig +short root.md
  • host: host root.md (afișează doar IP-ul)
  • nslookup: outputul e mai „verbal”, dar poți folosi grep pentru filtrare.

Exemple practice și cazuri

Exemplu pozitiv:

Ai mutat un domeniu pe un VPS nou. Vrei să vezi dacă DNS-ul s-a propagat peste tot:

dig @1.1.1.1 root.md
dig @8.8.8.8 root.md

Dacă ambele returnează același IP, ești pe drumul cel bun.

Exemplu negativ:

Clientul te sună: emailurile nu ajung. Verifici:

dig MX root.md

Vezi că recordul MX nu e setat corect, sau lipsește. Rezolvi rapid și toată lumea e fericită.

Comparatie comică – Alege-ți arma

  • dig„Sherlock Holmes al DNS-ului”: analizează tot, nu scapă niciun detaliu.
  • host„Ninja-ul tăcut”: lovește repede, dispare și nu lasă urme.
  • nslookup„Bunicelul cu experiență”: știe de toate, dar uneori nu se grăbește.

Mini-glosar cu definiții pe înțeles

  • DNS: Sistemul care traduce nume de domenii în adrese IP.
  • Rezolvator: Server sau software care caută răspunsuri DNS pentru tine.
  • Nameserver: Server care deține și răspunde pentru zona DNS a unui domeniu.
  • TTL: „Cât timp să țină minte răspunsul” (Time To Live).
  • Zone file: Fișierul cu toate recordurile DNS ale unui domeniu.
  • MX: Mail eXchange – cine primește mailurile pentru domeniu.
  • TXT: Text, folosit pentru SPF, DKIM, verificări Google, etc.

Comparație comică – Alege-ți arma

Imaginează-ți că DNS-ul e o pădure întunecată.

  • dig – E lanternă cu laser, vezi și ce nu vrei să vezi, dar s-ar putea să orbești veverițele.
  • host – E busola simplă, te duce direct la țintă, dar dacă vrei să cauți comori ascunse, nu te ajută prea mult.
  • nslookup – E harta veche de piele, are toate traseele, dar uneori trebuie să o întorci pe toate părțile.

Mituri, greșeli frecvente și alte unelte

  • Mit: „DNS-ul se propagă instant.”
    Fals. TTL-ul și cache-ul pot întârzia propagarea chiar și câteva ore (sau zile!).
  • Mit: „Toate răspunsurile DNS sunt la fel peste tot.”
    Fals. Diferite rezolvatoare pot avea răspunsuri diferite, mai ales la CDN-uri, GeoDNS, etc.
  • Greșeală frecventă: Nu specifici DNS-ul de la care vrei răspunsul. Fii explicit cu @8.8.8.8 (sau alt nameserver).
  • Alternativă: drill (pentru fani BSD sau alternative minimaliste).
  • Alte unelte: dnschecker.org (pentru verificare globală, web-based).

Flowchart – Ce unealtă folosesc?

Vrei doar IP-ul rapid? 
        ⬇️
     Da —> host/dig +short
     |
    Nu
     |
Vrei detalii avansate, TTL, autoritate, trace?
        ⬇️
     Da —> dig
     |
    Nu
     |
Pe Windows? 
        ⬇️
     Da —> nslookup
     |
    Nu
     |
Ești pe un sistem minimal? 
        ⬇️
     Da —> host
     |
    Nu
     |
Vrei să scrii scripturi automate?
        ⬇️
     Da —> dig +short
     |
    Nu
     |
Oricare merge! 🙂

Statistici, facts și hacks creative

  • Fapt: Google DNS (8.8.8.8) și Cloudflare (1.1.1.1) răspund la milioane de interogări DNS pe secundă.
  • Statistică: Peste 70% din problemele de „site nu merge” se dovedesc a fi probleme DNS, nu de server efectiv.
  • Hack: dig +trace root.md îți arată drumul complet pe care îl face interogarea, de la root la serverul final.
  • Trick: Poți verifica propagarea recordurilor TXT pentru SPF/DKIM cu dig TXT root.md sau host -t TXT root.md.
  • Unconvențional: Folosește dig pentru a testa latența DNS între servere din scripturi de monitorizare.

Scripturi de automatizare

Vrei să verifici din cron dacă domeniul tău răspunde corect? Uite un exemplu rapid:


#!/bin/bash
DOMAIN="root.md"
IP_EXPECTED="185.65.202.14"
IP_REAL=$(dig +short $DOMAIN @8.8.8.8)
if [ "$IP_REAL" != "$IP_EXPECTED" ]; then
echo "DNS ALERT: $DOMAIN răspunde cu $IP_REAL, dar mă așteptam la $IP_EXPECTED"
fi

Sau, pentru a verifica recordul MX:


dig +short MX root.md | grep "mail.root.md." || echo "MX lipsă sau incorect!"

Poveste: Scenă de admin

Era o dată un admin obosit, la ora 3 dimineața, care primește un ping: „Site-ul clientului Y nu merge!” Intră pe server, totul e OK, dar site-ul nu e accesibil din unele țări. Scoate din teacă dig și descoperă că un nameserver vechi încă răspunde cu un IP greșit. Cu dig @ns1.vechi.ro root.md găsește problema, actualizează zona, și în 15 minute totul e back online. Clientul nici nu știe cât de aproape a fost de un dezastru de PR.

Concluzie & Recomandări

Interogările DNS nu trebuie să fie un mister. Cu dig, host și nslookup ai la îndemână instrumente simple, rapide și versatile, fie că administrezi un VPS, un cluster Docker, sau un server dedicat.

  • Folosește-le zilnic – devin naturale ca „ls” sau „cat”.
  • Automatizează verificările – economisești timp și eviți crizele de la 3AM.
  • Compară răspunsurile de la mai multe nameservere – descoperi probleme de propagare înaintea clienților tăi.
  • Nu crede tot ce vezi la prima interogare – verifică, dublează, folosește +trace și compară cu alte unelte.

Dacă ai nevoie de infrastructură stabilă pentru experimentele și proiectele tale, vezi ofertele de VPS sau server dedicat și pune-ți la treabă cunoștințele DNS cu adevărat!

Și, cel mai important: întreabă mereu DNS-ul înainte de a da restart la server. S-ar putea ca răspunsul să fie mult mai simplu decât crezi.

Leave a reply

Your email address will not be published. Required fields are marked