Page suivante Page précédente - Table des matières

3. Configuration

3.1 Exemple

On suppose que le modem est connecté au port COM2 , l'adresse locale est 'Loc_Ip' , et l'adresse Ip distante est 'Rem_Ip' . Nous voulons utiliser 576 pour notre MTU . Le script /etc/ppp/options.ttyS1 devrait maintenant ressembler à :

crtscts
mru 576
mtu 576
passive
Loc_Ip:Rem_Ip
-chap
modem
-pap
persist

Donc , si le système local est 192.168.1.1 , et le système distant est 10.1.1.1, alors /etc/ppp/options.ttyS1 devrait être sur le système local :

crtscts
mru 576
mtu 576
passive
192.168.1.1:10.1.1.1
-chap
modem
-pap
persist

et sur le système distant ...

crtscts
mru 576
mtu 576
passive
10.1.1.1:192.168.1.1
-chap
modem
-pap
persist

Si vous utiliser beaucoup telnet pendant un transfert de fichier (par FTP ou par Web ) ,vous pouvez avoir envie d'utiliser un plus petit MRU et MTU , tel que 296 . Cela améliorera le temps de reponse du systéme distant.

Si cela vous importe peut , vous pouvez les mettre à la valeur 1500.

L'option "passive" limite le nombre de tentatives de (re)connexion. l'option "persist" maintiendra pppd en cas de déconnexion ou lorsqu'il ne peut se connecter en premier lieu .

3.2 Scripts

Le script /usr/local/sbin/test-Rem _Host-ppp est appelé par le script qui configure votre carte réseau ( /etc/init.d/network sur une Debian , test-Rem _Host-ppp est à remplacer par le nom des hôtes distants ) . Ce script vérifie l'existence de l'interface distante , et essayera de lancer pppd dans la négative . Il commence avec un sleep , vérifiez bien que le processus de boot configure bien les ports COM en premier .

#!/bin/bash
/usr/bin/sleep 30
while true
do
 if ! ( /sbin/ifconfig | grep Rem_Ip> /dev/null )
 then
 # PPP gone
 logger "Rem_Host PPP gone ; restarted"
 /usr/local/sbin/PRem_Host.sh &     fi
 sleep 300
done

Vous pouvez bien sûr enlever le 'sleep 300' , et la boucle do-done et lancer le tout avec cron plutôt . Certaines personnes lancent pppd de /etc/inittab , mais je n'ai jamais essayé.

La route par défaut peut être initialisée avec l'option defaultroute ou avec le script /etc/ppp/ip-up .

 #!/bin/bash
case $2 in
 /dev/ttyS1)
 /sbin/route add -net 0.0.0.0 gw Rem_Ip netmask 0.0.0.0
 ;;
esac

Ip-up peut aussi être utilisé pour synchroniser votre horloge à l'aide de netdate .

Bien sur , la route définit dans Ip-up n'est pas nécessairement la route par défaut . Votre Ip-up définit la route vers le réseau distant alors que script ip-up sur le système distant spécifie la route vers votre réseau . Si votre réseau est 198.168.1.0 , et votre interface pppd 192.168.1.1 , le script ip-up sur la machine distante ressemble a ca :

#!/bin/bash
case $2 in
 /dev/ttyS1)
 /sbin/route add -net 192.168.1.0 gw 192.168.1.1 netmask 255.255.255.0
 ;;
esac

Les bits 'case $2' et '/dev/ttyS1)' sont là au cas ou vous utiliseriez plus d'une liaison ppp . Ip-up sera lancé à chaque fois qu'une connexion apparaitra , mais seulement la partie entre '/dev/ttySx)' et ';;' sera exécuté , définissant la bonne route pour le bon ttyS. Vous trouverez plus d'information sur le routage dans le NET-3-HOWTO , dans la section qui y est consacré.

Bien que l'option 'persist ' puisse le rendre superflue , le démon pppd peut aussi être relancé en utilisant ip-down;

#!/bin/bash
case $s in
 /dev/ttyS1)
 /usr/bin/sleep 30
 /usr/local/sbin/PRem_Host.sh &
 ;;
esac

Le pppd est lancé grâce au script /usr/local/sbin/PRem_Host.sh :

#!/bin/bash
( /usr/sbin/pppd /dev/ttyS1 115200 crtscts Loc_Ip:Rem_Ip persist ) &

Je suppose que certaines options des lignes de commandes rendent certaines des options énnoncées superflues. Mais il vaut mieux être prudent ,alors desolé.

3.3 Test

Testez le tout de la même maniére qu'avec les modems . Si ca marche , prenez votre vélo et allez brancher votre modem distant à la partie distante de votre liaison.


Page suivante Page précédente - Table des matières