Leased_Line_mini_HOWTO

Rob Van der putten, rob@sput.dsl.nl

v1.2 , Mars 1998
Ce document traite de la configuration de modem et de pppd dans le cas d'une liaison composée de deux paires torsadées .

1. Introduction

1.1 Ce document ...

Le terme "leased line" est ici traduit par "ligne spécialisée". C'est ce qui me semblait le plus aproprié. Cette traduction étant loin d'être parfaite , n'hésitez pas à m'envoyer vos remarques à : cappeau@dil.univ-mrs.fr .

Ce document explique comment configurer votre modem et pppd pour utiliser une liaison spécialisée composée de deux paires torsadées .

Il ne traite ni de SLIP , ni de comment se procurer et/ou installer pppd , ni de communication synchrone , ou de bandes courte distance.

1.2 Qu'est ce qu'une " leased line "?

Toute liaison de communication , permanente ,point à point , louée par une compagnie de télécom ou une organisation similaire. La liaison spécialisée peut utiliser des câbles , tel que des paires torsadées , et toute sorte de matériels , tels que bobines , transformateurs , amplificateurs , et régénérateurs.

1.3 Prerequis

Vous devez déjà avoir pppd tournant sur votre système , ainsi que minicom ( ou un programme similaire ) pour configurer vos modems .

2. les modems

Une liaison spécialisée n'est pas connectée à un central téléphonique et ne fournit donc , ni alimentation CC , ni tonalité, ni signal occupé, ni sonnerie . Cela signifie que vos modems sont livrés à eux même , et doivent être capables de gérer cette situation.

Vous devez avoir deux modems externes identiques , supportant aussi bien une ligne spécialisée que le "dumb mode" . Vérifiez que vos modems en sont capables et assurez vous qu'ils sont correctement documentés.

Vous aurez aussi besoin de :

2.1 Configuration

Configurez les modems à leur plus grande vitesse possible : 57600 bps pour un 14400 , et 115000 bps à partir d'un 28800 . Une fois le modem configuré en "dumb mode" , il utilisera la vitesse a laquelle il a été configuré. Configurez le modem , et son logiciel (Minicom) pour utiliser les paramètres suivant.

Vérifiez le avec AT &V ou AT &Ix (voir la documentation du modem)

Trouver comment mettre votre modem en "dumb mode" , et , plus important , comment l'en sortir , car le modem ne peut être reconfiguré que si il n'est pas en "dumb mode" .

Maintenant, configurez le comme suit :

Ecrivez la configuration dans la mémoire volatile (&W).

2.2 Test

Maintenant , connectez les modems à 2 ordinateurs en utilisant les câbles RS232 , et connectez les modems entre eux grace aux cordons RJ11 . Utilisez un programme tel que minicom (Linux), procom ou Telix (DOS) sur chacun des ordinateur pour tester les modems . Vous devez être capable de taper un texte d'un ordinateur vers l'autre et vice et versa . Si vous avez des déchets à l'écran, vérifiez la vitesse du port COM et les autres paramètres . Maintenant déconnectez , et reconnectez le câble RJ11 . Attendez que la connexion s ' établisse d'elle même . Déconnectez et reconnectez les câbles RS232 , allumez , éteignez les modems, arrêtez et relancer minicom. Les modems doivent toujours se reconnecter à la vitesse la plus haute possible (certains modems ayant une LED pour indiquer la vitesse). Vérifier bien qu'ils ignorent le caractère ESC (+++) . Il faudra le désactiver si nécessaire .

Si tout marche , vous voudrez peut être reconfigurer vos modems ; supprimer le son du modem distant (M0) , mettez celui du local au volume le plus bas (L1).

Exemples :

        Hi-Tech
    
        Originate (local):
                ATL1 &C1 &D3 &L2%D1 &W &W1
          
        Answer (remote):
                 ATM0 &C1 &D3 &L2%D1S0=1 &W &W1
          
        Tron DF
        
        

Le caractère ESC peut être désactivé en fixant S2 > 127;

        
         Originate:
                 ATL1 &L1Q1 &C1 &D3S2=171\D1 &W
          
        Answer:
                ATM0 &L2Q1 &C1 &D3S0=1S2=171\D1 &W

        

2.3 Pppd

Vous aurez besoin d'un pppd (point to point protocol deamon , un démon qui gère le protocole point à point) , et d'une bonne connaissance de son fonctionnement . Consulter le RFC le concernant , ou le Linux pppd HOWTO si nécessaire .

Puisque vous n'allez pas utiliser une procédure de login , vous n'utiliserez pas (m)getty , et n'aurez pas besoin d'un utilisateur associé au pppd qui contrôle la liaison . Vous n'allez pas dialoguer , vous n'aurez donc pas non plus besoin d'un script pour le chat . En fait , le circuit et la configuration que vous venez juste de construire , ressemble assez a un câble null modem .

Pour une connexion fiable , votre setup doit remplir les critères suivant :

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.