Sophie

Sophie

distrib > * > 2010.0 > * > by-pkgid > a412ceb851151854794ced2a242192bb > files > 2685

howto-html-fr-20080722-1mdv2010.0.noarch.rpm

<title>Questions et r&eacute;ponses</title>
<h1>3 <a name="s3"> Questions et r&eacute;ponses </h1>
<p> <a href="PPP-FAQ.html#toc3"> Contenu de cette section</a></p>

<p></p>
<p></p>
<h2>3.1 <A Name="ss3.1"> Qu'est-ce que PPP ? </h2>

<p>PPP, ou "Point-to-Point Protocol", est un protocole internet
``officiel''. Il est destin&eacute; &agrave; l'&eacute;change de paquets IP (ou autre type de
r&eacute;seau) sur une liaison s&eacute;rie. Sa description se trouve dans le RFC 1661.</p>
<p>Contrairement &agrave; ce que beaucoup de personnes pensent, PPP ne signifie
pas du tout "Peer to Peer Processing", bien qu'il soit possible
d'effectuer des communications "peer-peer" en utilisant TCP/IP
sur une liaison PPP.</p>
<p></p>

<h2>3.2 <A Name="ss3.2"> Mon entreprise (universit&eacute;) ne supporte pas PPP. Puis-je l'utiliser ? </h2>

<p>En g&eacute;n&eacute;ral, non. Une impl&eacute;mentation ``classique'' de PPP n&eacute;cessite des 
modifications aux routages et interfaces r&eacute;seau du syst&egrave;me d'exploitation.
Cela peut n&eacute;cessiter la recompilation du noyau du syst&egrave;me distant.</p>
<p>Ce n'est pas une t&acirc;che de simple utilisateur. Si vous arrivez &agrave; convaincre
vos administrateurs syst&egrave;me que PPP est une ``bonne chose'', alors vous
aurez une chance de voir ce protocole install&eacute;. Si ils sont r&eacute;fractaires
&agrave; cette id&eacute;e, vous ne pourrez probablement pas utiliser PPP.</p>
<p>Malgr&eacute; tout, si vous utilisez un syst&egrave;me qui est support&eacute; par les 
gens qui vendent "TIA" ("The Internet Adapter") il y a un petit
espoir. Nous n'avons pas beaucoup d'informations sur ce paquetage,
mais nous avons entendu dire qu'ils comptent supporter PPP dans les
prochaines versions. (Ces informations sont sans doute tr&egrave;s anciennes,
contactez-les directement. Vous trouverez des renseignements sur TIA
sur <code>ftp.marketplace.com</code> dans le r&eacute;pertoire <code>/pub/tia</code>).</p>
<p>Un portage Linux est pr&eacute;vu.</p>
<p>Si votre syst&egrave;me n'est pas support&eacute; par TIA et que vous ne pouvez
convaincre vos administrateurs de l'utilit&eacute; de PPP, essayez d'utiliser
le paquetage "term".</p>
<p></p>

<h2>3.3 <A Name="ss3.3"> O&ugrave; et sous quelle forme se trouve PPP ? </h2>

<p>Il se d&eacute;compose en deux parties, dont la premi&egrave;re est dans le noyau,
incluse depuis Linux 1.1.13.</p>
<p>NE REMPLACEZ PAS LE PILOTE FOURNI AVEC LE NOYAU PAR UNE VERSION
TROUVEE DANS LE PAQUETAGE PPPD !!!</p>
<p>La seconde partie est le "d&eacute;mon pppd". Ce programme est 
INDISPENSABLE, ses sources se trouvent dans le fichier <code>ppp-2.1.2b.tar.gz</code> 
sur les sites diffusant Linux.</p>
<p>Pour les noyaux de version inf&eacute;rieure &agrave; 1.1.13, le pilote n&eacute;cessaire est
inclus dans un sous-r&eacute;pertoire de cette archive. C'est le seul cas o&ugrave;
vous devez utiliser ces fichiers syst&egrave;me, mais il est plut&ocirc;t pr&eacute;f&eacute;rable que
vous mettiez &agrave; jour votre noyau.</p>
<p></p>

<h2>3.4 <A Name="ss3.4"> Je viens de r&eacute;cup&eacute;rer PPP. Quelle est la suite des op&eacute;rations ? </h2>

<p>Lisez la documentation fournie. Elle a &eacute;t&eacute; &eacute;crite pour vous !</p>
<p>Commencez par lire les fichiers README et README.linux. Diverses autres
sources de documentation sont indiqu&eacute;es ci-apr&egrave;s.</p>
<p></p>

<h2>3.5 <A Name="ss3.5"> Quelles autres documentations sur PPP sont disponibles ? </h2>

