Domain Name System
De Viquipèdia
Capa | Protocols |
Aplicació | DNS, FTP, HTTP, IMAP, IRC, NFS, NNTP, NTP, POP3, SMB/CIFS, SMTP, SNMP, SSH, Telnet, TFTP |
Presentació | ASN.1, MIME, SSL/TLS, XML |
Sessió | NetBIOS, SIP |
Transport | RTP, RTCP, SCTP, SPX, TCP, UDP |
Xarxa | AppleTalk, ARP, IP, IPX, NetBEUI, X.25 |
Enllaç de dades | ATM, Ethernet, Frame Relay, HDLC, PPP, Token Ring, Wi-Fi |
Física | Cable coaxial, Cable de fibra òptica, Cable de parells trenats, Microones, Ràdio, RS-232 |
* segons el model OSI | |
edita |
El Domain Name System o DNS (en català sistema d'anomenament de dominis) és una xarxa global de servidors que tradueix noms de nodes a IPs. Sense ell, tal com funciona avui la xarxa, la navegació seria molt complicada (per no dir impossible).
El DNS ofereix un servei vital a Internet, ja que les xarxes treballen amb IPs per realitzar tasques com l'adreçament o l'encaminament, mentre que per als humans és molt més senzill treballar amb noms, com els que posem a les URLs o a les adreces de correu electrònic.
Per exemple, el servidor de la Viquipèdia té l'adreça IP 207.142.131.203, però amb DNS, es pot utilitzar l'adreça ca.wikipedia.org en comptes d'haver de recordar-se d'aquests números.
[edita] Implementació inicial
Va ser dissenyat inicialment per Paul Mockapetris al 1984 per amainar els problemes d'escalatge que suposava l'ús d'adreces IP (difícils de memoritzar i associar al seu contingut). En una primera aproximació el DNS consistia en un sol arxiu, conegut com taula de host, que era mantingut per l'Stanford Research Institute's Network Information Center (SRI-NIC). El sistema era força simple: quan algú registrava un domini s'afegia a la taula i els administradors dels sistemes havien d'actualitzar la seva versió de la taula via FTP.
Òbviament aquest sistema va quedar obsolet un cop la xarxa va començar a créixer ja que, tot i acomplir els seus objectius, distava molt de ser un mètode eficient de distribució a més de tenir un elevat cost de manteniment. Sense una bona infraestructura pel DNS l'accessibilitat d'Internet quedava força minvada, així que Mockapetris i alguns col·legues van començar a treballar en el sistema actual.
[edita] Implementació actual
La nova implementació del DNS es va pensar ja sobre la natura de la pròpia Internet, cosa que li ha permès mantenir-se fins el dia d'avui: Un sistema de bases de dades distribuïdes, interconnectades, del que cap organització en solitari n'és directament responsable. Donada la seva arquitectura, DNS està preparat per un creixement pràcticament il·limitat. Abans d'analitzar-la cal familiaritzar-se amb el domain name space. Aquesta estructura descriu un arbre de dominis, permetent diferents dominis dins un mateix.
Un servidor DNS es simplement un ordinador corrent programari DNS. Donat que la gran majoria de servidors són UNIX el programari més estès es BIND, tot i que hi ha d'altres grans opcions per aquesta i d'altres plataformes (incloses PC i Mac).
El programari DNS està compost normalment de dues grans parts. Per una banda el servidor de noms, que no deixa de ser una taula que permet fer conversions nom-IP. Per una altra el “resolver”, que s'encarrega de llançar peticions a altres servidors de noms en cas de disposar de la resposta en el propi. Veiem el funcionament amb una mica més de detall:
Quan escrius una URL el navegador envia una petició al servidor DNS més proper. Si aquest ha resolt alguna petició anteriorment referent a aquest mateix domini (dintre d'un període de temps definit per l'administrador, a fi d'evitar que les adreces caduquin) localitza l'IP corresponent a la seva cache i l'envia al navegador. Si el servidor no pot respondre a la petició consulta al servidor immediatament superior a ell segons l'arbre del domain server space. En cas de que aquest tampoc ho sàpiga repetirà el procediment. I així fins arribar a solucionar l'adreça en qüestió (quan un servidor pot respondre sense consultar-ne un altre se'n diu Servidor Autoritzat).
[edita] Problemes amb el DNS
Tot aquest procés hauria de trigar dècimes de segons (i normalment ho fa), però en algunes ocasions pot trigar fins i tot més de 15 segons. Això pot provocar que un domini existent respongui com un no existent si el navegador es cansa d'esperar una resposta. Tot i això, donada l'arquitectura del DNS reenviant la petició és molt possible que rebem contestació, doncs algun servidor entremig pot haver rebut la resposta a temps. En cas de la caiguda d'un servidor DNS totes les adreces de les que era Servidor Autoritzat passarien a no respondre donant la sensació d'estar desconnectat, quan en realitat estan plenament operatives.