<!doctype linuxdoc system>


<article>

<title>Leased_Line_mini_HOWTO
<author>Rob Van der  putten, <htmlurl url = "mailto:rob@sput.dsl.nl"
				name = "rob@sput.dsl.nl">
<date> v1.2 , Mars 1998

<abstract>

	Ce document traite de la configuration de modem et de pppd
	dans le cas d'une liaison compos&eacute;e de deux paires 
	torsad&eacute;es .

</abstract> 

<toc>

<sect>Introduction<label id="sec-intro">

<p>

<sect1>Ce document ...

	<p>	

	
	Le terme "leased line" est ici traduit par "ligne sp&eacute;cialis&eacute;e".
	C'est ce qui me semblait le plus apropri&eacute;. Cette traduction 
	&eacute;tant loin 
	d'&ecirc;tre parfaite , n'h&eacute;sitez pas &agrave;
	 m'envoyer vos remarques &agrave :  <htmlurl url
		= "mailto : cappeau@dil.univ-mrs.fr " name = "
	cappeau@dil.univ-mrs.fr "> .

	Ce document explique comment configurer votre modem et pppd
	pour utiliser une liaison sp&eacute;cialis&eacute;e compos&eacute;e de deux 
	paires torsad&eacute;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.




<sect1>Qu'est ce qu'une " leased line "?
	
	<p>
	
	Toute liaison de communication , permanente ,point &agrave point , 
	lou&eacute;e par une compagnie de t&eacute;l&eacute;com ou une 
	organisation similaire.
	La liaison sp&eacute;cialis&eacute;e peut utiliser des c&acirc;bles , 
	tel que des paires torsad&eacute;es , et toute sorte de mat&eacute;riels 
	, tels que bobines , transformateurs , amplificateurs , et 
 	r&eacute;g&eacute;n&eacute;rateurs.  
	

<sect1>Prerequis 

	<p>
	
	Vous devez d&eacute;j&agrave avoir pppd tournant sur votre 
	syst&egrave;me , ainsi que minicom ( ou un programme similaire )  
	pour configurer vos modems .

<sect>les modems

	<p>
	
	Une liaison  sp&eacute;cialis&eacute;e n'est pas connect&eacute;e 
	&agrave un central t&eacute;l&eacute;phonique 
	et ne fournit donc , ni alimentation CC , ni tonalit&eacute, 
	ni signal occup&eacute, ni sonnerie . 
	Cela signifie que vos modems sont livr&eacute;s &agrave 
	eux m&ecirc;me , et doivent &ecirc;tre capables de g&eacute;rer 
	cette situation. 
	
	Vous devez avoir deux modems externes identiques , supportant aussi
	bien une ligne sp&eacute;cialis&eacute;e que le "dumb mode" .  
	V&eacute;rifiez que vos modems en sont capables et assurez vous 
	qu'ils sont correctement document&eacute;s. 
	
	Vous aurez aussi besoin de :
	<itemize>	
	<item> 2 c&acirc;bles RS232 blind&eacute;s . Le blindage doit &ecirc;tre 
	connect&eacute; &agrave; l'enveloppe de la prise (pas &agrave; la broche 1) 
		de chaque cot&eacute; .
	<item>Une prise RS232 utile pour les tests. 
	<item>2 cordon RJ11 , un pour chaque extr&eacute;mit&eacute; de la ligne 
			sp&eacute;cialis&eacute;e.
	<item>comprendre les commandes 'AT' de base 
	</itemize>