<p>(O&ugrave; est la doc ? O&ugrave; est la FAQ ? etc.)</p>
<p>Il existe plusieurs sources d'information concernant le protocole PPP
tel qu'il est impl&eacute;ment&eacute; sous Linux.</p>
<p>
<ul>
<li> Le fichier README contenu dans l'archive des sources.</li>
<li> Le fichier README.linux au m&ecirc;me endroit.</li>
<li> Le document Linux Net-2-HOWTO.</li>
<li> Le "Network Admin Guide".</li>
<li> La page de manuel du programme "pppd".</li>
<li> La FAQ de PPP (Ce n'est pas le document que vous lisez ici).</li>
</ul>
</p>
<p>Le fichier HOWTO peut se t&eacute;l&eacute;charger sur les sites habituels diffusant
Linux, par exemple sur <code>ftp.ibp.fr</code> dans le r&eacute;pertoire
<code>/pub/linux/docs/HOWTO</code>.</p>
<p>Le <code>Network Admin Guide</code> fait partie du projet de documentation
Linux, vous trouverez ce livre sous forme &eacute;lectronique au m&ecirc;me endroit.
Il sera prochainement publi&eacute; par O'Reilly et disponible en version
Fran&ccedil;aise. Si vous d&eacute;sirez un document de pr&eacute;sentation professionnelle,
vous pourrez alors acheter cet ouvrage plut&ocirc;t que de le t&eacute;l&eacute;charger et
l'imprimer vous-m&ecirc;me.</p>
<p>Les pages de manuel sont fournies avec les sources. Il vous faudra les
placer dans les r&eacute;pertoires standard, <code>/usr/man/man8</code> pour que
la commande <code>man</code> puisse les traiter. Vous pouvez bien entendu
les examiner directement &agrave; l'aide de <code>groff</code>.</p>
<p>La FAQ de PPP d&eacute;crit le protocole en lui-m&ecirc;me et ses diverses 
impl&eacute;mentations sur diff&eacute;rents syst&egrave;mes. Vous trouverez ce document
dans le forum Usenet <code>comp.protocols.ppp</code>, ou encore dans 
<code>news.answers</code> et il est bien entendu archiv&eacute; sur 
<code>rtfm.mit.edu</code> dans le r&eacute;pertoire <code>/usenet</code>.
Il est &agrave; l'heure actuelle compos&eacute; de huit parties.</p>
<p></p>

<h2>3.6 <A Name="ss3.6"> O&ugrave; dois-je poser des questions relatives &agrave; PPP ? </h2>

<p>Il est pr&eacute;f&eacute;rable de les poser dans le groupe <code>comp.protocols.ppp</code>.
Il est fait pour cela. H&eacute;las, beaucoup d'utilisateurs ont tendance &agrave;
exposer d'abord leur probl&egrave;mes dans les groupes <code>comp.os.linux.*</code>,
o&ugrave; ils re&ccedil;oivent des r&eacute;ponses bien que ce ne soit pas l'endroit id&eacute;al.</p>
<p>Tr&egrave;s peu de questions sur PPP sont directement li&eacute;es &agrave; son impl&eacute;mentation
sous Linux. La plupart des probl&egrave;mes pos&eacute;s sont d'ordre g&eacute;n&eacute;ral,
concernent l'utilisation du paquetage PPP et les r&eacute;ponses sont applicables
&agrave; n'importe quel autre syst&egrave;me d'exploitation.</p>
<p>Aussi, pour r&eacute;duire le trafic dans les groupes Linux, et pour
toucher les vrais sp&eacute;cialistes de PPP, si vous devez utiliser Usenet
&agrave; ce sujet, utilisez absolument le groupe <code>comp.protocols.ppp</code>.</p>
<p></p>

<h2>3.7 <A Name="ss3.7"> PPP ne marche pas, pppd se termine apr&egrave;s l'appel. SOS !!! </h2>

<p>C'est l'une des questions les plus irritantes. Nous nous rendons bien
compte que c'est un appel &agrave; l'aide, mais il est inutile de poster un
tel message SANS AUCUNE AUTRE INFORMATION. La plupart des gens
susceptibles de pouvoir vous aider l'ignoreront, purement et simplement.</p>
<p>Il vous faut fournir les logs syst&egrave;me (syslog) produits lorsque vous
lancez le programme pppd avec l'option <code>debug</code>. De plus, si
vous utilisez <code>chat</code> pour l'appel du service, utilisez son
option <code>-v</code> pour obtenir une trace du dialogue.</p>
<p>Fournissez &eacute;galement le log de d&eacute;marrage de votre noyau Linux. 
Il informe des diff&eacute;rentes configurations propres &agrave; votre syst&egrave;me,
comme la version de PPP, le type de port s&eacute;rie, etc.</p>
<p>Enfin, rajoutez toute information que vous pensez relative &agrave; votre
probl&egrave;me. Bien entendu, votre machine, disques durs, boutons de souris, 
terminaux, n'ont aucun int&eacute;r&ecirc;t... Ce qui compte est surtout le
syst&egrave;me que vous tentez de contacter, la version de PPP ou de serveur
de terminaux qu'il utilise, les types et vitesses de modem de part
et d'autre, etc.</p>
<p>Faites attention, &eacute;ditez soigneusement ces informations, en supprimant
&eacute;ventuellement tout num&eacute;ro de t&eacute;l&eacute;phone, login et mot de passe susceptibles
d'appara&icirc;tre. Ils n'ont aucune utilit&eacute; pour le d&eacute;boguage, et les diffuser
sur Usenet ne serait pas tr&egrave;s malin. Supprimez aussi les lignes qui
ne viennent pas du noyeau ou de pppd.</p>
<p>Ne postez jamais int&eacute;gralement le log du programme <code>pppd</code> 
lanc&eacute; avec l'option <code>kdebug 7</code> !</p>
<p>Si le probl&egrave;me demande une analyse du flux de donn&eacute;es, vous serez
contact&eacute; par courrier &eacute;lectronique et l'on vous demandera la trace
par ce biais. Usenet co&ucirc;te d&eacute;j&agrave; bien trop cher pour beaucoup de gens.</p>
<p>L'information est &eacute;crite sous plusieurs niveaux. Les messages de
d&eacute;boguages sont au niveau <code>debug</code>. Ceux d'information le sont
au niveau <code>info</code>, les erreurs au niveau <code>error</code>.
Incluez tous les niveaux par le groupe <code>local2</code>, issu du
processus <code>pppd</code>.</p>
<p>De plus, surtout ne supprimez pas les informations horaires, elles
sont tr&egrave;s importantes.</p>
<p></p>

<h2>3.8 <A Name="ss3.8"> Je cherche une impl&eacute;mentation de PPP ailleurs que sous Linux. </h2>

<p>Existe-t-il des versions pour HP-UX, AIX, ou... bien d'autres syst&egrave;mes ?</p>
<p>Lisez les documentations mentionn&eacute;es plus haut.</p>
<p>AIX sera support&eacute; dans la version 2.2 du paquetage <code>pppd</code>.
HP-UX n'est &agrave; notre connaissance support&eacute; que par la version
commerciale MorningStar.</p>
<p>Si vous ne trouvez vraiment aucun renseignement, demandez dans
<code>comp.protocols.ppp</code>, mais surtout pas dans un groupe Linux,
qui n'est en aucun cas concern&eacute;.</p>
<p></p>

<h2>3.9 <A Name="ss3.9"> Saviez vous qu'il existe une autre impl&eacute;mentation nomm&eacute;e "dp" ? </h2>

<p>Oui, nous sommes au courant. Le paquetage "dp" fut envisag&eacute; au tout
d&eacute;but de l'impl&eacute;mentation de PPP sous Linux. Il est tr&egrave;s bien, il
supporte l'appel &agrave; la demande. Il ne peut fonctionner que sur un
syst&egrave;me supportant les <code>streams</code>, c'est &agrave; dire principalement
le nouveau SunOS (Solaris). </p>
<p>Linux, pour l'instant, ne supporte pas les <code>streams</code>.</p>
<p>Il existe d'autres ensembles PPP disponibles par l'Internet.
Le paquetage <code>Portable ppp</code> ressemble beaucoup au code TIA;
une autre impl&eacute;mentation se nomme tout simplement <code>ppp</code>,
et on trouve du code pour PPP dans l'excellent paquetage <code>KA9Q</code>.</p>
<p>De toutes ces versions, <code>pppd</code> &eacute;tait le plus proche de ce que
Linux n&eacute;cessitait pour assurer un portage correct.</p>
<p>(Si vous d&eacute;sirez plus d'informations sur ces autres impl&eacute;mentations,
demandez dans <code>comp.protocols.ppp</code>.</p>
<p></p>

<h2>3.10 <A Name="ss3.10"> Quels RFC d&eacute;crivent le protocole PPP tel qu'impl&eacute;ment&eacute; sous Linux ? </h2>

<p>L'impl&eacute;mentation courante de PPP est un m&eacute;lange de plusieurs.
La plus grande partie du code de PPP est r&eacute;alis&eacute;e selon les RFC
1331 et 1332. Ces documents sont maintenant obsol&egrave;tes; le 1331 fut
remplac&eacute; par le 1548 qui, &agrave; son tour, fut remplac&eacute; par le 1661
six mois plus tard. Vous trouverez une liste compl&egrave;te dans la FAQ PPP.</p>
<p>La plupart des impl&eacute;mentations de PPP converseront sans probl&egrave;mes
avec celle de Linux.</p>
<p>Tous les RFC 1134, 1171, et 1172 (et, de ce fait, 1055) sont maintenant
obsol&egrave;tes. Ils ne sont int&eacute;ressants que si vous comptez d&eacute;boguer une
connection avec une ancienne impl&eacute;mentation de PPP, et si vous vous
demandez pourquoi, par exemple, elle vous a demand&eacute; l'option IPCP 2
avec une longueur de 4 seulement, et un type de compression 0x0037.
(Il en circule encore de nombreuses versions, faites attention).</p>
<p>Le PPP de Linux ne supportera pas ces vieilleries.</p>
<p></p>

<h2>3.11 <A Name="ss3.11"> PPP peut il converser avec SLIP ? </h2>

<p>Non. SLIP fonctionne avec SLIP, PPP fonctionne avec PPP.</p>
<p>Quelques distributeurs peuvent offrir des produits fonctionnant
&agrave; la fois en SLIP et PPP. Toutefois, ils doivent &ecirc;tre configur&eacute;s
dans l'un de ces deux modes. Il n'existe actuellement aucune 
m&eacute;thode permettant de d&eacute;terminer &agrave; la connexion quels types
de protocoles SLIP, ou PPP, est attendu.</p>
<p></p>

<h2>3.12 <A Name="ss3.12"> Quel est le meilleur ? PPP ou SLIP ? </h2>

<p>CELA DEPEND DE NOMBREUX FACTEURS ! </p>
<p>Les gens qui posent ce genre de
question n'ont en g&eacute;n&eacute;ral pas lu le moindre document sur ces 
protocoles, &agrave; commencer par le <code>Net-2-HOWTO</code>.</p>
<p>Un articles tr&egrave;s int&eacute;ressant sur ce sujet est disponible sur le
serveur Web de Morning Star, www.morningstar.com.</p>
<p></p>

<h2>3.13 <A Name="ss3.13"> Quel est le mieux ? L'authentification CHAP ou PAP ? </h2>

<p>Si vous avez le choix, prenez <code>CHAP</code>. 
Sinon, <code>PAP</code> sera mieux que rien. </p>
<p></p>
<p></p>

<h2>3.14 <A Name="ss3.14"> Que doit contenir le fichier <code> /etc/ppp/pap-secrets</code> ? </h2>

<p></p>
<p>Le protocole <code>pap</code> est le plus souvent impl&eacute;ment&eacute; sous la
forme de votre nom d'utilisateur associ&eacute; &agrave; un mot de passe.
Vous devez mettre le nom du syst&egrave;me distant, votre nom d'utilisateur,
et le mot de passe. </p>
<p>Prenons un exemple: L'utilisateur <code>abbot</code> veut appeler
<code>costello</code>. L'entr&eacute;e sera la suivante:</p>
<p>
<blockquote><code>
<pre>
        #remote    account    password     IP address list
        costello   abbot      firstbase
</pre>
</code></blockquote>
</p>
<p></p>
<p></p>

<h2>3.15 <A Name="ss3.15"> Que doit contenir le fichier <code> /etc/ppp/chap-secrets</code> ? </h2>

<p></p>
<p>Le probl&egrave;me le plus courant est que les gens ne reconnaissent
pas cette n&eacute;gociation <code>CHAP</code> par un couple de <code>secrets</code>.
Chacun des deux ordinateurs devant se relier doivent connaitre les
deux <code>secrets</code> pour que la communication aboutisse.</p>
<p>Par exemple, si <code>abbot</code>  veut communiquer avec <code>costello</code>,
le fichier sur <code>abbot</code> contiendra:</p>
<p>
<blockquote><code>
<pre>
            #local      remote         secret        IP address list
            abbot       costello       firstbase
            costello    abbot          who
</pre>
</code></blockquote>
</p>
<p>Et celui de <code>costello</code> sera:</p>
<p>
<blockquote><code>
<pre>
            #local      remote         secret        IP address list
            abbot       costello       firstbase
            costello    abbot          who
</pre>
</code></blockquote>
</p>
<p></p>
<p></p>
<p></p>

<h2>3.16 <A Name="ss3.16"> J'ai des erreurs lors de la compilation... </h2>

<p>J'ai des erreurs lors de la compilation du noyau quand j'inclus
le pilote ppp.c. Ce noyau est en version 1.1.8. Que faire ?</p>
<p>Avez-vous &eacute;dit&eacute; le fichier ppp.c pour lui indiquer la configuration
du noyau que vous utilisez ? Il y a deux <code>#define</code> qui
doivent &ecirc;tre correctement d&eacute;finis si vous comptez compiler le
code pour PPP.
<blockquote><code>
<pre>
   ._____________________.__________________._________________________.
   |                     |                  |                         |
   |  version du noyau   |     NET02D       |     NEW_TTY_DRIVERS     |
   |_____________________|__________________|_________________________|
   |                     |                                            |
   |  &lt; 1.0.0            |        MISE A JOUR NECESSAIRE !!!!         |
   |_____________________|__________________._________________________|
   |  1.0.0  - 1.0.*     |     #define      |     #undef              |
   |  1.1.0  - 1.1.3     |     #define      |     #undef              |
   |  1.1.4  - 1.1.12    |     #undef       |     #undef              |
   |_____________________|__________________|_________________________|
   |                     |                                            |
   |  1.1.13             |       MISE A JOUR NECESSAIRE !!!           |
   |_____________________|__________________._________________________|
   |                     |                  |                         |
   |  1.1.14 - ... NOTE  |     #undef       |     #define             |
   |_____________________|__________________|_________________________|
</pre>
</code></blockquote>
</p>
<p>Le troisi&egrave;me <code>#define</code> au d&eacute;but du fichier s'appelle
<code>OPTIMIZE_FLAG_TIME</code>. Il peut &ecirc;tre ou non d&eacute;fini avec
n'importe quelle version du noyau supportant PPP. Vous trouverez
plus de d&eacute;tails en lisant ppp.c.</p>
<p><b>NOTE</b>: A partir du noyau 1.1.14, ne remplacez pas les fichiers
<code>drivers/net/ppp.c</code> et <code>include/linux/ppp.h</code>.
Ils sont adapt&eacute;s &agrave; votre version.</p>
<p>Donc, comme vous le voyez dans le tableau ci-dessus, pour
le noyau 1.1.8 par exemple, il faut d&eacute;finir &agrave; la fois
NET02D et NEW_TTY_DRIVERS. De m&ecirc;me, une version 1.1.18 contient
d&eacute;j&agrave; tout ce qu'il faut, vous n'avez aucune modification &agrave; faire.</p>
<p></p>

<h2>3.17 <A Name="ss3.17"> Que signifie le message:       <code>unable to create pid file</code> ? </h2>

<p></p>
<p>Vous devez cr&eacute;er le r&eacute;pertoire <code>/var/run</code>.
Dans certaines distributions, il s'agit d'un lien symbolique
vers le r&eacute;petoire <code>/etc</code>.</p>
<p>Ce n'est qu'un avertissement, qui n'emp&ecirc;che pas PPP de 
fonctionner correctement. Toutefois, le script <code>ppp-off</code>
d&eacute;pend de ce fichier, il est donc pr&eacute;f&eacute;rable de r&eacute;gler le
probl&egrave;me.</p>
<p>L'ent&ecirc;te POSIX <code>path.h</code> d&eacute;finit l'endroit du fichier
<code>pid</code> sous le nom <code>_VAR_RUN</code>. Si vous d&eacute;sirez
utiliser un autre r&eacute;pertoire pour PPP ou d'autres programmes,
changez la valeur de cette d&eacute;finition et recompilez les
programmes.</p>
<p></p>

<h2>3.18 <A Name="ss3.18"> Que veut dire <code>/etc/ppp/options: no such file or directory</code> ? </h2>

<p></p>
<p>Vous devez cr&eacute;er le r&eacute;pertoire <code>/etc/ppp</code> et y mettre
un fichier nomm&eacute; <code>options</code>. Il doit &ecirc;tre lisible par
le processus <code>pppd</code> (root).</p>
<p>Ce fichier peut &ecirc;tre vide, tout simplement. Dans ce cas,
utilisez la commande <code>touch</code> pour le cr&eacute;er. Lisez
la page de manuel de <code>pppd</code> pour obtenir une description
de ce fichier.</p>
<p>Il est possible de compiler <code>pppd</code> pour qu'il n'utilise
pas ce fichier; dans ce cas il faut supprimer (commenter) la
ligne <code>SECURE_FLAGS = -DREQ_SYSOPTIONS=1</code> dans le
<code>Makefile</code>.</p>
<p></p>

<h2>3.19 <A Name="ss3.19"> Le programme ``dip'' r&eacute;f&eacute;rence PPP... </h2>

<p></p>
<p>Lorsque je tente d'utiliser <code>mode ppp</code> depuis <code>dip</code>
j'obtiens une erreur disant que le mode PPP n'est pas support&eacute;.
Est-il pr&eacute;vu d'utiliser <code>dip</code> avec PPP ?</p>
<p>Le programme <code>dip</code> contr&ocirc;le l'&eacute;tablissement  d'une
liaison SLIP. Puisque le processus <code>pppd</code> doit faire
plusieurs choses &agrave; des moments diff&eacute;rents que dans un lien
SLIP, il y a fort peu de chances pour que <code>dip</code> et
<code>pppd</code> puissent s'entendre un jour.</p>
<p>La commande <code>dip</code> peut n&eacute;anmoins &ecirc;tre utilis&eacute;e pour
l'appel t&eacute;l&eacute;phonique et le lancement de PPP sur le syst&egrave;me
distant. Dans ce cas il est pr&eacute;f&eacute;rable de le lancer en tant
qu'argument <code>connect</code> de <code>pppd</code>.</p>
<p></p>

<h2>3.20 <A Name="ss3.20"> Comment arr&ecirc;ter PPP ? Existe-t-il un ``dip -k'' pour PPP ? </h2>

<p>Non, il n'y en a pas.</p>
<p>Dans le r&eacute;pertoire <code>chat</code>, vous trouverez un script
appel&eacute; <code>ppp-off</code>. Il arr&ecirc;tera la liaison PPP de la
m&ecirc;me fa&ccedil;on que votre <code>dip -k </code>.</p>
<p>Le voici ci-dessous. Copiez-le dans un fichier que vous
rendrez ex&eacute;cutable par la commande <code>chmod +x</code> et
le tour sera jou&eacute;.
<blockquote><code>
<hr>
<pre>
#!/bin/sh
DEVICE=ppp0
#
# Si le fichier pid de ppp0 est present, alors c'est que le programme
# tourne. Arretons-le.
if [ -r /var/run/$DEVICE.pid ]; then
        kill -INT `cat /var/run/$DEVICE.pid`
#
# Si ca n'a pas marche, c'est qu'il n'y a plus de processus actifs
# correspondant a ce pid. Cela peut aussi signifier que le fichier
# de verrouillage a ete laisse en place. Il faut supprimer ce verrou.
        if [! "$?" = "0" ]; then
                rm -f /var/run/$DEVICE.pid
                echo 'ERROR: Removed stale pid file'
                exit 1
        fi
#
# Succes. Laissons pppd faire son propre menage.
        echo 'PPP link to $DEVICE terminated.'
        exit 0
fi
#
# Le processus pppd n'est pas actif sur ppp0
echo 'ERROR: PPP link is not active on $DEVICE'
exit 1
</pre>
<hr>
</code></blockquote>
</p>
<p></p>

<h2>3.21 <A Name="ss3.21"> Le processus <code>pppd</code> ne se termine pas lorsque le modem se         d&eacute;connecte. Je dois l'arr&ecirc;ter manuellement pour que <code>getty</code>        reprenne la main.</h2>

<p></p>
<p>Avez-vous lanc&eacute; le programme avec le param&egrave;tre <code>modem</code> ?</p>
<p>Ce param&egrave;tre indique &agrave; <code>pppd</code> d'honorer les signaux relatifs
au statut du modem sur la ligne, qu'il ignore par d&eacute;faut. Il est
d&eacute;crit dans la page de manuel de <code>pppd</code>.</p>
<p>Est-ce que votre modem refl&egrave;te bien l'&eacute;tat de la communication par
la ligne DCD ?</p>
<p>La commande <code>Hayes</code> positionnant ce comportement est
g&eacute;n&eacute;ralement <code> &amp;C1</code>. Si vous remettez l'appareil
&agrave; z&eacute;ro par <code>ATZ</code> lors de la communication, assurez-vous
bien qu'il g&egrave;re toujours le signal DCD. La configuration
d'usine fournie par beaucoup de constructeurs est h&eacute;las 
d'ignorer ce <code>Carrier Detect</code>.</p>
<p>Le signal DTR est g&eacute;n&eacute;r&eacute; par l'ordinateur et indique au modem
de raccrocher la ligne. La s&eacute;quence Hayes pour cela est
g&eacute;n&eacute;ralement  <code> &amp;D1</code> ou  <code> &amp;D2</code>,
la seconde &eacute;tant pr&eacute;f&eacute;r&eacute;e pour utiliser PPP. La configuration
par d&eacute;faut des constructeurs &eacute;tant souvent d'ignorer DTR.</p>
<p>N'utiliseriez-vous pas un c&acirc;ble de liaison bon march&eacute;, incomplet,
ne transmettant pas la ligne DCD ? Les c&acirc;bles de <b>Macintosh classic</b>,
par exemple, ont la r&eacute;putation de poser ce probl&egrave;me. Cet ordinateur
n'utilise pas ce signal.</p>
<p>Pour les connexions en mode serveur, avez-vous fait ex&eacute;cuter
pppd correctement ? Le processus doit &ecirc;tre lanc&eacute; par un appel
<code>exec</code>; si vous le lancez depuis le shell comme une
simple commande, ce sera le shell qui recevra SIGHUP et non
pas le processus pppd.</p>
<p>Le script doit avoir un format du type suivant:</p>
<p>
<blockquote><code>
<hr>
<pre>
 
     #!/bin/sh
     exec pppd -detach modem ...           
</pre>
<hr>
</code></blockquote>
</p>
<p></p>

<h2>3.22 <A Name="ss3.22"> Les transferts FTP &eacute;chouent quand je fais un ``put'' mais se passent        bien lorsque je fais un ``get''.</h2>

<p></p>
<p>Est-ce que le contr&ocirc;le de flux est bien en service ?
Il se valide par l'option <code>crtscts</code> de pppd, pour ce qui
est du contr&ocirc;le de flux mat&eacute;riel RTS/CTS, et par l'option
<code>xonxoff</code> pour XON/XOFF. Sans contr&ocirc;le de flux, vous
perdrez des caract&egrave;res et le r&eacute;sultat sera d&eacute;sastreux pour
la compression vj, entre autres.</p>
<p></p>

<h2>3.23 <A Name="ss3.23"> Comment utiliser le contr&ocirc;le de flux XON/XOFF ? </h2>

<p></p>
<p>Le mieux est de ne pas l'utiliser, et de choisir RTS/CTS.
Toutefois, si vous ne pouvez faire autrement, vous devez
op&eacute;rer selon les trois points suivants:</p>
<p>
<ul>
<li>Vous devez sp&eacute;cifier l'option <code>xonxoff</code> &agrave; pppd.
Cela indiquera au programme de configurer le port s&eacute;rie
pour le contr&ocirc;le de flux XON/XOFF, en indiquant ces
caract&egrave;res au pilote.
</li>
<li>Vous devez sp&eacute;cifier les deux caract&egrave;res XON et XOFF dans
le param&egrave;tre <code>asyncmap</code> de pppd. Cela indiquera
au syst&egrave;me distant qu'il doit encoder XON et XOFF lorsqu'il
doit les envoyer en tant que caract&egrave;res normaux. Il suffit
en principe d'indiquer <code>asyncmap a0000</code>.
</li>
<li>Bien s&ucirc;r, n'oubliez pas d'indiquer au modem d'utiliser ce
type de contr&ocirc;le de flux. Consultez la documentation de votre
appareil pour d&eacute;terminer la commande Hayes n&eacute;cessaire.</li>
</ul>
</p>
<p></p>

<h2>3.24 <A Name="ss3.24"> Le modem ne semble jamais se connecter aux vitesses rapides. </h2>

<p></p>
<p>Mettez la vitesse d&eacute;sir&eacute;e dans la commande de pppd.
Si vous ne l'indiquez pas, ce sera celle qui est initialis&eacute;e
au moment ou vous lancez le programme qui sera utilis&eacute;e, et
elle peut &ecirc;tre quelconque : tous les programmes ne remettent
pas correctement les param&egrave;tres du port s&eacute;rie qu'ils ont trouv&eacute;
en arrivant. Certains peuvent m&ecirc;me laisser des valeurs &eacute;tranges
amenant un fonctionnement curieux (Une vitesse de 0, par exemple !).</p>
<p></p>

<h2>3.25 <A Name="ss3.25"> Pourquoi ne puis-je lancer <code>pppd</code> si je ne suis pas root ? </h2>

<p>Le processus <code>pppd</code> a besoin de modifier le param&eacute;trage
du r&eacute;seau, et ceci n'est autoris&eacute; qu'au super-utilisateur.
Si vous d&eacute;sirez pouvoir lancer <code>pppd</code> sous un autre
nom d'utilisateur, le programme doit alors &ecirc;tre ``suid root'':
<blockquote><code>
<pre>
        chown root pppd
        chmod 4755 pppd
</pre>
</code></blockquote>
</p>
<p>Si vous voulez n'autoriser <code>pppd</code> qu'&agrave; un petit groupe
de personnes, attribuez-le &agrave; ce groupe et interdisez &agrave; tous
les autres son ex&eacute;cution.</p>
<p></p>

<h2>3.26 <A Name="ss3.26"> Je peux atteindre la machine distante, mais aucune autre. </h2>

<p>N'auriez-vous pas oubli&eacute; le param&egrave;tre <code>defaultroute</code> ?
Il rajoute une route par d&eacute;faut dans vos tables de routage,
de mani&egrave;re &agrave; ce que les paquets vers toutes les autres adresses
IP soient envoy&eacute;s par l'interface PPP.</p>
<p>Le programme ne remplacera pas une route par d&eacute;faut d&eacute;j&agrave;
existante. Ceci est volontaire, cela &eacute;vite de d&eacute;truire la
route par d&eacute;faut vers d'&eacute;ventuels routeurs Ethernet par
accident. Dans ce cas, un message d'avertissement est envoy&eacute;
au syst&egrave;me de ``log'' de la machine, via <code>syslog</code>, et
ce sera &agrave; vous d'effectuer les op&eacute;rations que vous jugerez
n&eacute;cessaires.</p>
<p></p>

<h2>3.27 <A Name="ss3.27"> J'ai une route par d&eacute;faut mais je ne peux toujours pas me connecter ailleurs ! </h2>

<p></p>
<p>Cela ne provient pas de votre syst&egrave;me Linux local, mais
probablement d'un probl&egrave;me de routage sur la machine distante.</p>
<p>Le syst&egrave;me distant a besoin d'une route vers vous, tout comme
vous en avez une vers lui. Ceci peut &ecirc;tre r&eacute;alis&eacute; de quatre
fa&ccedil;ons diff&eacute;rentes. Chaque m&eacute;thode a ses avantages et inconv&eacute;nients;
vous devez en choisir une, et une seule.</p>
<p>
<ol>
<li> Utiliser une route de type ``host''. Sur chaque machine du
site distant, rajouter une route vers votre adresse IP Linux, avec
comme passerelle le serveur de terminaux que vous utilisez pour
votre acc&egrave;s local. Cette m&eacute;thode fonctionnera si vous avez un 
nombre limit&eacute; de machines et un r&eacute;seau tr&egrave;s simple.
</li>
<li> Utiliser une route de type ``network''. Subdivisez les
adresses IP distantes de mani&egrave;re &agrave; ce que l'adresse IP locale &agrave; votre
machine Linux, celle de votre serveur distant, et celle de l'interface
Ethernet de ce dernier soient dans le m&ecirc;me domaine IP. 

Cette m&eacute;thode fonctionnera si vous poss&eacute;dez des adresses &agrave; distribuer.
Elle sera parfaite si vous poss&eacute;dez un r&eacute;seau de classe B et
pouvez assigner toutes les adresses distantes dans le m&ecirc;me domaine IP.
Ajoutez alors une route r&eacute;seau sur chacune des passerelles et
routeurs de fa&ccedil;on que toute adresse du r&eacute;seau distant soit acc&eacute;d&eacute;e
par le serveur de terminaux. Beaucoup de configurations poss&egrave;dent
beaucoup de machines mais tr&egrave;s peu de routeurs. (A <code>sii.com</code>,
nous avons plus de 300 syst&egrave;mes actifs et seulement 3 routeurs).
</li>
<li> Utilisez le programme <code>gated</code> sur toutes les
passerelles et sur le serveur de terminaux. Cela fera diffuser
par le serveur de terminaux des informations vers les passerelles,
indiquant qu'il peut accepter des paquets pour votre adresse IP.
Puisque les machines auront une route par d&eacute;faut vers l'une de
ces passerelles, ces derni&egrave;res g&eacute;n&egrave;reront les requ&ecirc;tes ICMP de
redirection et le routage s'&eacute;tablira automatiquement.
</li>
<li> Utilisez ``<code>proxy ARP</code>'' sur le serveur de terminaux.
Cette m&eacute;thode ne fonctionnera que si votre adresse IP locale
correspond &agrave; l'un des domaines IP des cartes r&eacute;seau.</li>
</ol>
</p>
<p>En r&eacute;sum&eacute;, il n'y a pas de solution miracle, simple et unique.
Vous devez faire votre choix parmi l'une de ces quatre l&agrave;.</p>
<p></p>

<h2>3.28 <A Name="ss3.28"> Je n'arr&ecirc;te pas de recevoir le message disant que le ``magic number''         est toujours refus&eacute; (NAK). Le syst&egrave;me ne se connecte pas.</h2>

<p>La probabilit&eacute; que les deux syst&egrave;mes aient choisi le m&ecirc;me
nombre magique est d'une chance sur un billion. Si vous obtenez
continuellement cette erreur, prenez un billet de loterie et/ou
surveillez votre femme :-)</p>
<p>Les deux causes les plus courantes de ce probl&egrave;me sont:</p>
<p>
<ol>
<li>    Le modem s'est d&eacute;connect&eacute; imm&eacute;diatement apr&egrave;s avoir r&eacute;alis&eacute;
la connexion et l'acc&egrave;s au syst&egrave;me distant. Beaucoup de modems
sont configur&eacute;s pour renvoyer l'&eacute;cho des donn&eacute;es qu'on leur
injecte, et vos dialoguez avec l'&eacute;cho local.
</li>
<li>  Les programmes r&eacute;alisant PPP ne sont pas en service sur le
syst&egrave;me distant au moment o&ugrave; vous tentez d'&eacute;tablir le lien.
Est-ce que la machine distante est bien configur&eacute;e pour PPP ?
Est-ce que les programmes s'y trouvent bien accessibles, tant
en chemin d'acc&egrave;s qu'en permissions ?

Cela tendrait &agrave; indiquer que c'est le shell qui vous r&eacute;alise
un &eacute;cho local des donn&eacute;es que vous envoyez.

Quoi qu'il en soit, le syst&egrave;me Linux envoie des donn&eacute;es que
l'autre c&ocirc;t&eacute; retourne imm&eacute;diatement. Ce n'est pas une condition
acceptable, vous avez ce que l'on appelle une "boucle".</li>
</ol>
</p>
<p></p>

<h2>3.29 <A Name="ss3.29"> Je tente de me connecter &agrave; un Telebit Netblazer, et il termine         par le message ``<code>Could not determine local IP address</code>''.</h2>

<p>Le Netblazer n'a pas votre adresse IP. Vous n'avez pas non
plus votre adresse IP. La liaison ne s'effectuera pas tant que
ces deux param&egrave;tres ne seront pas connus.</p>
<p>On a du vous donner une feuille de papier sur laquelle ces
deux adresses IP sont indiqu&eacute;es. Vous devez signaler au
Netblazer l'adresse &agrave; utiliser. Indiquez alors ces deux adresses,
locale et distante, comme param&egrave;tres lors du lancement du
programme <code>pppd</code>, selon le format suivant:
<blockquote><code>
<pre>
        adresse_locale:adresse_distante
</pre>
</code></blockquote>
</p>
<p>N'oubliez surtout pas les deux points (<code>:</code>) de s&eacute;paration.</p>
<p></p>
<p></p>
<p></p>

<h2>3.30 <A Name="ss3.30"> Je tente de me connecter &agrave; un Telebit Netblazer, et il termine         par le message ``<code>Could not determine remote IP address</code>''.</h2>

<p>Lisez donc la r&eacute;ponse &agrave; la question pr&eacute;c&eacute;dente...</p>
<p></p>
<p></p>
<p></p>

<h2>3.31 <A Name="ss3.31"> Je ne peux pas ``<code>ping</code>uer'' mon adresse IP locale. </h2>

<p>Vous ne pouvez pas parceque vous n'avez pas de route vers
cette adresse. C'est le fonctionnement normal. N'essayez
pas.</p>
<p>Si vous voulez faire un <code>ping</code> sur votre propre syst&egrave;me,
utilisez l'adresse <code>loopback</code>: 127.0.0.1.</p>
<p>Vous devriez pouvoir ``<code>ping</code>uer'' l'adresse distante.
Toutefois, certains serveurs interdisent cette op&eacute;ration.</p>
<p>En r&egrave;gle g&eacute;n&eacute;rale, n'essayez pas <code>ping</code> sur l'une
ou l'autre de ces adresse. Choisissez en une troisi&egrave;me,
que vous savez accessible sur le r&eacute;seau distant.</p>
<p></p>

<h2>3.32 <A Name="ss3.32"> Puis-je utiliser la m&ecirc;me adresse IP locale pour toutes les lignes         de mon serveur PPP ?</h2>

<p>Oui.</p>
<p>L'adresse locale n'est pas significative pour le syst&egrave;me local.
Vous devez avoir une adresse IP <b> distante </b>
unique. Le routage est fait en fonction de l'adresse distante
et non locale.</p>
<p></p>

<h2>3.33 <A Name="ss3.33"> J'utilise un serveur de terminaux Xyplex et <code>pppd</code> se         plaint de se voir refuser le protocole <code>fffb</code>. Qu'est-ce        que c'est que &ccedil;a ?</h2>

<p>Le serveur de terminaux Xyplex est troubl&eacute; par la compression
d'ent&ecirc;tes Van Jacobson. Utilisez l'option <code>-vj</code> de <code>pppd</code>
pour ne pas l'utiliser.</p>
<p></p>

<h2>3.34 <A Name="ss3.34"> Le log contient souvent <code>Alarm</code>. Est-ce grave ? </h2>

<p>Non.</p>
<p>Cela signifie simplement qu'une mesure de temps s'est &eacute;coul&eacute;e,
c'est une partie n&eacute;cessaire de la phase d'&eacute;tablissement
du protocole.</p>
<p></p>

<h2>3.35 <A Name="ss3.35"> Le log indique <code> protocol reject for protocol c025</code>. Qu'est-ce         que c'est que cette histoire ?</h2>

<p>Le site distant voudrait mettre en service le protocole d'analyse
de qualit&eacute; de liaison sur la machine Linux. 
(LQR, ``Link Quality Reporting'').
Ce protocole n'est pas
encore support&eacute;, ce n'est pas une erreur. Linux signale en substance:
``L'autre m'a demand&eacute; &ccedil;a, je lui ai dit que je ne sais pas le faire
pour l'instant et qu'il ne m'emb&ecirc;te pas avec''.</p>
<p>L'impl&eacute;mentation MorningStar tentera toujours LQR. C'est normal.</p>
<p></p>

<h2>3.36 <A Name="ss3.36"> La connexion s'effectue mais la s&eacute;quence d'initialisation semble         ne jamais se terminer. Le p&eacute;riph&eacute;rique n'est jamais ``UP'', et        finalement le programme raccroche. Que se passe-t-il ?</h2>

<p>Essayez avec l'option <code>debug</code> et examinez les traces syst&egrave;me.
(Vous aurez de toutes fa&ccedil;ons besoin de ces traces si vous comptez demander
de l'aide). Si elles montrent que vous envoyez la s&eacute;quence
`` LCP-request'' continuellement et que la valeur d'``id'' ne
s'incr&eacute;mente pas, c'est qu'il n'y a pas de PPP &agrave; l'autre bout.</p>
<p>Les trois causes les plus courantes sont:</p>
<p>
<ul>
<li>PPP n'est pas lanc&eacute; sur la machine distante. Vous envoyez des
demandes de n&eacute;gociation &agrave; un programme quelconque, qui est
probablement en train de vous r&eacute;pondre ``Qu'est-ce que c'est
que ce charabia ?''

Assurez-vous que le protocole PPP est bien lanc&eacute; &agrave; l'autre
bout avant d'entrer dans la phase de n&eacute;gociation du protocole.
        
Essayez d'utiliser un programme de communications normal et
simulez la session &agrave; la main. Vous devriez alors voir nettement
la tentative de n&eacute;gociation PPP vous arriver, c'est facile
&agrave; identifier: il s'agit de trains d'environ 16 caract&egrave;res,
contenant beaucoup d'accolades ouvrantes. Il ne doit pas y
avoir de retour-chariot dedans et ils sont envoy&eacute;s par saccades.
 </li>
<li>La liaison n'est pas ``8 bits clean''. Cela signifie que pour
utiliser PPP, vous devez &ecirc;tre configur&eacute; en 8 bits de donn&eacute;es,
pas de parit&eacute; et un bit de stop. PPP ne peut fonctionner
qu'en 8 bits.

Le programme <code>pppd</code> passera automatiquement la ligne
sous ce format. La machine distante doit &eacute;galement se
conformer &agrave; cette configuration sous peine de nombreuses
erreurs de format et parit&eacute;.

PPP encode certains caract&egrave;res. Il ne lui est pas possible
de travailler au niveau bit comme kermit peut le faire.
PPP ne <b>fonctionne pas</b> sur une liaison 7 bits.

Il y a une option de compilation dans le pilote ppp.c (qui fait
partie du noyau) appel&eacute;e CHECK_CHARACTERS, qui ajoute du code
destin&eacute; &agrave; effectuer des tests suppl&eacute;mentaires sur les caract&egrave;res
re&ccedil;us. Elle pourra vous indiquer si la parit&eacute; &eacute;tait valid&eacute;e ou
si le syst&egrave;me distant envoyait du 7 bits.

</li>
<li>Le syst&egrave;me distant est configur&eacute; pour demander l'authentification
PAP ou CHAP. Vous n'avez pas configur&eacute; votre syst&egrave;me local pour
le faire. Par cons&eacute;quent, l'autre c&ocirc;t&eacute; refuse tous vos paquets
jusqu'&agrave; en rencontrer un d'identification, que vous n'enverrez
jamais.

Dans ce cas, il vous fait soit configurer la machine distante
pour qu'elle ne demande pas d'authentification, ou configurer
le syst&egrave;me local pour qu'il le fasse.</li>
</ul>
</p>
<p></p>

<h2>3.37 <A Name="ss3.37"> La connexion &eacute;choue sur une erreur <code>ioctl(TIOCSCTTY)</code>. </h2>

<p>Utilisez l'archive ppp-2.1.2b.tar.gz. Il s'agit d'un bug
qui n'&eacute;tait pas g&eacute;r&eacute; avant la diffusion de ppp-2.1.2a.</p>
<p></p>

<h2>3.38 <A Name="ss3.38"> J'essaie d'utiliser <code>proxyarp</code>. La fonction proxyarp         n'arrive pas &agrave; trouver l'adresse MAC avec Linux 1.0.</h2>

<p>Utilisez l'archive ppp-2.1.2b.tar.gz. Le programme <code>pppd</code>
&eacute;tait compil&eacute; par erreur sous Linux 1.1.8 et utilisait les
d&eacute;finitions  Net-3 plut&ocirc;t que celles de l'ancien Net-2.</p>
<p></p>

<h2>3.39 <A Name="ss3.39"> Bon sang ! J'ai r&eacute;cup&eacute;r&eacute; ppp-2.1.2b et il dit qu'il a besoin         des versions 4.6 des biblioth&egrave;ques partag&eacute;es ! Alors ???</h2>

<p>D&eacute;sol&eacute;, on s'est tromp&eacute;, nous travaillons avec vos programmes
du futur, que voulez-vous. Un jour o&ugrave; l'autre, vous disposerez
&eacute;galement de ces librairies.</p>
<p>En attendant,il va vous falloir recompiler le code vous-m&ecirc;me, avec les
biblioth&egrave;ques dont vous disposez. C'est tr&egrave;s facile:</p>
<p>Allez dans le r&eacute;pertoire <code>pppd</code>, effacez le mauvais
binaire, et tapez la commande ``<code>make</code>''. Faites de
m&ecirc;me dans le r&eacute;pertoire <code>chat</code> si vous comptez utiliser
ce programme.</p>
<p>Une autre solution est de vous procurer une version de ces
biblioth&egrave;ques et de jouer les Alpha-testeurs :-)</p>
<p></p>

<h2>3.40 <A Name="ss3.40"> La connection &eacute;choue avec des erreurs comme <code> ioctl(TIOCGETD): I/O error</code>         ou bien <code> ioctl(PPPIOCSINPSIG): I/O error </code>. Allo, Docteur ?</h2>

<p></p>
<p>Regardez les messages du noyau lors de l'amor&ccedil;age de votre
syst&egrave;me Linux. Si il affiche <code> PPP version 0.1.2</code>,
vous avez une version beaucoup trop ancienne du pilote <code>ppp.c</code>.</p>
<p>Si vous voyez <code>PPP version 0.2.7</code>, vous disposez de la
version &agrave; jour, mais qui cependant n'a pas &eacute;t&eacute; compil&eacute;e avec
les m&ecirc;mes d&eacute;finitions pour les valeurs d'<code>ioctl()</code>.</p>
<p>V&eacute;rifiez que vous disposez bien d'un fichier, <code>ppp.h</code>,
qui doit se trouver dans le r&eacute;pertoire <code>include/linux</code>
des sources du noyau. Dans ce cas, recompilez le noyau, puis
le programme <code>pppd</code>.</p>
<p></p>

<h2>3.41 <A Name="ss3.41"> Quelquefois, j'obtiens les messages ``<code>ioctl(PPPIOCGDEBUG): I/O error</code>'',         ``<code>ioctl(TIOCSETD): I/O error</code>'' et ``<code>ioctl(TIOCNXCL): I/O error</code>''.        Pourquoi donc ?</h2>

<p>Parceque le syst&egrave;me distant a raccroch&eacute; le t&eacute;l&eacute;phone.
Les pilotes tty r&eacute;tablissent alors la discipline correcte
sur le port s&eacute;rie, et ces erreurs sont le r&eacute;sultat du processus
<code>pppd</code>, tentant de faire la m&ecirc;me chose.</p>
<p>Tout cela est parfaitement normal, il n'y a pas d'inqui&eacute;tudes &agrave;
avoir.</p>
<p></p>

<h2>3.42 <A Name="ss3.42"> J'essaie d'utiliser le r&eacute;seau <code>merit</code>, et je me fais jeter. </h2>

<p>Des utilisateurs de ce r&eacute;seau ont signal&eacute; qu'il n&eacute;cessite PAP.
Avez-vous essay&eacute; l'authentification PAP ?</p>
<p></p>

<h2>3.43 <A Name="ss3.43"> Mon <code>ifconfig</code> affiche autre chose que ce qui suit.         Il indique l'interface ppp comme ``<code>unknown</code>'' et une         adresse MAC bizarro&iuml;de.</h2>

<p>
<blockquote><code>
<pre>
   ppp0      Link encap Point-to-Point Protocol
             inet addr 192.76.32.2  P-t-P 129.67.1.165  Mask 255.255.255.0
</pre>
</code></blockquote>

Ce n'est pas grave. Cet affichage n'est l&agrave; que pour information.
Si vous utilisez un noyeau 1.1. r&eacute;cent, mettez &agrave; jours vos
programmes r&eacute;seau.</p>
<p></p>

<h2>3.44 <A Name="ss3.44"> Mon syst&egrave;me ne marche pas. J'utilise <code>slattach</code>,<code>ifconfig</code>         et <code>route</code> et &ccedil;a ne marche toujours pas ! J'ai lu &ccedil;a        dans le Net-2-HOWTO; o&ugrave; est l'erreur ?</h2>

<p>N'utilisez jamais <code>slattach</code> et <code>ifconfig</code>
avec PPP. Ces programmes ne sont utiles que pour SLIP.
Le processus <code>pppd</code> s'occupe de ces fonctions tout seul
au moment opportun, c'est &agrave; dire apr&egrave;s l'&eacute;change des protocoles
LCP et IPCP.</p>
<p>Vous ne pouvez pas remplacer <code>pppd</code> par <code>slattach</code> et <code>ifconfig</code>.
La plus grande partie du protocole PPP se trouve dans <code>pppd</code>.
Le noyau ne connait que IP (et IPX dans l'avenir).</p>
<p>La route vers le site distant sera automatiquement ajout&eacute;e
par <code>pppd</code>. Il n'y a pas d'option pour supprimer cette
op&eacute;ration. Le programme se terminera si la route ne peut pas
&ecirc;tre rajout&eacute;e a la table de routage.</p>
<p>La route par d&eacute;faut peut &ecirc;tre automatiquement ajout&eacute;e, ou non.
Ceci est control&eacute; par l'option <code> defaultroute</code>.
Si vous avez d&eacute;j&agrave; une route par d&eacute;faut, elle ne sera pas
modifi&eacute;e.</p>
<p>Si vous devez router un r&eacute;seau entier, mettez la commande dans
le script <code>/etc/ppp/ip-up</code>. Les param&egrave;tres pass&eacute;s &agrave; ce
script sont:</p>
<p>
<ul>
<li> $0 - nom du script (/etc/ppp/ip-up ou /etc/ppp/ip-down)</li>
<li> $1 - nom de l'interface r&eacute;seau (comme ppp0)</li>
<li> $2 - nom du p&eacute;riph&eacute;rique (comme /dev/cua0)</li>
<li> $3 - vitesse du p&eacute;riph&eacute;rique en bits par seconde (comme 38400)</li>
<li> $4 - l'adresse IP locale</li>
<li> $5 - l'adresse IP distante</li>
</ul>
</p>
<p></p>

<h2>3.45 <A Name="ss3.45"> D'accord, j'ai les param&egrave;tres. Mais je veux la route vers le r&eacute;seau         et non pas la route vers le host. Comment faire ?</h2>

<p>Sur <code>sunsite.unc.edu</code> se trouve un paquetage du nom de
<code>devinfo.tar.gz</code>. Il contient quelques petits utilitaires
pratiques qui extraient les donn&eacute;es concernant un p&eacute;riph&eacute;rique
et font diff&eacute;rentes op&eacute;rations sur les notations d'adresses IP.</p>
<p>La documentation est fournie sous forme de pages de manuel.</p>
<p>Par exemple, si vous voulez router le domaine IP entier vers
le site distant, vous pouvez mettre les choses suivantes dans
le script <code>/etc/ppp/ip-up</code>.</p>
<p>Bien entendu, si les valeurs ne sont pas variables, il vous
suffit d'utiliser les entr&eacute;es appropri&eacute;es avec la commande
<code>route</code>.
<blockquote><code>
<hr>
<pre>
# Obtention du masque reseau pour l'interface ppp0 (ou autres)
NETMASK = `devinfo -d $1 -t mask`

# Obtention du domaine IP (sans l'adresse host en supprimant les bits ad hoc)
DOMAIN = `netmath -a $5 $NETMASK`

# Rajout de la route vers le reseau que nous connaissons maintenant
route -net add $DOMAIN gw $5
</pre>
<hr>
</code></blockquote>
</p>
<p></p>
<p></p>

<h2>3.46 <A Name="ss3.46"> Quand Linux supportera-t-il la num&eacute;rotation sur demande ?       J'en ai absolument besoin ! </h2>

<p>Mercredi prochain !</p>
<p>Plus s&eacute;rieusement, la num&eacute;rotation sur demande devait se trouver
dans la prochaine version. Toutefois, le paquetage <code>pppd</code>
est l'oeuvre de <b>Paul Mackerras</b> (nous ne faisons que le
portage) et il a pr&eacute;f&eacute;r&eacute; commencer par ce qu'il pr&eacute;f&eacute;rait, c'est
&agrave; dire la compression BSD.</p>
<p>Aussi, cela viendra apr&egrave;s que ce code de compression soit
diffus&eacute;. Il y a d&eacute;j&agrave; quelques volontaires s'&eacute;tant propos&eacute;
pour travailler sur le projet. Vous pouvez vous y mettre aussi !</p>
<p></p>

<h2>3.47 <A Name="ss3.47"> Quid du filtrage ? Quand allez-vous impl&eacute;menter &ccedil;a ? </h2>

<p>Rien n'est pr&eacute;vu &agrave; ce sujet dans le code de PPP.
Utilisez le code <code>ipfirewall</code>, c'est disponible
sur <code>sunsite.unc.edu</code>. Aidez l'auteur &agrave; d&eacute;boguer la
chose, et &ccedil;a fera ce que vous d&eacute;sirez que &ccedil;a fasse.</p>
<p></p>

<h2>3.48 <A Name="ss3.48"> Quid de IPX ? </h2>

<p>L'addition du support pour IPX se fait tranquillement.
J'ai (Al Longyear) commenc&eacute; &agrave;  y travailler pour quelqu'un
me l'ayant demand&eacute; sur l'IRC (Internet Relay Chat).
Je dois d'abord approfondir les manuels Novell pour comprendre
quelles sont les valeurs correctes pour les fonctions de
routages n&eacute;cessaires pour IPXCP. (IPXCP est le protocole de
contr&ocirc;le d'IPX).</p>
<p></p>

<h2>3.49 <A Name="ss3.49"> Quid de NETBIOS ? </h2>

<p>Il existe un protocole PPP Netbios. Toutefois, la meilleure
solution serait que vous utilisiez TCP/IP et le code ``<code>samba</code>''.</p>
<p>Microsoft et compagnie ont utilis&eacute; le protocole PPP Netbios.
C'est g&eacute;n&eacute;ralement un savant m&eacute;lange tr&egrave;s propri&eacute;taire et une
impl&eacute;mentation ne fonctionne pas forc&eacute;ment avec une autre.</p>
<p>Je laisse ces machins &agrave; quelqu'un d'autre.</p>
<p></p>
<p></p>

<h2>3.50 <A Name="ss3.50"> Je viens de regarder <code>/proc/net/dev</code> comme indiqu&eacute; dans la         documentation et c'est vide...Pourquoi ?</h2>

<p></p>
<p>Avez-vous juste tap&eacute; la commande ``<code>ls -l /proc/net</code>'' en
vous &eacute;tonnant de trouver une taille de z&eacute;ro octets ? Si c'est le
cas, c'est normal. Vous devez faire:</p>
<p>
<blockquote><code>
<pre>
                cat /proc/net/dev
</pre>
</code></blockquote>
</p>
<p>Vous devriez alors voir le contenu de ce fichier, qui ne doit
pas &ecirc;tre vide. Sa taille est toujours indiqu&eacute;e comme &eacute;tant
nulle, c'est le syst&egrave;me de fichiers ``<code>proc</code>''qui
veut &ccedil;a. Ce ne sont pas de vrais fichiers, ils sont simul&eacute;s
par le noyau. Ne tenez pas compte de la taille, tapez la
commande indiqu&eacute;e.</p>
<p></p>
<p></p>

<h2>3.51 <A Name="ss3.51"> Je ne peux pas connecter de/vers mon code Windows NT (Daytona)         avec le PPP Microsoft. Pourquoi diable ?</h2>

<p></p>
<p>Le PPP de Microsoft envoie une authentification de type 0xC207,
alors que le PAP normal est 0xC203.</p>
<p>Microsoft a choisi d'utiliser un protocole d'authentification
non standard dans Windows NT. C'est leur droit le plus strict,
&agrave; condition qu'ils aient enregistr&eacute; leur num&eacute;ro de protocole
avec l'IANA. (C'est le cas).  Toutefois, ils sont dans l'obligation
de supporter la s&eacute;quence de refus du protocole, ce qui est logique.
Il y avait un bogue dans les b&ecirc;ta-versions Daytona, qui peut
encore se trouver dans les versions d&eacute;finitives, qui fait que
cette s&eacute;quence n'est pas support&eacute;e. Il insiste pour que
le syst&egrave;me Linux supporte cette authentification.</p>
<p>Par cons&eacute;quent, allez dans la configuration des param&egrave;tres 
TCP/IP pour Daytona et supprimez la s&eacute;quence d'authentification.
Du coup, tout marchera avec des impl&eacute;mentations standard de PPP,
comme celle de Linux.</p>
<p>Le protocole d'authentification de Microsoft est du type PAP,
avec leur propre algorithme d'encryptage des mots de passe.
Le PAP normal envoie les mots de passe en clair, ce qui
violerait la s&eacute;curit&eacute; C2.</p>
<p></p>

<h2>3.52 <A Name="ss3.52"> Avez-vous un lecteur de courrier compatible PPP ? et pour         les News ?</h2>

<p>Heu... ?</p>
<p>Vous vous trompez de groupe si vous cherchez des bricoles MSDOS.
PPP n'a rien &agrave; voir du tout avec l'agent de transport de courrier !
Ils sont tous ``compatibles'' avec PPP :-)</p>
<p></p>
<p></p>
<p></p>
<p></p>

<p>Chapitre <a href="PPP-FAQ-4.html"> Suivant </a>, Chapitre <a href="PPP-FAQ-2.html"> Pr&eacute;c&eacute;dent </a> </p><p>Table des mati&egrave;res de <a href="PPP-FAQ.html#toc3">ce chapitre</a>,
 Table des mati&egrave;res <a href="PPP-FAQ.html#toc">g&eacute;n&eacute;rale</a></p>
<p><a href="PPP-FAQ.html"> D&eacute;but </a> du document,
 <a href="#0"> D&eacute;but de ce chapitre</a></p>