
Dopo averlo riveduto e corretto alcuni punti, mi appresto a rilasciare una
nuova versione di questo documento. Con l'occasione rinnovo l'invito a mandarmi
informazioni riguardati i vari provider di cui siete utenti o comunque di cui
conoscete l'esistenza per ingrandire la lista un po' limitata dei provider supportati.
Gradirei inoltre che coloro che riescono a collegarsi con Linux, me lo faccia
sapere allegando alla propria email il risultato del syslog (specialmente quelli
di Video On Line) di modo da poter risolvere i problemi di connessione paragonando
tra loro i syslog.
Provider Italiani HOWTO
* Versione : 1.1
* Rilasciata : 24/3/1996
INDICE
======
0. Introduzione
1. Il protocollo TCP/IP
1.1. Siti e indirizzi
1.2. Collegamenti seriali
1.3. Cosa serve per collegarsi
1.4. Configurazione generale del PPPD
1.5. Debug e Kdebug
1.6. IP statici e dinamici
1.7. I sistemi di autenticazione
2. Configurazione per i diversi provider
2.1. Video On Line
2.2. Italia On Line
2.3. Micronet
2.4. INET
2.5. Nettuno
2.6. Energy
3. Conclusione
4. Contributi
0. Introduzione
=================
Questo HOWTO si prefigge di aiutare gli utenti di Linux a configurare il proprio
sistema per connettersi ai provider italiani spiegando esclusivamente quel minimo
che serve del protocollo TCP/IP, senza l'approfondimento di documenti quali
il Net-2-HOWTO o la Network Administration Guide a cui rimando per chi fosse
seriamente interessato all'argomento.
Il documento e' diviso in due parti.
* Una prima parte di introduzione al funzionamento del protocollo TCP/IP nella
quale si spiega come configurare correttamente il proprio sistema.
* Una seconda parte nella quale si parla delle particolarita' di ogni provider
e delle ulteriori configurazioni che vanno effettuate in funzione del provider.
Mentre la prima parte e' d'obbligo per tutti, della seconda ognuno puo' leggersi
unicamente il preambolo e il paragrafo dedicato al proprio provider.
In futuro mi prefiggo di aggiungere una terza parte in cui spiegare il funzionamento
della posta e delle news e la relativa configurazione in funzione del proprio
provider. Per chi non potesse farne a meno, Netscape 2.0 per Linux puo' essere
configurato alla stessa maniera di come e' configurato per Win o MacOs, qualora
i vostri provider vi forniscano queste informazioni.
1. Il protocollo TCP/IP
=========================
1.1. Siti e indirizzi
---------------------
Tutti i siti Internet comunicano attraverso un protocollo comune, il TCP/IP,
che in realta', non e' un singolo protocollo ma un insieme di protocolli. Per
quel che ci riguarda ci limiteremo ad analizzare i due protocolli caratteristici
del TCP/IP e cioe'... il TCP e l'IP. Ogni sito e' identificato in modo univoco
da una quaterna di numeri (tipo 198.20.45.2) che vanno da 0 a 255 separati da
un punto: questo numero si chiama IP.
Quando, a collegamento tra PC e provider avvenuto, si contatta un host tramite
il suo nome alfabetico (tipo www.iol.it o sunsite.unc.edu), nella realta' viene
richiesto ad una computer sulla rete (che si chiama nameserver) la traduzione
del nome alfabetico nel corrispettivo numerico e automaticamente i pacchetti
di dati vengono spedito verso il sito destinatario identificato dal suo indirizzo
in formato numerico.
Attraverso un meccanismo che non stiamo qui a descrivere (perche' non e' il
luogo) i nodi di Internet instradano i pacchetti attraverso la rete. Quello
che interessa ora e' capire come un computer da casa si collega alla rete tramite
rete telefonica.
1.2. Collegamenti seriali
-------------------------
Esistono due tipi di protocolli che permettono a due siti TCP/IP di collegarsi
utilizzando un collegamento seriale tipo due modem attraverso una linea telefonica,
due modem attraverso attraverso una linea ISDN o due computer collegati per
mezzo di un cavo dalle due porte seriali.
Questi protocolli si chiamano SLIP (Serial Link Internet Protocol) e PPP (Point-to-Point
Protocol). Storicamente il PPP e' venuto dopo e si pone come un'evoluzione dello
SLIP, in quanto, oltre a fornire un collegamento come quello di SLIP, comprime
automaticamente i dati, puo' spedire pacchetti di dati di protocolli diversi
tra loro (TCP/IP di Unix e IPX/SPX di Novell) oltre a molte altre feature di
scarso interesse a questo punto del documento.
Il kernel di Linux li supporta tutti e due ed esistono svariati programmi che
configurano Linux per questi due collegamenti : i piu' conosciuti sono PPPD
e DIP.
1.3. Cosa serve per collegarsi
------------------------------
Per collegarsi e' necessario aver compilato il kernel avendo risposto si ai
seguenti punti :
* Supporto della rete TCP/IP
* Protocollo SLIP
* Protocollo PPP
I protocolli SLIP o PPP possono essere anche compilati come moduli e caricati
solamente quando sono necessari. A riguardo, ricordatevi che i moduli generati
non sono solo ppp.o e slip.o, ma sopratutto slhc.o che va caricato prima delgi
altri due moduli e scaricato dopo ! Oltre cio', servono i programmi di connessione.
I piu' conosciuti sono PPPD per il protocollo PPP e DIP per il protocollo SLIP.
Questo documento, per ora, tratta solo la connessione PPP.
1.4. Configurazione generale del PPPD
-------------------------------------
Il PPPD e' un programma molto particolare. E' un demone, ovvero uno di quei
programmi che, una volta lanciati, si mettono in "background" (per utilizzare
una terminologia Win) e funzionano senza che l'utente se ne accorga. Il PPPD
gestisce il traffico di pacchetti TCP/IP, praticamente assolve il ruolo del
Distinct o del Trumpet sotto Windows. Le molteplici opzioni, che potete scorrere
nel man di PPPD, possono essere passata attraverso sia la linea di comando sia
raccolte in nel file /etc/ppp/options.
Le opzioni spiegate in questa prima parte, dato che riguardano unicamente dalla
configurazione di Linux e dall'hardware del computer, sono da considerarsi universali
a prescindere da qualunque provider e conviene quindi raccoglierle nel file
/etc/ppp/options.
Le opzioni spiegate nella seconda parte dipendono strettamente dal provider
a cui ci si collega e conviene quindi raccoglierle come parametri di comando
per il PPPD in uno script apposito cosi' da lasciare la liberta' di poter accedere
a provider diversi. (Per chi non sapesse cos'e' uno script : e' un piccolo programma
scritto con i comandi della shell. Praticamente un file .BAT per chi conoscesse
solo DOS)
Il parametro fondamentale da inserire nel file /etc/ppp/option e':
connect /etc/ppp/chat-script
Questo parametro dice a PPPD che vogliamo chiamare un punto della rete Internet
il quale a sua volta sta aspettando che qualcuno si colleghi, ma che il collegamento
PPP sara' disponibile solo dopo aver compiuto una serie di operazioni contenute
nello script /etc/ppp/chat-script. Nella seconda parte troverete questo script
per ogni provider commentato dettagliatamente. L'opposto di connect e' passive,
ovvero si dice PPPD di attendere che qualcuno chiami per effettuare una connessione
PPP con una certa porta seriale.
Ma come si fa a dire a PPPD che porta seriale deve utilizzare ? Questo e' il
secondo parametro : la porta di comunicazione. La scelta e' da farsi tra i device
utilizzabili:
/dev/cua0 per la COM1:
/dev/cua1 per la COM2:
/dev/cua2 per la COM3: e via dicendo
oppure, se avere gia' spiegato a Linux a quale porta e' collegato il vostro
modem (per esempio tramite il setup della Slackware) :
/dev/modem
Inoltre bisogna dire a che velocita' volete comunicare con la seriale a cui
e' collegato il modem, generalmente un numero superiore alla velocita' di collegamento
qualora abbiate un modem che supporta la compressione, esempio :
115200
Non tutte le velocita' sono pero' lecite se si usa il PPPD 2.1.1 che e' la migliore
se si utilizza un kernel della seria 1.2.x. In questo caso, infatti, la porta
puo' funzionare al massimo a 38400 baud. Come andare piu' forte quindi? Semplice
(o quasi). Basta dire al kernel di lavorare a velocita' maggiori ogni qual volta
si presenta 38400.
Per far cio' si usa il comando setserial (e' bene metterlo in rc.local) con
la seguente sintassi : setserial /dev/cua1 spd_vhi
Il parametro spd_vhi indica al kernel di lavorare a 115200 baud anche se l'applicazione
richiede 38400 baud. Dato pero' che ci sono programmi che comunicano con la
seriale senza impostarne la velocita' e' bene farlo sempre nell'rc.local con
il comando : stty 38400 < /dev/cua1
Dato che nella maggior parte delle volte non si utilizza un collegamento seriale
diretto, e' ottima cosa dire al PPPD che state utilizzando un modem attraverso
due opzioni :
modem
crtscts
Il tipo di pacchetti che deve passare attraverso il collegamento seriale e regolato
dal netmasking il cui valore per questo tipo di collegamenti e':
netmask 255.255.255.0
Qualora notiate negli script di collegamento dei programmi per Win valori di
netmask diversi, sostituiteli e fatemi sapere. Il PPPD 2.2.0 dovrebbe dedurre
da solo il valore del netmask dal tipo di IP che viene assegnato senza che l'utente
indichi alcunche'.
L'ultimo parametro globale e' :
defaultroute
il quale dice a Linux che il collegamento che state effettuando e' quello per
il resto del mondo : Internet.
1.5. Debug e Kdebug
-------------------
Per analizzare le fasi cruciali del collegamento, qualora qualcosa non funzionasse,
il PPPD mette a disposizione due opzioni, debug e kdebug, che mostrano all'utente
la fase di negoziazione precedente al collegamento definitivo. Tramite l'analisi
di queste informazioni, per la verita' un po' criptiche, si puo' capire se il
collegamento non e' andato a buon fine per un paramtro sbagliato o per una password
scorretta. Per poter vedere il risultato di queste opzioni non viene direttamente
a video, ma deve passare attraverso il SYSLOGD. Il SYSLOGD e' un demone, come
il PPPD (lo si deduce dall'ultima lettera, una D), che si occupa di registrare
tutti i messaggi che il kernel scambia con le varie applicazioni. Il settaggio
di questo demone risiede in /etc/syslog.conf.
Per PPPD 2.1.2 bisogna aggiungere a questo file la seguente linea : local2.*
/dev/console
Per PPPD 2.2.0 invece la seguente :
daemon.* /dev/console
Mi raccomando due cose :
! tra * e /dev non ci vogliono spazi ma TAB
! per accettare nuove opzioni il syslog va killato e fatto ripartire
con una procedura strana, a me sembra che convenga fare reboot quando lo si
modifica. Per chi volesse piu' informazioni su questo potentissimo strumento
di Linux puo' leggersi il man ssyslog.conf o /usr/doc/sysklogd/README.linux.
In questo modo le informazioni sulla connessione vengono a video. Si volesse
salvare il contenuto per vederlo successivamente e capire, basta sostituire
/dev/console con il path di un file dove si vuole finisca il contenuto. Potrebbe
essere il file che mi mandate assieme alla fatidica domanda : perche' diavolo
non riesco a collegarmi ?
L'opzione debug da solo informazioni generali, mentre kdebug tira in ballo anche
le comunicazioni con il kernel e ammette una sub-opzione che dipende dalla versione
del PPPD che specifica quanto approfondite si vogliono le informazioni. Io consiglio
debug
kdebug 1
1.6. IP statici e dinamici
--------------------------
Ad ogni provider, oltre al proprio, vengono assegnati un numero finito di IP
da assegnare a coloro che si collegano. Generalmente la quantita' di IP dipende
dai modem disponibili al collegamento e quindi a quanti utenti si possono collegare
contemporaneamente di modo tale da assegnare ad ogni utente che si collega un
IP a caso tra quelli a disposizione non ancora utilizzati. Prima di effettuare
il collegamento SLIP, l'utente deve essere a conoscenza dell'IP che gli e' stato
assegnato. Con il PPP no. Infatti il collegamento PPP, durante la fase di negoziazione,
puo' dedurre da solo quale IP sia stato assegnato al computer che sta chiamando
attraverso l'opzione :
noipdefault
Qualora il vostro IP sia sempre quello si omettera' noipdefault e si inseriranno
i due IP separati da due punti (:), ovvero il proprio IP e quello del provider
al quale ci si collega :
:
Questa opzione, pero', e' del tutto ridondante in quanto Linux e' in grado da
solo di dedurre queste informazioni se avete compilato correttamente /etc/hosts
ed /etc/resolv.conf come spiegato piu' avanti.
1.7. I sistemi di autenticazione
--------------------------------
Il protocollo PPP supporta due diversi tipi di autenticazione, ovvero di sistemi
attraverso cui il provider verifica chi e' dall'altra parte della linea : il
PAP (Password Authentication Protocol) ed il CHAP (Cryptographic Handshake Authentication
Protocol). Le differenze non sono sostanziali, a parte che il CHAP e' piu' sicuro
perche' cripta tutte le password che scambia, mentre il piu' utilizzato sembra
essere il PAP.
In funzione del metodo di autenticazione che utilizza il provider, dovrete compilare
opportunamente i file /etc/ppp/pap-secrets o /etc/ppp/chap-secrets, due file
che ammettono lo stesso formato:
client server secret IP-address
L'ultimo parametro e' inutile per chi chiama. Gli altri tre corrispondono, nell'ordine
a :
login nome-del-server-che-risponde password
Nel secondo campo consiglio sempre di lasciare un *, dato che non sempre, con
i centralini a ricerca automatica, risponde sempre lo stesso server.
Gli altri due campi dipendono dal provider, ma non sempre sono la login e la
password assegnati.
2. Configurazione per i diversi provider
==========================================
La configurazione in funzione dei vari provider passa attraverso l'aggiornamento
di due file e la creazione di uno script di collegamento. Il primo dei due file
da aggiornare e' /etc/hosts dove vanno aggiunti il proprio IP assegnato qualora
fossimo sicuri che sia sempre quello (tipo Inet) oltre all'IP numerico del proprio
provider seguito dall'indirizzo alfabetico.
Il secondo file da aggiornare e' /etc/resolv.conf che da istruzioni a Linux
circa la traduzione degli indirizzi alfabetici in indirizzi numerici. Infatti
oltre al campo che contiene il dominio di appartenenza del proprio computer
(ad esempio : domain vol.it) va inserito anche l'indirizzo numerico del nameserver
a cui chiedere la conversione (ad esempio : nameserver 198.23.21.1). Spesso
l'indirizzo del nameserver coincide con quello del provider inserito nel file
/etc/hosts. Qualora si utilizzi un provider non incluso in questo documento,
tentate di indicare il nameserver con la tecnica indicata sopra.
Lo script da creare e' il sopracitato /etc/ppp/chat-script che istruisce un
piccolo programmino (chat) tramite una semplice sintassi "aspetta-la-sequenza-di-caratteri"
"manda-la-sequenza-di-caratteri" a comporre il numero di telefono e compilare
automaticamente quelle richieste che talvolta precedono l'accesso al servizio
PPP o SLIP. Ricordatevi che /etc/ppp/chat-script e' un file che va eseguito
e quindi deve avere l'autorizzazione ad essere eseguito. Per essere sicuri,
digitate chmod 777 /etc/ppp/chat-script dopo che lo avete creato.
2.1. Video On Line
------------------
Nel file /etc/hosts va inserito il seguente campo
194.20.32.1 vol.it
Nel file /etc/resolv.conf vanno inseriti i seguenti campi
domain vol.it
nameserver 194.20.32.1
Video On Line supporta l'IP dinamico e tutti i modem sono in attesa per essere
collegati direttamente al servizio PPP con autenticazione PAP con la propria
login come campo client e la propria password come secret. Quindi nel file /etc/ppp/pap-secrets
dovrete inserire il seguente campo :
*
Lo script di connessione /etc/ppp/pap-secrets e' il seguente :
#! /bin/sh
chat -v -t60 "" "ATDP-numero-di-telefono" "CONNECT"
2.2. Italia On Line
-------------------
Italia On Line NON SUPPORTA VOLONTARIAMENTE Linux. Infatti ha scelto
di utilizzare le stesse chiavi di autenticazione PAP per TUTTI gli utenti in
quanto la dirigenza non si e' fidata a consegnare nelle mani di Windows NT (il
software che utilizzano tutt'ora e che e' causa di gran parte dei problemi)
un database PAP di 30.000 utenti. Cosi' fino a poco tempo fa tutto funzionava
semplicemente inserendo nel file /etc/ppp/pap-secret :
marco * marco
Stessa login e password per tutti (Marco e' il nome del programmatore del client
di IOL), mentre ora il controllo e' affidato al server al quale si e' connessi
il quale controlla che sui sistemi connessi giri il client di IOL e verifica
i dati che sono stati inseriti nel client al momento della connessione. Qualora
il client non stia girando, dopo 5 minuti la linea viene buttata giu'.
Cosi' per Linux non c'e' niente da fare, o meglio ci sarebbe una soluzione in
quanto esite un programmino commissionato da Italia On Line che gira sotto tutti
gli Unix e che emula la presenza del client di IOL, ma che non e' stato ancora
distribuito malgrado sia pronto da prima dello SMAU '95.
Se volete che Italia On Line SUPPORTI LINUX, mandate un email al signor Patrizio
Colombo ptrz.clmb@iol.it, responsabile di IOL per l'hot line. Lui è a conoscenza
dell'esistenza del software Linux, e, caldamente invitato delle nostre email,
potrebbe aiutarci a far attivare anche il supporto per Linux. Sia ben chiaro,
NON E' LUI IL RESPONSABILE DELL'OSTRACISMO DI IOL VERSO LINUX, anzi, ma essendo
IOL un provider su larga scala, non può permettersi di lanciare il sasso e ritirare
la mano, ma, qualora intenda supportare Linux, deve farlo in modo completo,
organizzando software, help on line, etc. etc., ovvero muovere un organizzazione
giustificabile solo da determinati numeri di utenti.
Nel frattempo spiego i settaggi qualora qualcuno volesse anche solo tentare
la connessione per pochi minuti.
Nel file /etc/hosts va inserito il seguente campo
194.20.24.1 iol.it
Nel file /etc/resolv.conf vanno inseriti i seguenti campi
domain iol.it
nameserver 194.20.24.2
Lo script di connessione /etc/ppp/pap-secrets e' il seguente :
#! /bin/sh
chat -v -t60 "" "ATDP-numero-di-telefono" "CONNECT"
2.3. Micronet
-------------
Micronet non supporta nessun sistema di autenticazione in quanto prima di accedere
alla connessione PPP bisogna aver inserito login e password.
Nel file /etc/hosts va inserito il seguente campo
194.20.45.1 micronet.it
Nel file /etc/resolv.conf vanno inseriti i seguenti campi
domain micronet.it
nameserver 194.20.45.1
Lo script di connessione /etc/ppp/pap-secrets e' il seguente :
#! /bin/sh
chat -v -t60 "" "ATDP-numero-di-telefono" "CONNECT" "" "rname:"
"proprio-user-name" "sword:" "propria-password" "net.it>" "ppp"
Attenzione !
A collegamento avvenuto, qualora abbiate attive le opzioni di debug, noterete
che sistematicamente appaiono due informazioni riguardanti l'LCP. Noterete che
sono una 'recv REQ', una richiesta da parte del server, seguita da una 'send
REP'. Non ho ancora capito se e' a causa di qualche settaggio che va aggiunto
o se e' una procedura normale. Ho comunque verificato di persona che il collegamento
non presenta nessun problema, anche per ore di seguito.
2.4. Inet
---------
Inet assegna un IP ad ogni utente, quindi non bisogna mettere l'opzione noipdefault
nel file /etc/ppp/options. Non supporta sistemi di autenticazione in quanto
prima di accedere alla connessione PPP si deve passare attraverso due login.
Nel file /etc/hosts vanno inseriti i seguenti campi
194.20.8.4 inet.it
.inet.it
Nel file /etc/resolv.conf vanno inseriti i seguenti campi
domain inet.it
nameserver 194.20.8.4
Lo script di connessione /etc/ppp/pap-secrets e' il seguente :
#! /bin/sh
chat -v -t60 "" "ATDP-numero-di-telefono" "CONNECT" "" "rname:" "proprio-user-name"
"sword:" "prima-password" "net.it>" "ppp" "tname:" "proprio-user-name" "sword"
"seconda-password" "system"
2.5. Nettuno
------------
Nettuno assegna un IP ad ogni utente, quindi non bisogna mettere l'opzione noipdefault
nel file /etc/ppp/options. Non supporta sistemi di autenticazione in quanto
prima di accedere alla connessione PPP si deve passare attraverso un login.
Nel file /etc/hosts vanno inseriti i seguenti campi
.mo.nettuno.it
Nel file /etc/resolv.conf vanno inseriti i seguenti campi
domain mo.nettuno.it
nameserver 193.43.2.1
nameserver 130.186.1.53
Lo script di connessione /etc/ppp/pap-secrets e' il seguente :
#! /bin/sh
chat -v -t60 "" "ATDP-numero-di-telefono" "CONNECT" "" "rname:" "proprio-user-name"
"ssword" "propria-password" ">" "ppp" "ostname" "proprio-IP" "word" "password-per-ppp"
2.6. Energy
-----------
Nel file /etc/resolv.conf vanno inseriti i seguenti campi
domain energy.it
nameserver 194.20.155.1
Lo script di connessione /etc/ppp/pap-secrets e' il seguente :
#! /bin/sh
chat -v -t60 "" "ATDP-numero-di-telefono" "CONNECT" 3. Contributi
=============
Si ringrazia per la preziosa collaborazione :
* Riccardo Castello rcastel@micronet.it
* Paolo Dell'Aquila pdella@iol.it
* Marco 'Markino' Sacchi markino@energy.it
4. Conclusione
==============
Chiunque mi possa dare un mano, il mio indirizzo e' :
flash.egon@iol.it.
Aspetto informazioni sugli altri provider italiani per aggiornare il documento,
dati di ogni genere come script di connessione per il Trumpet o per il Distinct
assieme al file socket.ini che riporta l'indirizzo del nameserver (mi raccomando
il nameserver !).
Aspetto anche conferme che le istruzioni che ho dato sono corrette.
Non ho provato fisicamente tutti i provider. Presumo di aver scritto anche qualche
imprecisione, spero che siate clementi nel correggermi.
Attendo anche eventuali domande in seguito alle quali migliorero' l'HOWTO nelle
sue parti piu' oscure e grazie alle quali scrivero' anche una FAQ da allegare
a questo HOWTO.
Grazie in anticipo a tutti per la collaborazione !!!
Alberto Menegazzi
flash.egon@iol.it
,,,
(0^0)
________________________oOO__( )__OOo__
Linux, the choice of the GNU generation
_______________________________________
|