<sect1>Configuration

	<p>
	
	Configurez les modems &agrave leur plus grande  vitesse possible : 
	57600 bps
	pour un 14400 , et 115000 bps &agrave partir d'un 28800 . 
	Une fois le modem 
 	configur&eacute; en "dumb mode" , il utilisera la vitesse a laquelle il a 
 	&eacute;t&eacute; configur&eacute;. 
 	Configurez le modem , et son logiciel (Minicom) pour utiliser les 
 	param&egrave;tres suivant.
 	 <itemize>
	<item>taux de transfert fixe (en baud , pas d'auto baud)
	<item>Controle du flot mat&eacute;riel bidirectionnel RTS-CTS
	<item>8 bits, sans parit&eacute; , 1 bitstop
	<item>Le modem doit produire le VRAI DCD statuts
	<item>le modem NE DOIT PAS ignorer le DCD statuts(&amp;D2 ou &amp;D3)
	</itemize>
	V&eacute;rifiez le avec AT &amp;V ou AT &amp;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 &ecirc;tre 
	reconfigur&eacute; que si il n'est pas en "dumb mode" .
	
	Maintenant, configurez le comme suit :
	<itemize>
		<item> reset sur le commutateur DTR  (&amp;D3 , c'est parfois
			un registre S)
		<item>"leased line mode"(&amp;Lx , voir documentation)
		<item>le modem distant "auto answer"(S0 =1) , le modem local
			"originate" (S0 = 0)
		<item>Desactiver les codes de r&eacute;sultat (Q1) , parfois le
			dumb le fait pour vous . 
		<item>Dumb mode (c'est parfois un jumper) 
			Dans ce mode, les commandes AT sont ignor&eacute;es.
			Parfois , vous devrez d&eacute;sactiver le caract&egrave;re esc 
			aussi.
	</itemize>
	Ecrivez la configuration dans la m&eacute;moire volatile (&amp;W).
	
	
<sect1>Test

	<p>	

	Maintenant , connectez les modems &agrave; 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 &ecirc;tre capable de taper un texte d'un ordinateur vers l'autre
	et vice et versa . Si vous avez des d&eacute;chets &agrave; l'&eacute;cran, v&eacute;rifiez la
	vitesse du port COM et les autres param&egrave;tres . 
	Maintenant d&eacute;connectez , et reconnectez le cāble RJ11 . Attendez que
	la connexion s ' &eacute;tablisse d'elle m&ecirc;me . D&eacute;connectez et reconnectez
	les cābles RS232 , allumez , &eacute;teignez les modems, arr&ecirc;tez et relancer 
	minicom. 
	Les modems doivent toujours se reconnecter &agrave; la vitesse la plus haute 
 	possible (certains modems ayant une LED pour indiquer la vitesse).
	V&eacute;rifier bien qu'ils ignorent le caract&egrave;re ESC (+++) . Il faudra le 
	d&eacute;sactiver si n&eacute;cessaire .
	
	Si tout marche , vous voudrez peut &ecirc;tre reconfigurer vos modems ; 
	supprimer le son du modem distant (M0) , mettez celui du local au 
	volume le plus bas (L1).

	Exemples :

	<tscreen><verb>
	Hi-Tech
    
   	Originate (local):
          	ATL1 &ero;C1 &ero;D3 &ero;L2%D1 &ero;W &ero;W1
          
   	Answer (remote):
         	 ATM0 &ero;C1 &ero;D3 &ero;L2%D1S0=1 &ero;W &ero;W1
          
    	Tron DF
    	
    	</verb></tscreen>
   	
   	Le caract&egrave;re  ESC peut &ecirc;tre d&eacute;sactiv&eacute; en fixant  S2 > 127;
   
  	<tscreen><verb>
  	
  	 Originate:
         	 ATL1 &ero;L1Q1 &ero;C1 &ero;D3S2=171\D1 &ero;W
          
   	Answer:
          	ATM0 &ero;L2Q1 &ero;C1 &ero;D3S0=1S2=171\D1 &ero;W

	</verb></tscreen>

<sect1>Pppd

	<p>

	Vous aurez besoin d'un pppd (point to point protocol deamon , un d&eacute;mon
	qui g&egrave;re le protocole point &agrave; point) , et d'une bonne connaissance de 
	son fonctionnement . Consulter le RFC le concernant , ou le 
	<url url="http://www.freenix.org/linux/HOWTO/" name=" Linux pppd 
	HOWTO "> si n&eacute;cessaire .
	
	Puisque vous n'allez pas utiliser une proc&eacute;dure de login , vous 
	n'utiliserez pas (m)getty , et n'aurez pas besoin d'un utilisateur
	associ&eacute; 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&egrave;res	
	suivant :

	<itemize>
		<item>Peut apr&egrave;s avoir booter votre syst&egrave;me , pppd doit 
	envoyer le signal DTR sur le port RS232 , attendre que le DCD arrive
	, et n&eacute;gocier la connexion .
		<item>Si le syst&egrave;me distant est mort , pppd doit attendre 
	jusqu'&agrave; ce qu'il fonctionne &agrave nouveau .
		<item>Si la connexion s'&eacute;tablit et s'interrompt ensuite, pppd
	doit r&eacute;initialiser le modem (en mettant DTR au niveau bas , puis haut)
	puis essayer de se reconnecter .	 
		<item>Si la qualit&eacute; de la connexion  se d&eacute;t&eacute;riore trop , pppd
		doit r&eacute;initialiser le modem , et r&eacute;-etablir la connexion.
		<item>Si le processus contrōlant la connexion , ici pppd , 
	meurt , un watchdog doit le relancer. 
	</itemize>

<sect> Configuration 

<sect1>Exemple 	
	<p>

	On suppose que le modem est connect&eacute; 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 &agrave; : 

<tscreen><verb>

crtscts
mru 576
mtu 576
passive
Loc_Ip:Rem_Ip
-chap
modem
-pap
persist
	
</verb></tscreen>


	Donc , si le syst&egrave;me local est 192.168.1.1 , et le syst&egrave;me distant est 
10.1.1.1, alors /etc/ppp/options.ttyS1 devrait &ecirc;tre sur le syst&egrave;me local :

<tscreen><verb>

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

</verb></tscreen>

et sur le syst&egrave;me distant ...

<tscreen><verb>

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


</verb></tscreen>

	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&eacute;liorera le temps de reponse du
	syst&eacute;me distant.
	
	Si cela vous importe peut , vous pouvez les mettre &agrave; la valeur 1500.	

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

<sect1>Scripts
	<p>
	Le script /usr/local/sbin/test-Rem _Host-ppp est appel&eacute; par le script qui configure
votre carte r&eacute;seau ( /etc/init.d/network sur une Debian  , test-Rem _Host-ppp est &agrave; remplacer par
le nom des hōtes distants )
. Ce script v&eacute;rifie l'existence de l'interface distante
	, et essayera de lancer pppd dans la n&eacute;gative . Il commence avec un
	sleep , v&eacute;rifiez bien que le processus de boot configure bien les 
	ports COM en premier .
	
<tscreen><verb>
	
#!/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 &ero
     fi
     sleep 300
done

</verb></tscreen>

	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&eacute;.

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

<tscreen><verb>

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

</verb></tscreen>

	Ip-up peut aussi &ecirc;tre utilis&eacute; pour synchroniser votre horloge &agrave; l'aide 
	de netdate . 
	
	Bien sur , la route d&eacute;finit dans Ip-up  n'est pas n&eacute;cessairement la 
	route par d&eacute;faut . Votre Ip-up d&eacute;finit la route vers le r&eacute;seau distant
	alors que script ip-up sur le syst&egrave;me distant sp&eacute;cifie la route vers 
	votre r&eacute;seau . Si votre r&eacute;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 :

<tscreen><verb>

#!/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

</verb></tscreen>

Les bits 'case &dollar;2' et '/dev/ttyS1)'  sont l&agrave; au cas ou vous utiliseriez plus
   d'une liaison ppp . Ip-up sera lanc&eacute; &agrave; chaque fois qu'une 
   connexion apparaitra , mais seulement 
   la partie entre  '/dev/ttySx)' et  ';;' sera ex&eacute;cut&eacute; , d&eacute;finissant  la bonne route pour le
bon ttyS.
   Vous trouverez plus d'information sur le routage dans le  <url url=
   "http://www.freenix.org/linux/HOWTO/" name=" NET-3-HOWTO "> , dans la section 
qui y est consacr&eacute;.
   
   Bien que l'option  'persist '  puisse le rendre superflue , le d&eacute;mon pppd peut 
   aussi &ecirc;tre relanc&eacute; en utilisant  ip-down;

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

</verb></tscreen>
 
   Le  pppd est lanc&eacute; gr&acirc;ce au script  /usr/local/sbin/PRem_Host.sh :

<tscreen><verb>

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

</verb></tscreen>

   Je suppose que certaines options des lignes de commandes rendent certaines 
   des options &eacute;nnonc&eacute;es superflues. Mais il vaut mieux &ecirc;tre
   prudent ,alors desol&eacute;.
   
<sect1>  Test 
  
   <p>

   Testez le tout de la m&ecirc;me mani&eacute;re qu'avec les modems .
   Si ca marche , prenez votre v&eacute;lo  et allez brancher votre modem distant &agrave; 
   la partie distante de votre liaison.

	
</article>
