10.2.4 Configurare un'interfaccia PPP
Se accedete ad Internet attraverso un modem connesso alla linea telefonica
analogica, allora la connessione viene negoziata mediante il Protocollo
Punto-a-Punto (PPP). Si accede a tali connessioni come interfacce di rete
ppp0, ppp1 e cos� via.
L'interfaccia PPP viene gestita dal demone pppd
, fornito dal
pacchetto ppp
. Ergo, per l'utente, configurare l'interfaccia PPP
significa configurare pppd
.
10.2.4.1 Configurare pppd
manualmente
Affinch� una connessione di rete venga stabilita, si deve aprire una porta di
comunicazione (in genere seriale), devono essere dati dei comandi ad un
dispositivo di comunicazione (in gener un modem), si deve fare il numero
telefonico, ci si deve autenticare presso un demone PPP esterno, si deve creare
un'interfacia PPP e le tabelle di reindirizzamento devono essere modificate
cos� che il traffico venga inviato sulla connessione. pppd
fa
tutto ci� e, di conseguenza, ha un elenco molto lungo di opzioni operative.
Esse sono descritte in pppd(8)
.
Su un sistema Debian, le opzioni globali vengono impostate in
/etc/ppp/options
. Quelle specifiche per l'utente in
~/.ppprc
. Quelle che dipendono dalla porta utilizzata vengono
immagazzinate in /etc/ppp/options.nomeporta
. Per
esempio, ammettiamo che abbiate due modem—uno interno, Lucent LT modem, a
cui si accede tramite /dev/LT-modem ed uno esterno, a cui si accede tramite
/dev/ttyS0. Create i seguenti file di opzioni.
# cat > /etc/ppp/options.LT-modem <<EOF
115200
init "/usr/sbin/chat -f /etc/chatscripts/setup-LT-modem"
EOF
# cat > /etc/ppp/options.ttyS0 <<EOF
115200
init "/usr/sbin/chat -f /etc/chatscripts/setup-ttyS0"
EOF
Essi fanno riferimento ai seguenti script chat. Il primo,
/etc/chatscripts/setup-LT-modem
.
ABORT ERROR
'' ATZ
OK 'ATW2X2 S7=70 S11=55'
OK AT
Il secondo /etc/chatscripts/setup-ttyS0
.
ABORT ERROR
'' ATZ
OK 'ATL1M1Q0V1W2X4&C1&D2 S6=4 S7=70 S11=55 S95=63 S109=1 +FCLASS=0'
OK AT
Il contenuto di questi file dipende dal vostro hardware, naturalmente.
Le opzioni possono essere anche date come argomenti di pppd
.
In Debian pppd
vien lanciato in genere dal comando
pon
. Quando si usa pon
, il primo argomento chiama un
file in /etc/ppp/peers/
che viene letto anche da
pppd
. [
56] Qui �
dove impostate le opzioni specifiche per un particolare peer—per esempio
un particolare Internet Service Provider (ISP).
Supponiamo, per esempio, che viaggiate tra Amstrdam e Den Haag. In ciascuna
citt� avete accesso a due ISP—Planet e KPN. Per prima cosa, create un
file di opzioni base per ciascun ISP.
# cat > /etc/ppp/peers/KPN <<EOF
remotename KPN
noauth
user kpn
noipdefault
ipparam KPN
EOF
# cat > /etc/ppp/peers/Planet <<EOF
remotename Planet
auth
user [email protected]
noipdefault
mru 1000
mtu 1000
ipparam Planet
EOF
Questi file impostano le opzioni che differiscono tra i due ISP. Quelle comuni
ai due ISP possono essere messe in /etc/ppp/options
o in uno dei
file specifici per interfaccia, se appropriato.
Ora create i file per ciascun ISP, in ciascuna citt�. Nel nostro esempio
l'unica differenza fra connettersi ad un ISP in un luogo e in un altro sta nel
chatscript richiesto. (Essi sono diversi, poich� i numeri di accesso
telefonico sono diverso.)
# cat > /etc/ppp/peers/KPN-Amsterdam <<EOF
connect "/usr/sbin/chat -v -f /etc/chatscripts/KPN-Amsterdam"
file /etc/ppp/peers/KPN
EOF
# cat > /etc/ppp/peers/KPN-DenHaag <<EOF
connect "/usr/sbin/chat -v -f /etc/chatscripts/KPN-DenHaag"
file /etc/ppp/peers/KPN
EOF
# cat > /etc/ppp/peers/Planet-Amsterdam <<EOF
connect "/usr/sbin/chat -v -f /etc/chatscripts/Planet-Amsterdam"
file /etc/ppp/peers/Planet
EOF
# cat > /etc/ppp/peers/Planet-DenHaag <<EOF
connect "/usr/sbin/chat -v -f /etc/chatscripts/Planet-DenHaag"
file /etc/ppp/peers/Planet
EOF
Le direttive file includono ciascuno dei file mostrati prima. La
direttiva connect specifica il comando che usa pppd
per eseguire la connessione. In genere si usa il programma chat
per ci�, adattando il chatscript all'ISP. Ecco quelli per Den Haag; quelli per
Amsterdam possono essere simili, tranne che per il numero telefonico, oppure
possono differire se l'ISP offre l� i servizi attraverso un'altra compagnia.
# cat > /etc/chatscripts/KPN-DenHaag <<EOF
ABORT BUSY
ABORT 'NO CARRIER'
ABORT VOICE
ABORT 'NO DIALTONE'
ABORT 'NO DIAL TONE'
ABORT 'NO ANSWER'
ABORT ERROR
OK-AT-OK ATDT 0676012321
CONNECT \d\c
EOF
# cat > /etc/chatscripts/Planet-DenHaag <<EOF
ABORT BUSY
ABORT 'NO CARRIER'
ABORT VOICE
ABORT 'NO DIALTONE'
ABORT 'NO DIAL TONE'
ABORT 'NO ANSWER'
ABORT ERROR
OK-AT-OK ATDT 0676002505
CONNECT \d\c
EOF
Per potervi connettere a questi ISP, avete bisogno dei nomi del client e delle
password che pppd
possa fornire al peer a richiesta. Questa
informazione � contenuta o in /etc/ppp/pap-secrets
(se si usa il
protocollo PAP) o in /etc/ppp/chap-secrets
(se � CHAP). Sebbene
CHAP sia pi� sicuro, PAP � ancora pi� largamente usato. Siccome questi file
contengono dei dati segreti, gruppo e resto del mondo non dovrebbero avere
permessi in lettura o scrittura. Il formato di questi file � spiegato in
pppd(8)
. Un "secret" (terzo campo) viene cercato nel
file trovando il nome del client (primo campo) e/o il nome del server (secondo
campo). Quando ci si collega ad un ISP, in genere non si conosce il nome del
server, cos� si fornisce invece il nome del client; ci� viene fatto nelle righe
user in peers/KPN
e peers/Planet
sopra.
# client name server name secret
kpn * kpn
[email protected] * myfavoritepet
Vedere /usr/share/doc/ppp/README.Debian.gz
per maggiori
informazioni.
10.2.4.2 Configurare pppd
con pppconfig
Un modo veloce per configurare pppd
� tramite il programma
pppconfig
, fornito dal pacchetto omonimo. pppconfig
imposta i file come quelli sopra, dopo aver chiesto all'utente alcune domande,
tramite un'interfaccia a menu.
10.2.4.3 Configurare un'interfaccia PPP con wvdial
Un approccio diverso all'uso di pppd
� di lanciarlo da
wvdial
, fornito dal pacchetto wvdial
. Invece di far
lanciare a pppd
chat
per aprire e negoziare la
connessione, wvdial
esegue il numero e la negoziazione iniziale,
poi lancia pppd
per fare il resto. Dando solo numero telefonico,
username e password a wvdial
si ha successo nel compiere la
connessione nella maggior parte dei casi.