Strumenti di controllo e di verifica


Ci sono parecchi strumenti di controllo e di verifica sulla rete. Per esempio puoi controllare lo stato della rete, puoi controllare se un host e' attivo oppure no, puoi controllare le informazioni riguardo un qualsiasi dominio registrato, riguardo un untente registrato e cosi' via. Vediamo questi strumenti.

Whois

Prima di parlare di WHOIS, devi sapere qualcosa sul sistema di nomi di dominio. Ok, prima di tutto devi sapere che ogni macchina sulla rete ha il proprio indirizzo per essere identificata e raggiunta da un' altra macchina. Quell' indirizzo e' chiamato indirizzo IP (Internet Protocol). L' indirizzo IP e' qualcosa di questo tipo: 123.123.123.123. In altre parole un insieme di 4 numeri separati da punti. Qualsiasi computer e' raggiungibile tramite l' indirizzo IP. Il problema principale e': non e' facile ed agevole ricordare gli indirizzi IP, percio' si rende necessario un sistema alternativo. Per questa ragione gli indirizzi IP sono tradotti in stringhe di testo piu' comprensibili, come cs.yale.edu o sun.com. Per esempio, cs.yale.edu significa: Computer-Science.YALE.EDUcational o, in altre parole, il dipartimento di scienza dell' informazione dell' universita' di Yale. Durante il periodo di ARPANET esisteva solamente un file di testo chiamato 'host.txt', dove erano elencati tutti gli indirizzi IP (con i corrispondenti nomi). La notte tutti i computer collegati alla rete recuperavano quel file dal sito dove era custodito. A poco a poco il numero di host collegati aumento', e le dimensioni di quel file divennero eccessive, e ci si rese conto che tale sistema era inefficiente. Per questa ragione venne inventato il DNS (Domain Name System). Il Domain Name System (definito nelle RFC 1034 e 1035) e' una struttura gerarchica basata sui domini. In base al Domain Name System, Internet e' divisa in parecchi pezzi chiamati domini. Ci sono i domini di livello piu' alto (primo livello) e ci sono i sottodomini (secondo livello). Ogni dominio comprende parecchi host. Ci sono 2 tipi di domini di primo livello: quelli generici e quelli relativi alle nazioni. I domini generici sono com (commerciali), edu (istituizioni che si occupano di istruzione), gov (il governo degli stati uniti), int (istituzioni internazionali), mil (istituzioni militari), net (istituzioni che si occupano di reti) ed org (organizzazioni senza fine di lucro). I domini di nazione sono uno per ciascun paese (per esempio UK sta per United Kingdom, CA sta per Canada, AU sta per Australia e cosi' via) come definiti nel documento ISO 3166. Ciascun dominio di livello piu' alto e' diviso in parecchi sottodomini. Per esempio il dominio edu comprende tutte le istituzioni che hanno a che fare con l' istruzione, e deve conoscere tutte le universita' (Yale, Utah, Ucla e cosi' via). In altre parole ogni dominio controlla il proprio sottodominio (per esempio UK e JP hanno 2 sottodomini caratteristici: AC e CO che significano rispettivamente ACademic e COmmercial). Ciascun dominio ha un particolare computer chiamato DNS (Domain Name Server). Non confonderti tra 'system' e 'server'. Questo server mantiene una tabella contenente tutti gli indirizzi IP ed i nomi di dominio che appartengono al dominio al quale tale server fa parte. Ok, ora sai qualcosina in piu' sul meccanismo dei domini (e di conseguenza sugli URL). Bene, esite un' organizzazione che gestisce una banca dati contenente tutti i domini registrati di tutto il mondo. Tale organizzazione si chiama INTERNIC. Puoi interrogare il suo database tramite WHOIS. Ci sono parecchie organizzazioni che gestiscono un loro database whois, ma quello di Internic e' il database principale. In altre parole qualsiasi societa' od istituzione che vuole avere un proprio dominio, deve registrarsi presso l' Internic. Se vuoi provare questo servizio dai un' occhiata a: http://ds.internic.com oppure a: http://rs.internic.com. Comunque ci sono molti server whois, per esempio esite un database europeo presso il RIPE (Reseaux IP Europeans, Amsterdam), puoi trovarlo qui: http://whois.ripe.net. Come ho detto, ci sono molte organizzazioni che gestiscono il proprio database. Per questa ragione se stai cercando informazioni su James Kirk, potresti trovare parecchio interrogando il database Internic ma potresti anche non trovare nulla. Infatti la societa' xyz potrebbe avere un proprio database e tu potresti trovare James Kirk solo li'. Puoi usare il comando whois via telnet (collegandoti ad un host che offre questo servizio) oppure interrogando il database whois dell' Internic via web o anche via e-mail, inviando una email a mailserv@ds.internic.net (devi solo mettere la tua interrogazione nel corpo del messaggio, per esempio: whois James Kirk. Se invii una e-mail con 'whois help' come testo, riceverai un elenco dei comandi consentiti). Puoi ricercare informazioni che riguardano domini, host, reti, nomi ed indirizzi di posta. Devi specificare una parola chiave: do (dominio), ho (host), ne (rete), pe (nome), user_name@ o @host_name (indirizzo di posta). Se stai usando telnet ricorda che di solito il server whois ascolta la porta numero 43. Per esempio, supponi di voler interrogare il database whois della univerisita' dell' Indiana. Devi collegarti al suo server whois via telnet:

