DNS Reverse Mapping

Inverse queries

O interogare inversă mapează un RR pentru un domeniu. Un exemplu de acest gen de query ar fi: “Care este numele de domeniu pentru acestă înregistrare de tip MX?”. Totuşi acest fel de interogări au fost întotdeauna un serviciu opţional pentru DNS, iar name serverele puteau livra un răspuns NOTIMP (Not implemented). Prima oară eşti tentat să zici că acest fel de interogări află hostul în funcţie de un IP. Dar acest proces de fapt se cheamă reverse mapping sau reverse lookup şi foloseşte interogări recursive şi iterative cu un domeniu special IN-ADDR.ARPA.

DNS Reverse Mapping

Până acum am vorbit despre interogări normale de tipul “îţi dau numele hostului, află-mi IP-ul”, dar trebuie să discutăm şi despre cele de genul “îţi dau IP-ul, află-mi hostul”. Aceste tipuri de queries sunt folosite din motive de securitate. De exemplu, multe sisteme de mailing folosesc acest feature  de reverse mapping pentru a asigura o atentificare corectă.
Astfel, pentru a putea implementa reverse mapping-ul folosinf interogări normale recursive şi nerecursive (iterative), băieţii au definit un domeniu special numit IN-ADDR.ARPA.

Trebuie să discutăm un pic despre acest domeniu.

Structura normală a unui nume de domeniu porneşte cu de la “root”. Un nume de domeniu este scris de la stânga la dreapta, dar structura acestuia se desfăşoara de la dreapta la stânga: nume_de_domeniu = www.alexbobica.com
Cea mai înaltă “structură de stat” din domeniul de mai sus este TLD-ul (Top-Level Domain) .com; următoarea în grad este .alexbobica (Second-Level Domain); lebăda cea slabă şi urâtă este www, care de fapt reprezintă numele hostului şi este definit într-un fişier zonă.
Pentru a putea folosi o adresă IPv4 într-o interogare trebuie să o traducem într-un nume de domeniu. Să zicem că avem următorul IP: 192.168.100.15. Acest IP defineşte o adresă de host, 15, în reţeaua 192.168.100.x. În acest caz, cea mai importantă parte se află la stânga şi nu la dreapta, adică 192.
Soluţia este simplă. Pentru a creea un nume de domeniu, inversează ordinea adresei şi foloseşte ca şi SLD partea cu IN-ADDR iar ca TLD partea cu ARPA. Ce rezultă?

IPv4: 192.168.100.15
Network: 192.168.100 – omitem hostul (15)
Inversul network-ului: 100.168.192
Adăugăm în domeniul IN-ADDR.ARPA: 100.168.192.IN-ADDR.ARPA

Am terminat? Nu. Mai trebuie să creăm şi un fişier zonă care să descrie toate hosturile folosind RR-uri de tip PTR. Fişierul zonă va arăta ceva de genul:

$TTL  2d
$ORIGIN  100.168.192.IN/ADDR.ARPA
@      IN      SOA      ns1.alexbobica.com. hostmaster.alexbobica.com.  (
2009012700 ; sn = serial number
12h             ; refresh
15m            ; retry
3w              ; expiry
2h              ; min = minimum
)
IN      NS      ns1.alexbobica.com.
IN      NS      ns2.blogoperativa.com.
5     IN      PTR     ns1.alexbobica.com.
15   IN      PTR     www.alexbobica.com

That’s all folks…for now! To be continued! :-)

Post a Response

Creative Commons License
This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Romania License.