Newsgroup: it.comp.aiuto
Titolo: DNS

Mi sapete dire come funziona esattamente un server DNS?
Cioe', *ogni* server contiene un elenco di *tutti* gli IP address?

Giuseppe `ferdy' Miceli</A>
---------- pgp public key available - just ask or finger me ----------

Cioe', *ogni* server contiene un elenco di *tutti* gli IP address?
No, sono in scala gerarchica.
Ossia, ce ne sono 9 (circa) principali riconosciuti in tutto il mondo
che definiscono i domini principali. Questi contengono gli ip di altri
DNS che registrano dei sottodomini. Per il dominio it. (occhio al punto
finale) se ne occupa generalmente il garr, con qualche altro sito per
migliorare la velocita` e dare un servizio continuo anche in caso di
manutenzione del sito principale. Poi ci sono altri DNS che fanno capo
al garr, e ognuno si occupa di una sottorete, e la cosa continua. (es.
il centro di calcolo di una universita` tiene traccia dei vari
dipartimenti, e alcuni dipartimenti possono avere anche un DNS locale
per le proprie macchine).
Generalmente per convertire un nome in un numero la tua macchina fa
una richiesta al DNS che hai configurato, e questo la rigira alla
macchina piu` competente in base alla propria configurazione.
Spero di essere stato esatto.
Michele
-- 
----------------------------------------------------------------------
Dalla Silvestra Michele  
email:da...@psico.unipd.it
Coordinatore del progetto documentazione del  Pluto
(
http://www.dei.unipd.it/it/linux/pluto/intro.html
)


Il Domain Name System e` un database *distribuito*, basato sul concetto 
di "sistemi autonomi" comune ad Internet (specie per il routing).
In altri termini, ogni dominio (che puo` essere una multinazionale, o un
dipartimento universitario, o una piccola rete aziendale) cura i propri 
indirizzi e fa girare uno o piu` server accessibili dall'esterno.
Il sistema e` gerarchico, un po' come il filesystem DOS/OS2/Unix, con
una "radice" senza nome (o, se preferite, con nome ".", posto alla fine
del nome completo, tipo "
venus.record.unipd.it
.") da cui parte tutto il 
sistema. Ogni dominio "punta" ai vari sottodomini semplicemente speci-
ficando qual e` (o quali sono) il name server che lo gestisce.
Il funzionamento e` concettualmente semplice: se io voglio sapere l'IP
address di, poniamo, 
ftp.funet.fi
, il mio programma (FTP), usera` le
opportune chiamate del "resolver" che interpella il proprio DNS server,
il quale (*) poi eventualmente interroghera` i server primari - ben noti e
specificati dalla documentazione ufficiale (**) - per sapere a chi chiedere
informazioni sul dominio "fi", e cosi` via fino ad ottenere una risposta
"autorevole" alla richiesta.
Per questioni di efficienza, poi, ogni record ottenuto viene mantenuto in
una cache, sia dal client che dal server, cosi` da minimizzare il numero
di richieste.
La cosa poi si puo` "complicare" a piacere, dato che non esiste alcun
vincolo al fatto che un host possa essere server di piu` domini (nessun
dei quali e` obbligatorio sia il suo), o che possa essere server princi-
pale di un dominio e secondario di altri, ecc.
Come al solito, per altri approfondimenti rimando ai libri di Comer
(Internetworking with TCP/IP, vol. 1; tradotto dalla Jackson in Italiano)
e di Stevens (TCP/IP Illustrated, vol .1), oppure alle varie FAQ e HOWTO
reperibili in ambito Linux.
Per chi vuole esagerare :-): Liu & Albitz, "DNS and BIND" della O'Reilly,
oppure il libro di Hunt "TCP/IP Netowrk Administration", sempre della
O'Reilly.
Saluti,
Luca Polo.
(*) Se il resolver e` abbastanza evoluto - tipico piu` dei sistemi Unix
e simili che dei PC - e` in grado di fare da solo le varie richieste, senza
delegarle al server: per il resto, tutto e` uguale a prima.
(**) ftp.rs.internic.net:/netinfo/root-servers.txt 
-- 
+-----------------------------------------------------------+
| Luca Polo, 
ja...@gest.unipd.it
   -   System administrator, |
| Istituto di Ingegneria Gestionale, Universita` di Padova. |
+-----------------------------------------------------------+