telnet indiana.edu 43
whois: pe holland
Holland, Antony (Tony) tony@indiana.edu ...
Holland, Frank (Frank) frank@indiana.edu ...
and so on...

Infine puoi usare un client per interrogare un database whois. Un ottimo programma freeware e' 'Cyberkit' di Luc Neijens. Lo trovi qui: http://www.ping.be/cyberkit/index.html.

Finger

FINGER ti permette di ottenere informazioni relative alle persone o agli host. Puoi usare FINGER via telnet, via web, via email o, ovviamente, semplicemente digitando 'finger' se stai usando un sistema Unix. Puoi digitare: finger nomer_utente o finger indirizzo_email. Se vuoi usare una interfaccia web, puoi provare qui: http://www.ecl.wustl.edu/bin/share/finger. Se vuoi usare il comando finger via e-mail, puoi inviare un messaggio all' indirizzo: b.liddicott@ic.ac.uk con '#finger qualcosa' nel campo subject. Puoi usare anche 'Cyberkit'.

Ping

Ping e' utile per testare, misurare e gestire le reti. Ping invia un pacchetto ed aspetta che 'torni indietro'. Ping e' usato dagli amministratori di rete per diagnosticare i problemi sulle reti. Percio' se non sei un amministratore di reti, non dovresti usarlo. Comunque ping e' utile per verificare se un host e' attivo. Di solito ping invia 3 pacchetti. Se vuoi provarlo hai varie possibilita': se usi Windows95, apri una finestra MS-Dos (Avvio/Programmi/prompt MS-DOS) poi digita 'ping nomet_host' (dove nome_host e' il nome dell' host che vuoi controllare). Se digiti 'ping' senza altri parametri, otterrai qualcosa di questo tipo:

C:\WINDOWS>ping

Usage: ping [-t] [-a] [-n count] [-l size] [-f] [-i TTL] [-v TOS]
[-r count] [-s count] [[-j host-list] | [-k host-list]]
[-w timeout] destination-list

Options:
-t Ping the specifed host until interrupted.
-a Resolve addresses to hostnames.
-n count Number of echo requests to send.
-l size Send buffer size.
-f Set Don't Fragment flag in packet.
-i TTL Time To Live.
-v TOS Type Of Service.
-r count Record route for count hops.
-s count Timestamp for count hops.
-j host-list Loose source route along host-list.
-k host-list Strict source route along host-list.
-w timeout Timeout in milliseconds to wait for each reply.

