]> git.piffa.net Git - doc/.git/blobdiff - source/servizi.txt
Committer: Andrea Manni <eaman@conny.andreamanni.com>
[doc/.git] / source / servizi.txt
index 61d15674fb33063b3973915e4e94cef416f03f99..f337b47239c9cc40395976e5fc47c532132a2d6f 100644 (file)
@@ -24,7 +24,7 @@ Solo per uso interno
 
 Impostazioni di base per la configurazione del sistema operativo e della rete nel laboratorio 208 facente parte della rete piffa.net .
 
-Qui riportati per comodita' degli studenti (e del docento che non sara' **mai piu'** costretto a ripeterli! )
+Qui riportati per comodita' degli studenti (e del docente che non sara' **mai piu'** costretto a ripeterli! )
 
 Rete
 ------
@@ -45,7 +45,7 @@ DNS         10.10.208.250
              persistente
 ============= ================
 
-
+Sul portatile di Andrea, corrispondente all'ip 254, gira un DHCP, proxy http e mirror di Debian ( http://debian.piffa.net). Se Andrea non e' in aula (o ancora peggio non c'e' il suo portatile Net) gli studenti dovranno darsi un indirizzo ip manualmente e disabilitare il proxy (che pero' e trasparente, quindi fate pure come se non ci fosse ;) .
 
 Bash completion
 -------------------
@@ -417,6 +417,174 @@ Problemi di cache:
 
        *  Provare con un altro browser, o cercare di svuotare la cache chiudere/riaprire l'applicativo. Provare a fermare Apache, ricaricare la pagina (operazione che fallira'), far ripartire il Apache, ricaricare la pagina.
 
