Originariamente pubblicato in data 31/07/2002
A
C
C
O
M
A
Z
Z
I
LInternet sotto al web
LInternet sotto al web
Sotto al cofano di Mac OS X cè un mondo tutto da scoprire di utility, strumenti e software di basso livello. Vediamo come usarlo per capire meglio il funzionamento di Internet.
Internet è straordinariamente complicata. Oggi, dopo dieci anni di lavoro da parte dei migliori ingegneri al mondo, collegarsi alla Rete delle Reti è diventato semplice, tanto che Apple in un famoso spot pubblicitario si vanta che è sufficiente collegare un Mac alla presa del telefono per cominciare a navigare. Chi è disposto a grattare sotto la superficie di questa semplicità trova un mondo digitale affascinante, che possiamo esplorare per semplice curiosità o anche per carpire informazioni, trucchi e segreti che sembravano impossibili, o alla sola portata di hacker incalliti.Lo strumento che useremo per avventurarci alla scoperta di questo enigma è il Terminale, la applicazione che si trova installata con tutte le versioni di Mac OS X dentro alla cartellina Utility. Infilate i caschi, accendete la luce sulla testa e preparatevi a scendere: si parte. Vi sarà forse capitato di navigare sul web mentre il vostro Mac sta spedendo un corposo messaggio di posta elettronica per voi. In quei casi, la navigazione è vistosamente rallentata ma procede. Il canale di comunicazione (per esempio, il modem) non viene bloccato da una attività: non si comporta, insomma, come un tunnel attraversato da un trasporto eccezionale, che resterebbe inagibile sinché lingombrante carico non sia transitato. La spiegazione: su Internet ogni comunicazione viene pacchettizzata, cioè spezzata in tanti blocchetti di massimo un chilobyte e mezzo. Nel caso del nostro esempio, il programma di posta spedisce un pacchetto dopo laltro, ma inframmezzati a questi possono viaggiare i pacchetti del web, in un senso e nellaltro.
Il comando ping può venire utilizzato per scoprire quanto tempo impiega un pacchetto per andare e tornare da un sito Internet. Attivate la vostra connessione Internet e poi scrivete nel Terminale:
ping www.macworld.it
Appariranno una serie di righe come questa:
64 bytes from 212.66.228.35: icmp_seq=1 ttl=117 time=56.383 ms
Potete bloccare il processo premendo Control-C (cioè premendo e tenendo premuto il tasto Ctrl, premendo quindi il tasto c, poi rilasciando c e infine rilasciando Ctrl. Questo accorgimento vale con tutti i programmi che avviamo dal Terminale).
Il numero 212.66.228.35 è (nel momento in cui scriviamo) il numero caratteristico del sito web di questa rivista. Il tempo richiesto per raggiungerlo è lultima cifra ed è espresso in millesimi di secondo. Quanto più quel numero è basso, tanto migliore è la vostra connessione Internet (e anche quella del sito). I pacchetti, per arrivare alla destinazione, attraversano numerosi calcolatori e apparati di rete. Quando qualcosa va storto (per esempio, non riusciamo a navigare mentre ci troviamo negli uffici di una grande azienda) è utile scoprire dove si blocca la comunicazione e quale macchina è responsabile del malfunzionamento. Per ottenere questa informazione ci basta usare il comando traceroute (letteralmente, segui il percorso). Per esempio:
traceroute www.macworld.it
Apparirà un elenco numerato di tutti i nodi che i pacchetti attraversano. Per ogni nodo sono indicati il nome (come www.macworld.it), il numero (come 212.66.228.35) e il tempo necessario a raggiungere il nodo. Se appare un asterisco, il nodo di transito esiste ma si rifiuta di rispondere notificando la sua esistenza. Una sfilza di asterischi può indicare che la connessione è molto lenta e manca il tempo per scoprire le informazioni richieste: in questi casi potete concedere più tempo al programma. Per lasciare dieci secondi a ogni nodo, per esempio, potete scrivere:
traceroute -w 10 www.macworld.it
Quanto più breve la lista dei punti di attraversamento, tanto migliore la qualità della vostra connessione Internet (e anche quella del sito). Chi cè dietro un sito? Chi lo ha registrato e lo controlla? Anche questa verifica è facilmente alla nostra portata. Provate a digitare:
whois -h whois.nic.it macworld.it
Apparirà lindirizzo della sede di IDG, la nostra casa editrice; poi il nome dellamministratore delegato e il nome del responsabile della azienda che cura i servizi informatici. Il comando whois va seguito dalla clausola -h, dal nome della base dati su cui fare la ricerca (vedere Incroci obbligati) e infine dal nome di dominio che ci incuriosisce.
Il sistema whois accetta anche il nome di una persona. Risponderà con i dati (indirizzo, numero di telefono, indirizzo e-mail) per tutti i responsabili conosciuti di un qualsiasi sito esistente. Per esempio, potete provare:
whois -h whois.nic.it Luca Accomazzi Chi gestisce la posta elettronica di una persona? Questa informazione può essere utile se state cercando di raggiungere qualcuno ma i messaggi che gli mandate rimbalzano. Anche in questo caso, basta chiedere al Terminale. Questa volta si userà il comando host. Per esempio:
host macworld.it
Nel momento in cui scriviamo larticolo, questo comando risponde che il sistema mx.sirio.it gestisce la posta per Macworld. Questo significa che gli indirizzi a cui rivolgersi in caso di malfunzionamento sono postmaster@macworld.it e postmaster@sirio.it.
Unaltra piccola ma comoda utility accessibile dal Terminale è wget. Purtroppo Apple ha deciso di non includerla in tutte le copie di Mac OS X, ma soltanto insieme a Mac OS X Server. È comunque possibile scaricare il suo installer, che pesa soltanto 160 KB, dal sito Apple:
www.apple.com/downloads/macosx/unix_apps_utilities/
Il programma wget permette di creare sul nostro disco rigido una copia di un intero sito Internet. È in grado di lavorare con i siti HTTP normali, i siti sicuri HTTPS e persino con gli scaricamenti FTP. Ci permette di creare un clone di un sito che ci interessa sul nostro disco rigido, per poi consultarlo con calma quando siamo sconnessi da Internet e magari in viaggio con un portatile.
La sintassi è molto semplice. Per esempio, se ci interessano tutte le meravigliose foto di astronomia scattate dal Telescopio Spaziale Hubble e reperibili sul sito oposite.stsci.edu/pubinfo/PR.html, basta ordinare via Terminale:
wget -r http://oposite.stsci.edu/pubinfo/PR.html
Il sito verrà salvato nella cartella corrente, che normalmente è il nostro inizio, cioè la cartella che viene selezionata quando clicchiamo licona della casetta in una finestra del Finder. In ogni caso per scoprire quale sia la cartella corrente per il Terminale basta scrivere:
pwd
Per vedere quella cartella nel Finder, basta copiare il suo nome, andare nel Finder, selezionareVai alla cartella dal menu Vai e incollare.
Per spostarci e così posizionare la registrazione della copia del sito da qualche altra parte dobbiamo anticipare il comando wget con un altro comando, cd. Basta scrivere cd , seguito da uno spazio, nel Terminale; poi trascinare la icona della cartella che ci interessa usare sopra alla finestra del Terminale, in modo che il suo nome vi appaia. Infine premere il tasto Invio. Buon divertimento! Ogni nazione ha una sua base dati, che contiene i nomi dei dominii registrati e i nomi delle persone che hanno registrato uno o più dominii. I più utili:
Stati Uniti | .com .net .org | whois.networksolutions.com |
---|---|---|
Italia | .it | whois.nic.it |
Svizzera | .ch | whois.nic.ch |