Queste sono tutte le opzioni disponibili. Se non usi Windows95, potresti usare uno dei parecchi siti che consentono l' uso di ping. Se sei su Unix o Linux, devi solo digitare 'ping nome_dominio'. Comunque su Unix, queste opzioni sono un po' diverse.

Traceroute

Prima di tutto devi sapere che tutti i dati inviati o ricevuti su Internet sono solo dei piccoli pezzi dei dati originali. Per esempio, quando visiti un sito, stai recuperando una pagina web. Il server di quel sito riceve la tua richiesta e ti invia la pagina web, Comunque non riceverai l' intera pagina tutta insieme, perche' tale pagina verra' divisa in piccoli pezzi chiamati pacchetti. Bene, questi pacchetti ti raggiungono viaggiando attraverso la rete e passando attraverso parecchi computer. Ciascun pacchetto e' come una lettera: ha un mittente ed un destinatario. I computer collegati ad Internet usano una tecnica chiamata 'commutazione di pacchetto' per trasferire i pacchetti da un computer all' altro. Questa tecnica e' usata dal protocollo IP. Il pacchetto viene trattato come una patata bollente: il computer che spedisce (ad es. il server del sito che stai visitando) lo invia al computer piu' vicino. Il computer piu' vicino riceve il pacchetto ed osserva l' indirizzo del destinatario. Se esso e' il destinatario del pacchetto, ok, nessun problema, in caso contrario lo spedisce al suo computer piu' vicino. Il computer piu' vicino lo riceve e controlla l' indirizzo del destinatario e cosi' via, fino a quando il pacchetto raggiunge l' effettivo destinatario. Per esempio, supponi di trovarti a Londra, e supponi di voler recuperare una pagina web di un sito che si trova in Francia. Bene, quella pagina passera' attraverso il Canada, il Texas, l' Islanda, il Portogallo, la Spagna e finalmente la Francia. Ok, questo 'percorso' e' abbastanza improbabile, ma tu non puoi mai sapere dove passera' la 'tua' pagina. Inoltre se alcuni computer lungo la strada sono inattivi, 'la pagina web' dovra' scegliere una altro percorso. E tu non puoi saperlo. Se sei fortunato quella pagina attraversera' solamente 2 paesi: la Francia e l' Inghilterra. D' altra parte, se sei sfortunato, la tua pagina attraversera' molti paesi. Ovviamente cio' dipende in particolar modo dalla topologia della rete. Inoltre, alcuni computer possono essere occupati o sovraffollati percio' impiegheranno un po' per rispondere. Per questa ragione qualcuno invento' il programma traceroute. Traceroute e' uno strumento utile per controllare il 'percorso' seguito da un pacchetto. Puoi usare traceroute per scoprire tale percorso e, sopratutto, per vedere *quanto tempo* impiega un pacchetto a raggiungerti. Ok, ora possiamo vedere come funziona traceroute. Ciascun pacchetto IP contiene un campo chiamato TTL (Time To Live) che contiene un valore compreso tra 0 e 255. Ciascun router (macchina) che riceve il pacchetto osserva tale valore e sottrae 1. Questo si verifica fino a quando il contenuto del campo TTL raggiunge il valore 0 od 1. Quando il valore del campo TTL raggiunge 0, il router *uccide* il pacchetto! Tale meccaniscmo e' necessario, altrimenti un pacchetto potrebbe viaggiare all' infinito nel caso non non trovasse il 'suo' destinatario. Quando il router uccide il pacchetto, invia indietro un messaggio chiamato ICMP (Internet Control Message Protocol) contenente appunto un messaggio di Time Exceeded In Transit all' host che ha generato il pacchetto originario. Bene, quando traceroute invia un pacchetto (di solito effettua 3 tentativi) la prima volta imposta il valore del campo TTL ad 1. Cosi', quando il pacchetto raggiunge il primo router, questi sottrae 1 dal valore del campo TTL, che diventa 0, uccide il pacchetto ed ritorna indietro un messaggio ICMP. Oh, traceroute scrive l' ora esatta nel pacchetto prima di spedirlo. Quando il router ritorna indietro il messaggio ICMP, scrive l' ora - letta nel pacchetto - nel mesaggio. A questo punto, quando traceroute riceve il messaggio ICMP calcola la differenza tra l' orario di quando e' stato spedito il pacchetto (trovato nel messaggio ICMP) e quello di arrivo. Il risultato si chiama tempo di transito di andata e ritorno (calcolato in millesimi di secondo). Ora traceroute imposta il valore di TTL a 2 ed invia un altro pacchetto. Ma ora il primo router osservando il valore di TTL sottrarra' 1 e fara' proseguire il pacchetto al router successivo (infatti 2-1=1). Il secondo router ora uccidera' il pacchetto (perche' 1-1=0). Cosi' il secondo router ritornera' indietro un messaggio ICMP. La volta successiva traceroute impostera' il valore di TTL a 3 e questo ciclo andra' avanti fino a quando il pacchetto non raggiungera' l' host destinatario (il cui indirizzo e' scritto all' interno del pacchetto). Quando il pacchetto raggiunge finalmente l' host destinatario, accade un fatto strano: l' host scopre un numero di porta assurdo: 33,434! Non e' possibile raggiungere quell porta, semplicemente perche' non esiste! Numeri di porta reali sono 21, 25 o 80. Percio' invia indietro un messaggio ICMP contentente 'Port Unreachable' (cioe' porta irraggiungibile). Traceroute legge questo messaggio e visualizza 'trace complete'. Se vuoi provare traceroute hai varie possibilita': se stai usando Windows95, devi solo aprire una finestra MS-Dos (Avvio/Programmi/prompt MS-DOS) poi digita 'tracert' (nota, 'tracert' e non 'traceroute'). Cosi' otterrai qualcosa del genere:

C:\WINDOWS>tracert

Usage: tracert [-d] [-h maximum_hops] [-j host-list] [-w timeout] target_name

Options:
-d Do not resolve addresses to hostnames.
-h maximum_hops Maximum number of hops to search for target.
-j host-list Loose source route along host-list.
-w timeout Wait timeout milliseconds for each reply.

Comunque dovresti digitare 'tracert nome_dominio' (cosi' vedrai il percorso seguito dai tuoi dati. Nome_dominio e' un nome di dominio, ma puoi usare anche un indirizzo IP).

Se non usi Windows95, potresti usare uno di quei siti che offrono il servizio traceroute. Se stai usando Unix o Linux, devi solo digitare 'traceroute nome_dominio' (nota, qui devi digitare 'traceroute' e non 'tracert'). Con traceroute puoi ottenere alcune indicazioni su quanto e' intasata la rete, semplicemente osservando i tempi di andata e ritorno. Ricorda che puoi tracciare la strada seguita dai *tuoi* pacchetti, ma non puoi tracciare il percorso inverso. Infatti il pacchetto inviato da te segue una strada, mentre i pacchetti che ricevi dal sito che stai visitando seguono un percorso diverso. Per questa ragione acluni siti permettono di eseguire traceroute in entrambi i sensi. Inoltre ci sono alcune opzioni che possono essere utilizzate. Per esempio, se sei su Windows95 puoi usare l' opzione -J (su Unix e' '-g') per indicare fino a 9 router intermedi in modo da 'definire un percorso' attraverso la rete:

tracert -J 123.123.123.123 111.10.1.124

Nell' esempio qui sopra, stai tracciando la strada tra il router 123.123.123.123 ed il router 111.10.1.124. Dai un' occhiata a questa lista di siti dove usare traceroute. Puoi anche usare il mio 'meta-traceroute' per lanciare fino a 6 traceroute per uno stesso host.

Documentazione:


      Home  Pag. prec.   Chi siamo?  Scrivici!

Copyright (c) 1998-2006 Wowarea