+Domain Name System
+====================
+
+Informazioni di base sul servizio DNS.
+------------------------------------------
+
+Domain Name System (spesso indicato con DNS) è un servizio utilizzato per la risoluzione di nomi di host in indirizzi IP e viceversa. Il servizio è realizzato tramite un database distribuito, costituito dai server DNS.
+
+Il nome DNS denota anche il protocollo che regola il funzionamento del servizio, i programmi che lo implementano, i server su cui questi girano, l'insieme di questi server che cooperano per fornire il servizio.
+
+I nomi DNS, o "nomi di dominio", sono una delle caratteristiche più visibili di Internet.
+
+C'è confusione in merito alla definizione dell'acronimo: la S spesso viene interpretata come service, ma la definizione corretta è system.
+
+L'operazione di convertire un nome in un indirizzo è detta risoluzione DNS, convertire un indirizzo IP in nome è detto risoluzione inversa.
+
+Nomi di dominio
+-----------------
+
+Un nome a dominio è costituito da una serie di stringhe separate da punti, ad esempio it.wikipedia.org. A differenza degli indirizzi IP, dove la parte più importante del numero è la prima partendo da sinistra, in un nome DNS la parte più importante è la prima partendo da destra. Questa è detta dominio di primo livello (o TLD, Top Level Domain), per esempio .org o .it.
+
+Un dominio di secondo livello consiste in due parti, per esempio wikipedia.org, e così via. Ogni ulteriore elemento specifica un'ulteriore suddivisione. Quando un dominio di secondo livello viene registrato all'assegnatario, questo è autorizzato a usare i nomi di dominio relativi ai successivi livelli come it.wikipedia.org (dominio di terzo livello) e altri come some.other.stuff.wikipedia.org (dominio di quinto livello) e così via.
+
+
+Tipologie di record
+-----------------------
+
+Ad un nome DNS possono corrispondere diversi tipi di informazioni. Per questo motivo, esistono diversi tipi di record DNS. Ogni voce del database DNS deve essere caratterizzata da un tipo. I principali tipi sono:
+
+* Record A - Indica la corrispondenza tra un nome ed uno (o più) indirizzi IP (per la precisione indirizzi IPv4, ovvero la versione attualmente in uso).
+* Record MX - (Mail eXchange) indica a quali server debba essere inviata la posta elettronica per un certo dominio.
+* Record CNAME - Sono usati per creare un alias, ovvero per fare in modo che lo stesso calcolatore sia noto con più nomi. Uno degli utilizzi di questo tipo di record consiste nell'attribuire ad un host che offre più servizi un nome per ciascun servizio. In questo modo, i servizi possono poi essere spostati su altri host senza dover riconfigurare i client, ma modificando solo il DNS.
+* Record PTR - Il DNS viene utilizzato anche per realizzare la risoluzione inversa, ovvero per far corrispondere ad un indirizzo IP il corrispondente nome a dominio. Per questo si usano i record di tipo "PTR" (e una apposita zona dello spazio dei nomi in-addr.arpa).
+* Record AAAA - Restituisce un indirizzo IPv6.
+* Record SRV - Identificano il server per un determinato servizio all'interno di un dominio. Possono essere considerati una generalizzazione dei record MX.
+* Record TXT - Associano campi di testo arbitrari ad un dominio. Questi campi possono contenere una descrizione informativa oppure essere utilizzati per realizzare servizi.
+
+Vi sono anche tipi di record "di servizio", necessari al funzionamento del database distribuito:
+* Record NS - Utilizzato per indicare quali siano i server DNS autoritativi per un certo dominio, ovvero per delegarne la gestione.
+* Record SOA - (Start of Authority) usato per la gestione delle zone DNS.
+
+Utilizzo
+------------
+
+I computer vengono identificati in rete grazie agli indirizzi *IP*, questi pero' non sono comodi per gli utenti come riferimento per i vari server. Ad esempio sarebbe scomodoriferirsi al motore di ricerca Goggle con uno dei suoi IP: ``74.125.43.104``, e' preferibile usare il nome di dominio *www.google.com*::
+
+       ping -c 1 www.google.com
+       PING www.l.google.com (74.125.43.104) 56(84) bytes of data.
+
+Risoluzione dei nomi di dominio
+----------------------------------
+
+Ci sono vari strumenti per interrogare i server DNS e ottenere l'indirizzo IP associato al nome di dominio che ci interessa::
+
+  $ host www.piffa.net
+  www.piffa.net is an alias for piffa.net.
+  piffa.net has address 65.98.21.97
+  piffa.net mail is handled by 10 65.98.21.97
+
+
+  $ nslookup www.piffa.net
+  Server:         192.168.0.10
+  Address:        192.168.0.10#53
+  
+  Non-authoritative answer:
+  www.piffa.net   canonical name = piffa.net.
+  Name:   piffa.net
+  Address: 65.98.21.97
+
+
+  $ dig www.piffa.net
+  
+  ; <<>> DiG 9.6.0-P1 <<>> www.piffa.net
+  ;; global options: +cmd
+  ;; Got answer:
+  ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 47751
+  ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 4, ADDITIONAL: 4
+  
+  ;; QUESTION SECTION:
+  ;www.piffa.net.                 IN      A
+  
+  ;; ANSWER SECTION:
+  www.piffa.net.          3489    IN      CNAME   piffa.net.
+  piffa.net.              3489    IN      A       65.98.21.97
+  
+  ;; AUTHORITY SECTION:
+  piffa.net.              86289   IN      NS      ns2.mydomain.com.
+  piffa.net.              86289   IN      NS      ns1.mydomain.com.
+  piffa.net.              86289   IN      NS      ns4.mydomain.com.
+  piffa.net.              86289   IN      NS      ns3.mydomain.com.
+  
+  ;; ADDITIONAL SECTION:
+  ns1.mydomain.com.       96208   IN      A       64.94.117.193
+  ns2.mydomain.com.       96208   IN      A       64.94.31.67
+  ns3.mydomain.com.       96208   IN      A       66.150.161.137
+  ns4.mydomain.com.       96208   IN      A       63.251.83.74
+  
+  ;; Query time: 1 msec
+  ;; SERVER: 192.168.0.10#53(192.168.0.10)
+  ;; WHEN: Sun May 10 21:23:11 2009
+  ;; MSG SIZE  rcvd: 209
+
+Lo strumento piu' esaustivo e' ``dig``, installabile con il pacchetto ``dnsutils`` .
+
+Dig
+-----
+
+Vediamo alcune opzioni utili nell'utilizzo di ``dig`` per l'inerrogazione dei DNS Server::
+
+
+       $ dig www.google.it
+       
+       ; <<>> DiG 9.6.0-P1 <<>> www.google.it
+       ;; global options: +cmd
+       ;; Got answer:
+       ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 18816
+       ;; flags: qr rd ra; QUERY: 1, ANSWER: 6, AUTHORITY: 7, ADDITIONAL: 0
+       
+       ;; QUESTION SECTION:
+       ;www.google.it.                 IN      A
+       
+       ;; ANSWER SECTION:
+       www.google.it.          250683  IN      CNAME   www.google.com.
+       www.google.com.         334819  IN      CNAME   www.l.google.com.
+       www.l.google.com.       186     IN      A       74.125.43.103
+       www.l.google.com.       186     IN      A       74.125.43.104
+       www.l.google.com.       186     IN      A       74.125.43.147
+       www.l.google.com.       186     IN      A       74.125.43.99
+       
+       ;; AUTHORITY SECTION:
+       l.google.com.           80856   IN      NS      f.l.google.com.
+       l.google.com.           80856   IN      NS      d.l.google.com.
+       l.google.com.           80856   IN      NS      b.l.google.com.
+       l.google.com.           80856   IN      NS      c.l.google.com.
+       l.google.com.           80856   IN      NS      a.l.google.com.
+       l.google.com.           80856   IN      NS      e.l.google.com.
+       l.google.com.           80856   IN      NS      g.l.google.com.
+       
+       ;; Query time: 1 msec
+       ;; SERVER: 192.168.0.10#53(192.168.0.10)
+       ;; WHEN: Sun May 10 21:34:47 2009
+       ;; MSG SIZE  rcvd: 255
+
+$ dig
+       (semza opzioni o oggetti) Fornisce l'elenco dei *root servers* utilizzati. I root server sono i server che mantengono le informazioni sui domini di primo livello (TLD) e sono quindi il punto di partenza per scorrere nella directory dei DNS per recuperare le informazioni (tipicamente un campo ``A`` per un indirizzo IP) che ci servono per raggiungere un certo servizio.
+
+$ dig
+
+       ...
+       
+       ;; ANSWER SECTION:
+       .                       192032  IN      NS      C.ROOT-SERVERS.NET.
+       .                       192032  IN      NS      E.ROOT-SERVERS.NET.
+       .                       192032  IN      NS      B.ROOT-SERVERS.NET.
+       .                       192032  IN      NS      L.ROOT-SERVERS.NET.
+       .                       192032  IN      NS      A.ROOT-SERVERS.NET.
+       .                       192032  IN      NS      F.ROOT-SERVERS.NET.
+       .                       192032  IN      NS      H.ROOT-SERVERS.NET.
+       .                       192032  IN      NS      G.ROOT-SERVERS.NET.
+       .                       192032  IN      NS      K.ROOT-SERVERS.NET.
+       .                       192032  IN      NS      M.ROOT-SERVERS.NET.
+       .                       192032  IN      NS      I.ROOT-SERVERS.NET.
+       .                       192032  IN      NS      J.ROOT-SERVERS.NET.
+       .                       192032  IN      NS      D.ROOT-SERVERS.NET.
+       
+       ...
+
+
 
 DNSmasq
 ========