<!--
     The FreeBSD Documentation Project
     The FreeBSD French Documentation Project

     $FreeBSD$
     Original revision: n.nn
-->

    <chapter id="ppp-and-slip">
      <title>PPP et SLIP</title>
      &trans.a.haby;
      
      <para>Si vous vous connectez &agrave; l'Internet avec un modem ou si vous
        voulez offrir &agrave; d'autres la possibilit&eacute; de se connecter &agrave; l'Internet
        par l'interm&eacute;diaire d'un syst&egrave;me FreeBSD, vous pouvez utiliser PPP ou
        SLIP. Il y a par ailleurs deux versions de PPP:
	<emphasis>en mode utilisateur</emphasis> (aussi appel&eacute;
        <emphasis>iijppp</emphasis>) et <emphasis>int&eacute;gr&eacute; au 
        noyau</emphasis>. Ce chapitre d&eacute;crit les proc&eacute;dures de configuration 
        des deux variantes de PPP et de mise en oeuvre de SLIP.</para>
      
      
      <sect1 id="userppp">
	<title>Configurer PPP en mode utilisateur</title>
	
	<para>La version utilisateur de PPP est apparue avec la version 2.0.5
          de FreeBSD en suppl&eacute;ment &agrave; l'impl&eacute;mentation existante
          de PPP dans le noyau. Qu'a donc de diff&eacute;rent cette
          nouvelle version de PPP qui justifie son ajout? Pour citer les pages
          de manuel:</para>
	
	  <blockquote>
	    <para>Ceci est le logiciel PPP sous forme de processus utilisateur.
             PPP est normalement impl&eacute;ment&eacute; dans le noyau (e.g. le 
             &ldquo;d&eacute;mon&rdquo; <command>pppd</command>) et est alors plus 
             difficile &agrave; d&eacute;boguer ou
             &agrave; modifier. A l'inverse, la pr&eacute;sente impl&eacute;mentation se pr&eacute;sente
             sous forme de processus utilisateur utilisant le pilote de
             p&eacute;riph&eacute;rique &ldquo;tunnel&rdquo; 
             (<devicename>tun</devicename>).</para>
	  </blockquote>
	
	<para>Cela signifie essentiellement qu'au lieu de lancer un 
          &ldquo;d&eacute;mon&rdquo; PPP, le programme <command>ppp</command>
          peut &ecirc;tre ex&eacute;cut&eacute; quand et de la fa&ccedil;on que l'on veut. Il n'y a
          pas besoin de compiler d'interface PPP dans le noyau, parce que le
          programme peut utiliser le pilote &ldquo;tunnel&rdquo; g&eacute;n&eacute;rique
          pour &eacute;changer des donn&eacute;es avec le noyau.</para>
	
	<para>A partir de maintenant, le programme utilisateur 
          <command>ppp</command> sera simplement appel&eacute; ppp, &agrave; moins qu'il ne
          faille explicitement faire la distinction entre lui et d'autres
          logiciels PPP client/serveur comme <command>pppd</command>. Sauf
          indications contraires, toutes les commandes mentionn&eacute;es dans cette
          section doivent &ecirc;tre ex&eacute;cut&eacute;es par le super-utilisateur
	  <username>root</username>.</para>
	
      <para>Il y a de nombreuses am&eacute;liorations dans la version 2 de ppp. Vous
         pouvez savoir quelle est la version que vous utilisez en lan&ccedil;ant ppp
         sans argument et en tapant <command>show version</command> &agrave; l'invite.
         Il est facile de passer &agrave; la version la plus r&eacute;cente de ppp (sur 
         n'importe quelle version de FreeBSD) en t&eacute;l&eacute;chargeant la derni&egrave;re
         version archiv&eacute;e sur 
         <ulink url="http://www.Awfulhak.org/ppp.html">www.Awfulhak.org</ulink>.</para>
      
	<sect2>
	  <title>Avant de commencer</title>
	  
	  <para>Ce document suppose que vous en &ecirc;tes &agrave; peu pr&egrave;s &agrave; ce 
            point:</para>
	  
	  <para>Vous avez un compte chez un fournisseur d'acc&egrave;s Internet (FAI)
            qui vous permet d'utiliser PPP. Vous avez de plus un modem (ou un
            autre p&eacute;riph&eacute;rique) install&eacute; et correctement configur&eacute; avec lequel
            vous pouvez vous connecter chez votre fournisseur d'acc&egrave;s.</para>
	  
	  <para>Vous devrez avoir les informations suivantes &agrave; port&eacute;e de
	    main:</para>
	  
	    <itemizedlist>
	      
	      <listitem>
		<para>Le(s) num&eacute;ro(s) de t&eacute;l&eacute;phone de votre fournisseur 
                   d'acc&egrave;s.</para>
	      </listitem>
	      
	      <listitem>
		<para>Votre identifiant utilisateur et votre mot de passe. Selon
                  le cas, ce seront soit un identifiant et un mot de passe Unix
                  classiques, soit un identifiant et un mot de passe PPP PAP ou
                  CHAP.</para>
	      </listitem>
	      
	      <listitem>
		<para>Les adresses IP d'un ou plusieurs serveurs de noms de 
                  domaines. Votre fournisseur doit normalement vous donner deux
                  adresses IP. Vous <emphasis>devez</emphasis> avoir cette
                  information pour <application>PPP</application> version 1.x,
                  &agrave; moins que vous n'ayez votre propre serveur de noms de 
                  domaines. A partir de la version 2, 
                  <application>PPP</application> supporte la n&eacute;gociation des
                  adresses des serveurs de noms. Si votre fournisseur dispose
                  de cette fonctionnalit&eacute;, alors la commande
	          <command>enable dns</command> dans votre fichier de 
                  configuration dit &agrave; <application>PPP</application> de
                  d&eacute;finir &agrave; votre place les serveurs de noms.</para>
	      </listitem>
	</itemizedlist>

	<para>Les informations suivantes vous ont peut-&ecirc;tre aussi &eacute;t&eacute; donn&eacute;es
          par votre fournisseur d'acc&egrave;s, mais ce n'est pas absolument
          indispensable:</para>

	<itemizedlist>
	  <listitem>
	    <para>L'adresse IP de la passerelle de votre fournisseur. La 
              passerelle est la machine &agrave; laquelle vous vous connecterez et
              qui deviendra votre <emphasis>route par 
              d&eacute;faut</emphasis>&nbsp;-&nbsp;&ldquo;default route&rdquo;. S'il
              ne vous l'a pas donn&eacute;e, vous pouvez en fabriquer une et le serveur
              PPP de votre fournisseur vous donnera l'adresse exacte quand vous
              vous connecterez.</para>
	      
	    <para>ppp conna&icirc;t ce num&eacute;ro IP sous l'appellation
               <literal>HISADDR</literal>.</para>
	</listitem>

	<listitem>
	  <para>Le masque de sous-r&eacute;seau de votre fournisseur d'acc&egrave;s. S'il ne
            vous l'a pas donn&eacute;, vous pouvez sans risque utiliser la valeur
	    <hostid role="netmask">255.255.255.0</hostid>.</para>

	  <para>Si votre fournisseur vous procure une adresse IP fixe et un
            nom de machine, vous pouvez aussi introduire ces informations dans
            votre configuration. Sinon, nous le laisserons simplement nous
            attribuer l'adresse IP qui lui convient.</para>
	</listitem>
      </itemizedlist>
	  
	  <para>Si vous n'avez pas l'une des informations requises, contactez
            votre fournisseur et assurez-vous qu'il vous la donne.</para>
	  
	</sect2>
	
	<sect2>
	  <title>Compiler un noyau pour ppp</title>
	  
	  <para>Comme on l'a vu dans la description qu'en donnent les pages de
            manuel, <command>ppp</command> 
            utilise le pilote <devicename>tun</devicename> du noyau. Il faut
            vous assurez que le support de ce pseudo-p&eacute;riph&eacute;rique est bien 
            inclus dans votre noyau.</para>
	  
	  <para>Pour cela, allez dans votre r&eacute;pertoire de configuration du
            noyau (<filename>/sys/i386/conf</filename> ou
	    <filename>/sys/pc98/conf</filename>) et consultez votre fichier
            de configuration. Il doit comporter quelque part la ligne
	  
	  <programlisting>
pseudo-device tun 1</programlisting>
	  
	    Elle figure en standard dans le noyau <filename>GENERIC</filename>,
            donc, si vous n'avez pas install&eacute; de noyau sur-mesure ou n'avez pas
            de r&eacute;pertoire <filename>/sys</filename>, vous n'avez rien
	    &agrave; changer.</para>
	  
	  <para>Si la ligne n'est pas dans le fichier de configuration de votre
            noyau, ou si vous avez besoin de plus d'un p&eacute;riph&eacute;rique 
            <devicename>tun</devicename> (par exemple, si vous installez un
            serveur qui puisse fournir 16 connexions simultan&eacute;es vers 
            l'ext&eacute;rieur, vous devrez mettre <literal>16</literal> au lieu de
	    <literal>1</literal>), il vous faut alors ajouter la ligne, 
            recompiler, r&eacute;installer et red&eacute;marrer avec le nouveau noyau. 
            Reportez-vous s'il vous pla&icirc;t au chapitre
	    <link linkend="kernelconfig">Configurer le noyau de FreeBSD</link>
            pour plus d'informations sur la marche &agrave; suivre.</para>
	  
	  <para>Vous pouvez voir de combien de pseudo-p&eacute;riph&eacute;riques 
            <devicename>tun</devicename> dispose votre noyau avec la
	    commande suivante:</para>
	  
	  <informalexample>
	    <screen>&prompt.root; <userinput>ifconfig -a</userinput>
tun0: flags=8051&lt;UP,POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1500
        inet 200.10.100.1 --&gt; 203.10.100.24 netmask 0xffffffff
tun1: flags=8050&lt;POINTOPOINT,RUNNING,MULTICAST&gt; mtu 576
tun2: flags=8051&lt;UP,POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1500
        inet 203.10.100.1 --&gt; 203.10.100.20 netmask 0xffffffff
tun3: flags=8010&lt;POINTOPOINT,MULTICAST&gt; mtu 1500</screen>
	    </informalexample>
	  
	  <para>Dans cette exemple, il y a quatre p&eacute;riph&eacute;riques
            &ldquo;tunnel&rdquo;, dont deux sont d&eacute;j&agrave; configur&eacute;s et utilis&eacute;s. 
            Remarquez que l'indication <literal>RUNNING</literal> signifie que 
            l'interface
            a d&eacute;j&agrave; &eacute;t&eacute; utilis&eacute;e &agrave; un moment donn&eacute;&nbsp;-&nbsp;ce n'est pas
            une erreur si votre interface n'appara&icirc;t pas comme
	    <literal>RUNNING</literal>.</para>
	  
	  <para>Si votre noyau n'inclut pas de pseudo-p&eacute;riph&eacute;rique 
            <devicename>tun</devicename> et que vous ne pouvez pas le recompiler
            pour une raison ou une autre, tout n'est pas perdu. Vous devriez 
            pouvoir charger dynamiquement le code. Voyez les pages de manuel de
	    <citerefentry><refentrytitle>modload</refentrytitle><manvolnum>8</manvolnum></citerefentry>
	    et <citerefentry><refentrytitle>lkm</refentrytitle><manvolnum>4</manvolnum></citerefentry> 
            appropri&eacute;es pour plus de d&eacute;tails.</para>
	  
	  <para>Vous voudrez peut-&ecirc;tre en profiter pour configurer en m&ecirc;me temps
            un coupe-feu. Vous trouverez plus de d&eacute;tails &agrave; la section 
	    <link linkend="firewalls">Coupe-Feux</link>.</para>
	  
	</sect2>
	
	<sect2>
	  <title>Tester le p&eacute;riph&eacute;rique <devicename>tun</devicename></title>
	  
	  <para>La plupart des utilisateurs n'auront besoin que d'un
            p&eacute;riph&eacute;rique <devicename>tun</devicename> 
            (<filename>/dev/tun0</filename>). Si vous en avez d&eacute;finis plus d'un
	    (i.e., une autre valeur que <literal>1</literal> &agrave; la ligne
            <literal>pseudo-device</literal> du fichier de configuration du
            noyau), adaptez toutes les r&eacute;f&eacute;rences &agrave;
	    <devicename>tun0</devicename> dans ce qui suit &agrave; votre cas
	    particulier.</para>
	  
	  <para>La meilleure fa&ccedil;on de vous assurez que votre p&eacute;riph&eacute;rique
            <devicename>tun0</devicename> est correctement configur&eacute; est de
            recr&eacute;er le fichier sp&eacute;cial de p&eacute;riph&eacute;rique. Pour cela, ex&eacute;cutez les 
            commandes suivantes:</para>
	  
	    <informalexample>
	      <screen>&prompt.root; <userinput>cd /dev</userinput>
&prompt.root; <userinput>./MAKEDEV tun0</userinput></screen>
	    </informalexample>
	  
	  <para>Si vous avez 16 p&eacute;riph&eacute;riques &ldquo;tunnel&rdquo;
            dans votre noyau, il vous 
            faudra cr&eacute;er plus que <filename>tun0</filename>:</para>

	    <informalexample>
	      <screen>&prompt.root; <userinput>cd /dev</userinput>
&prompt.root; <userinput>./MAKEDEV tun15</userinput></screen>
	    </informalexample>
	  
	  <para>Pour v&eacute;rifier encore que votre noyau est correctement configur&eacute;,
            la commande ci-dessous devrait vous donner le m&ecirc;me r&eacute;sultat:</para>
	  
	    <informalexample>
	      <screen>&prompt.root; <userinput>ifconfig tun0</userinput>
tun0: flags=8050&lt;POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1500</screen>
	    </informalexample>

      <para>L'indication <literal>RUNNING</literal> n'est peut-&ecirc;tre pas encore
         pr&eacute;sente, auquel cas vous verriez:</para>

      <informalexample>
	<screen>&prompt.root; <userinput>ifconfig tun0</userinput>
tun0: flags=8010&lt;POINTOPOINT,MULTICAST> mtu 1500</screen>
      </informalexample>
	</sect2>
	
	<sect2>
	  <title>Configuration du solveur de noms</title>
	  
	  <para>Le solveur est la partie du syst&egrave;me qui convertit les adresses
            IP en noms de machines et vice versa. Il est configurable pour
            consulter des tables de correspondances entre adresses et noms
            qui peuvent se trouver &agrave; deux endroits diff&eacute;rents. La premi&egrave;re est
            le fichier <filename>/etc/hosts</filename>
	    (<command>man 5 hosts</command>). La seconde est le service de noms
            de domaines Internet (&ldquo;Domain Name 
            Service&rdquo;&nbsp;-&nbsp;DNS), une base de donn&eacute;es distribu&eacute;e
            dont la description d&eacute;borde le cadre du pr&eacute;sent document.</para>
	  
	  <para>Cette section d&eacute;crit bri&egrave;vement comment configurer votre
	    solveur.</para>
	  
	  <para>Le solveur est un ensemble d'appels syst&egrave;me qui font la
            conversion, mais vous devez leur dire o&ugrave; trouver l'information. 
            Cela se fait en modifiant le fichier
	    <filename>/etc/host.conf</filename>. 
            <emphasis>N'appelez pas</emphasis> ce fichier
	    <filename>/etc/hosts.conf</filename> (Remarquez le 
            <literal>s</literal> en trop), cela pourrait poser des 
            probl&egrave;mes.</para>
	  
	  <sect3>
	    <title>Renseigner le fichier
            <filename>/etc/host.conf</filename></title>
	    
	    <para>Ce fichier doit contenir les deux lignes suivantes (dans cet
              ordre):</para>

	    <programlisting>
hosts
bind</programlisting>
	    
	    <para>Cela dit au solveur de chercher d'abord dans le fichier
	      <filename>/etc/hosts</filename>, puis de consulter le
	      DNS s'il n'a pas trouv&eacute; le nom recherch&eacute;.</para>

	  </sect3>
	  
	  <sect3>
	    <title>Renseigner le fichier 
              <filename>/etc/hosts</filename>(5)</title>
	    
	    <para>Ce fichier doit contenir les noms et les adresses IP des 
              machines de votre r&eacute;seau. Il doit au grand minimum contenir les
              entr&eacute;es pour la machine sur laquelle tournera ppp. Supposons
              qu'elle s'appelle <hostid role="fqdn">foo.bar.com</hostid>
	      et que son adresse IP soit 
              <hostid role="ipaddr">10.0.0.1</hostid>,
	      <filename>/etc/hosts</filename> devra comporter:</para>
	    
	    <programlisting>
127.0.0.1    localhost
10.0.0.1     foo.bar.com		  foo</programlisting>
	    
	    <para>La premi&egrave;re ligne d&eacute;finit l'adresse <hostid>localhost</hostid>
              comme synonyme de la machine elle-m&ecirc;me. Quelle que soit votre 
              propre adresse IP, l'adresse IP sur cette ligne doit toujours
              &ecirc;tre <hostid role="ipaddr">127.0.0.1</hostid>. La deuxi&egrave;me ligne
              affecte au nom <hostid role="fqdn">foo.bar.com</hostid> (et au
              raccourci <hostid>foo</hostid>) l'adresse IP
	      <hostid role="ipaddr">10.0.0.1</hostid>.</para>
	    
	    <para>Si votre fournisseur vous a donn&eacute; une adresse IP 
              statique et un 
              nom de machine, mettez-les &agrave; la place de l'entr&eacute;e
	      <hostid role="ipaddr">10.0.0.1</hostid>.</para>
	    
	  </sect3>
	  
	  <sect3>
	    <title>Renseigner le fichier 
              <filename>/etc/resolv.conf</filename></title>
	    
	    <para><filename>/etc/resolv.conf</filename> dit au solveur ce qu'il
              doit faire. Si vous avez en service votre propre DNS, vous pouvez 
              le laisser vide. Vous devez normalement y mettre la(les) ligne(s)
              suivante(s):</para>
              
	    <programlisting>
nameserver <replaceable>x.x.x.x</replaceable>
nameserver <replaceable>y.y.y.y</replaceable>
domain <replaceable>bar.com</replaceable></programlisting>
	    
	    <para><hostid
		role="ipaddr"><replaceable>x.x.x.x</replaceable></hostid> et
	      <hostid role="ipaddr"><replaceable>y.y.y.y</replaceable></hostid>
              sont les adresses que votre fournisseur vous a donn&eacute;es.
	      Mettez autant de lignes <literal>nameserver</literal> qu'il vous
              a donn&eacute; d'adresses. La ligne <literal>domain</literal> se r&eacute;f&egrave;re 
              par d&eacute;faut au nom de domaine de votre machine, et est 
              probablement inutile. Consultez les pages de manuel de
	      <filename>resolv.conf</filename> pour plus de d&eacute;tails sur les
              autres entr&eacute;es possibles dans ce fichier.</para>

	<para>Si vous utilisez la version 2 ou ult&eacute;rieure de PPP, la commande
          <command>enable dns</command> dira &agrave; PPP de demander &agrave; votre 
          fournisseur de confirmer les informations sur les serveurs de noms.
          S'il vous donne des adresses diff&eacute;rentes (ou s'il n'y a pas de ligne
          <literal>nameserver</literal> dans
	  <filename>/etc/resolv.conf</filename>), PPP r&eacute;crira dans le fichier
	  les valeurs que votre fournisseur lui aura donn&eacute;es.</para>
	  </sect3>
	</sect2>
	
	<sect2>
	  <title>Configurer <command>ppp</command></title>
	  
	  <para>Le programme utilisateur <command>ppp</command> et le
            &ldquo;d&eacute;mon&rdquo; <command>pppd</command> (l'impl&eacute;mentation de 
	    PPP dans le noyau) emploient tous deux des fichiers de configuration
	    qui se trouvent dans le r&eacute;pertoire <filename>/etc/ppp</filename>. 
            Les fichiers de configuration fournis en exemple sont une bonne
            r&eacute;f&eacute;rence pour ppp en mode utilisateur, ne les effacez pas.</para>
	  
	  <para>Pour configurer <command>ppp</command>, vous devrez, selon vos
            besoins, renseigner un certain nombre de fichiers. Ce que vous y
            mettrez d&eacute;pend entre autres du fait que votre fournisseur vous
            alloue une adresse IP statique (i.e., on vous donne une adresse IP
            et vous utilisez toujours la m&ecirc;me) ou dynamique (i.e., votre adresse
            IP peut &ecirc;tre diff&eacute;rente &agrave; chaque session PPP).</para>
	  
	  <sect3 id="userppp-staticIP">
	    <title>PPP et les adresses IP statiques</title>
	    
	    <para>Vous devrez cr&eacute;er un fichier de configuration appel&eacute;
	      <filename>/etc/ppp/ppp.conf</filename>. Il ressemblera &agrave;
	      l'exemple ci-dessous:</para>

	    <note>
	      <para>Les lignes qui se terminent par <literal>:</literal> 
                commencent en premi&egrave;re colonne. Toutes les autres lignes 
                doivent &ecirc;tre indent&eacute;es avec des espaces ou des tabulations
                comme dans l'exemple donn&eacute;.</para>
	    </note>
	    
	      <programlisting>
1     default:
2       set device /dev/cuaa0
3       set speed 115200
4       set dial "ABORT BUSY ABORT NO\\sCARRIER TIMEOUT 5 \"\" ATE1Q0 OK-AT-OK \\dATDT\\TTIMEOUT 40 CONNECT"
5     provider:
6       set phone "(0123) 456 7890"
7       set login "TIMEOUT 10 \"\" \"\" gin:--gin: foo word: bar col: ppp"
8       set timeout 300
9       set ifaddr <replaceable>x.x.x.x</replaceable> <replaceable>y.y.y.y</replaceable> 255.255.255.0 0.0.0.0
10      add default HISADDR	  
11      enable dns</programlisting>

	    <para>Ne mettez pas les num&eacute;ros de ligne, ils ne sont l&agrave; que pour
              pouvoir y faire r&eacute;f&eacute;rence dans la suite de cette 
              documentation.</para>
	    
	      <variablelist>
		<varlistentry><term>Ligne 1:</term>
		  <listitem>
		    <para>D&eacute;finit l'entr&eacute;e par d&eacute;faut. Les commandes de cette
                      entr&eacute;e sont automatiquement ex&eacute;cut&eacute;es au lancement de
                      ppp.</para>
		  </listitem>
		</varlistentry>
		
		<varlistentry><term>Ligne 2:</term>
		  
		  <listitem>
		    <para>Identifie le p&eacute;riph&eacute;rique auquel est connect&eacute; le 
                      modem. <devicename>COM1:</devicename> correspond &agrave; 
                     <filename>/dev/cuaa0</filename> et
                     <devicename>COM2:</devicename> &agrave; 
                     <filename>/dev/cuaa1</filename>.</para>
		  </listitem>
		</varlistentry>
		
		<varlistentry><term>Ligne 3:</term>
		  
		  <listitem>
		    <para>Fixe la vitesse &agrave; laquelle vous voulez vous
                      connecter. Si 115200 ne marche pas (cela devrait 
                      fonctionner avec n'importe quel modem assez r&eacute;cent),
                      essayez avec 38400.</para>
		  </listitem>
		</varlistentry>
		
		<varlistentry><term>Ligne 4:</term>
		  
		  <listitem>
		    <para>La cha&icirc;ne d'appel. PPP en mode utilisateur utilise une
                      syntaxe &ldquo;commande envoy&eacute;e/r&eacute;ponse attendue&rdquo;
                      semblable &agrave; celle du programme
		      <citerefentry><refentrytitle>chat</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
		      Reportez-vous aux pages de manuel pour plus 
                      d'informations sur les caract&eacute;ristiques de ce langage.</para>
		  </listitem>
		</varlistentry>
		
		<varlistentry><term>Ligne 5:</term>
		  
		  <listitem>
		    <para>D&eacute;finit une entr&eacute;e pour un fournisseur appel&eacute;
		      &ldquo;provider&rdquo;.</para>
		  </listitem>
		</varlistentry>
		
		<varlistentry><term>Ligne 6:</term>
		  
		  <listitem>
		    <para>Donne le num&eacute;ro de t&eacute;l&eacute;phone de ce fournisseur.
                      On peut indiquer plusieurs num&eacute;ros de t&eacute;l&eacute;phone avec
                      les caract&egrave;res <literal>:</literal> ou 
                      <literal>|</literal> comme s&eacute;parateur. La diff&eacute;rence
                      entre les deux est d&eacute;crite dans les pages de manuel de
                      ppp. En r&eacute;sum&eacute;, si vous voulez utiliser les num&eacute;ros les
                      uns apr&egrave;s les autres, utilisez <literal>:</literal>. 
                      Si vous voulez toujours essayer d'appeler le premier
                      num&eacute;ro et n'utiliser les autres qu'en cas d'&eacute;chec, 
                      servez-vous de <literal>|</literal>. Mettez toujours la
                      s&eacute;rie de num&eacute;ros de t&eacute;l&eacute;phone entre guillemets comme
                      dans l'exemple.</para>
		  </listitem>
		</varlistentry>
		
		<varlistentry><term>Ligne 7:</term>
		  
		  <listitem>
		    <para>La s&eacute;quence d'ouverture de session suit la m&ecirc;me
                      syntaxe de style &ldquo;chat&rdquo; que la s&eacute;quence
                      d'&eacute;tablissement de la connexion. Dans l'exemple donn&eacute;,
                      la s&eacute;quence correspond &agrave; un service o&ugrave; l'ouverture
                      de session ressemble &agrave;:</para> 
		    
		    <informalexample>
		      <screen>J. Random Provider
login: <replaceable>foo</replaceable>
password: <replaceable>bar</replaceable>
protocol: ppp</screen>
		    </informalexample>
		    
		    <para>Vous devrez modifier cette proc&eacute;dure pour l'adapter
                       &agrave; vos besoins. Quand vous la mettez pour la premi&egrave;re
                       fois au point, activez la trace de &ldquo;chat&rdquo;
                       pour v&eacute;rifier que la conversation se d&eacute;roule conform&eacute;ment
                       &agrave; votre attente.</para>

	      <para>Si vous utilisez PAP ou CHAP, il n'y aura pas &agrave; ce stade
                 d'ouverture de session, la s&eacute;quence peut donc &ecirc;tre laiss&eacute;e &agrave;
                 blanc. Voyez la section
	         <link linkend="userppp-PAPnCHAP">authentification PAP et
                 CHAP</link> pour plus de d&eacute;tails.</para>
		  </listitem>
		</varlistentry>
		
		<varlistentry><term>Ligne 8:</term>
		  
		  <listitem>
		    <para>D&eacute;finit le d&eacute;lai de connexion par d&eacute;faut (en 
                      secondes). Ici, la connexion sera automatiquement coup&eacute;e
                      apr&egrave;s 300 secondes d'inactivit&eacute;. Si vous ne voulez pas
                      de coupure automatique apr&egrave;s un temps d'inactivit&eacute;
                      donn&eacute;, mettez cette valeur &agrave; z&eacute;ro.</para>
		  </listitem>
		</varlistentry>
		
		<varlistentry><term>Ligne 9:</term>
		  
		  <listitem>
		    <para>Donne les adresses des interfaces. La cha&icirc;ne
                     <replaceable>x.x.x.x</replaceable> doit &ecirc;tre remplac&eacute;e
                      par l'adresse IP que votre fournisseur vous a allou&eacute;e.
                      La cha&icirc;ne <replaceable>y.y.y.y</replaceable> doit &ecirc;tre
                      remplac&eacute;e par l'adresse IP que votre fournisseur vous
                      a donn&eacute;e comme passerelle (la machine &agrave; laquelle vous
                      vous connectez). Si votre fournisseur ne vous a pas
                      indiqu&eacute; d'adresse pour la passerelle, utilisez
		      <hostid role="netmask">10.0.0.2/0</hostid>. Si vous
                      devez &ldquo;deviner&rdquo; cette adresse, veillez &agrave;
                      cr&eacute;er une entr&eacute;e dans 
                      <filename>/etc/ppp/ppp.linkup</filename> 
		      comme expliqu&eacute; &agrave; la section
		      <link linkend="userppp-dynamicIP">PPP et les adresses
                      IP dynamiques</link>. Si cette ligne manque, 
		      <command>ppp</command> ne pourra pas &ecirc;tre utilis&eacute; en
		      mode <option>-auto</option> ou
		      <option>-dynamic</option>.</para>
		  </listitem>
		</varlistentry>
		
		<varlistentry><term>Ligne 10:</term>
		  
		  <listitem>
		    <para>Ajoute une route par d&eacute;faut vers la passerelle de
                      votre fournisseur. Le mot r&eacute;serv&eacute; 
                      <literal>HISADDR</literal> est remplac&eacute; par l'adresse de
                      la passerelle donn&eacute;e &agrave; la ligne 9. Il est important que 
                      cette ligne apparaisse apr&egrave;s la pr&eacute;c&eacute;dente, sans quoi
		      le valeur de <literal>HISADDR</literal> n'est pas encore
                      initialis&eacute;e.</para>

		  </listitem>
		</varlistentry>

	  <varlistentry>
	    <term>Ligne 11:</term>
	    
	    <listitem>
	      <para>Cette ligne dit &agrave; PPP de demander &agrave; votre fournisseur de
                confirmer que les adresses des serveurs de noms sont correctes.
                Si votre fournisseur supporte cette fonctionnalit&eacute;, PPP peut
                alors mettre &agrave; jour les entr&eacute;es pour les serveurs de noms dans
		<filename>/etc/resolv.conf</filename> avec les bonnes 
                valeurs.</para>
	    </listitem>
	  </varlistentry>
	      </variablelist>
	    
	    <para>Il n'est pas utile d'ajouter une entr&eacute;e au fichier
	      <filename>ppp.linkup</filename> lorsque vous avez une adresse IP
              statique car les entr&eacute;es de votre table de routage sont correctes
              avant m&ecirc;me que vous vous soyez connect&eacute;. Vous pouvez malgr&eacute; tout
              vouloir ajouter des entr&eacute;es pour lancer des programmes une fois
              que vous &ecirc;tes d&eacute;j&agrave; connect&eacute;. C'est expliqu&eacute; plus bas dans 
              l'exemple pour <command>sendmail</command>.</para>
	    
	    <para>Il y a des exemples de fichiers de configuration dans le
	      r&eacute;pertoire <filename>/etc/ppp</filename>.</para>
	    
	  </sect3>
	  
	  <sect3 id="userppp-dynamicIP">
	    <title>PPP et les adresses IP dynamiques</title>
	    
	    <para>Si votre fournisseur ne vous donne pas d'adresse IP statique,
	      <command>ppp</command> peut &ecirc;tre configur&eacute; pour n&eacute;gocier les
              adresses locale et &eacute;loign&eacute;e. Cela se fait en 
              &ldquo;devinant&rdquo; l'adresse IP et en laissant
	      <command>ppp</command> la rectifier avec le protocole de 
              configuration IP (&ldquo;IP Configuration 
              Protocol&rdquo;&nbsp;-&nbsp;IPCP) une fois la connexion &eacute;tablie.
              Le fichier de configuration <filename>ppp.conf</filename> est le 
              m&ecirc;me que pour <link linkend="userppp-staticIP">PPP et les
              addresses IP statiques</link>, aux modifications suivantes
              pr&egrave;s:</para>
	    
	    <programlisting>
9      set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0 0.0.0.0</programlisting>
	    
	    <para>Encore une fois, ne mettez pas les num&eacute;ros de ligne, ils ne 
              sont l&agrave; que pour y faire r&eacute;f&eacute;rence dans le suite des explications.
	      Indentez avec au moins un blanc.</para>
	    
	      <variablelist>
		<varlistentry><term>Ligne 9:</term>
		  <listitem>
		    <para>Le nombre qui suit le caract&egrave;re <literal>/</literal> 
                      est le nombre de bits de l'adresse que ppp ne n&eacute;gociera
                      pas. Vous voudrez peut &ecirc;tre utiliser des adresses IP plus
                      adapt&eacute;es &agrave; votre cas particulier, mais l'exemple donn&eacute;
                      marchera dans tous les cas de figure.</para>

	      <para>Le dernier argument (<literal>0.0.0.0</literal>) dit &agrave; PPP
		de n&eacute;gocier en utilisant l'adresse <hostid
		  role="ipaddr">0.0.0.0</hostid> plut&ocirc;t que <hostid
		  role="ipaddr">10.0.0.1</hostid>. Ne mettez pas
		<literal>0.0.0.0</literal> en premier argument de
		<command>set ifaddr</command> parce que cela emp&ecirc;che PPP
                de d&eacute;finir la route initiale en mode
		<option>-auto</option>.</para>
		    
		  </listitem>
		</varlistentry>
	      </variablelist>
	    
	    <para>Si vous utilisez la version 1.x de PPP, il vous faudra aussi
              une entr&eacute;e dans <filename>/etc/ppp/ppp.linkup</filename>.
	      <filename>ppp.linkup</filename> est utilis&eacute; apr&egrave;s que la connexion
              ait &eacute;t&eacute; &eacute;tablie. A ce stade, <command>ppp</command> conna&icirc;t les
              adresses IP <emphasis>r&eacute;elles</emphasis>. L'entr&eacute;e qui suit
              supprimera les routes erron&eacute;es existantes et cr&eacute;era les routes
              valides:</para>
	    
	    <programlisting>
1     provider:
2       delete ALL
3       add 0 0 HISADDR</programlisting>
	    
	      <variablelist>
		<varlistentry><term>Ligne 1:</term>
		  <listitem>
		    <para>A l'&eacute;tablissement de la connexion, 
                      <command>ppp</command> parcourera les entr&eacute;es de
		      <filename>ppp.linkup</filename> selon le principe
                      suivant. Il essayera d'abord de trouver le m&ecirc;me libell&eacute;
                      que celui qui a &eacute;t&eacute; employ&eacute; dans
                      <filename>ppp.conf</filename>. S'il &eacute;choue, il cherchera
                      une entr&eacute;e pour l'adresse IP de la passerelle. C'est une
                      entr&eacute;e dont le libell&eacute; est compos&eacute; de quatre entiers (pour
                      les quatre octets). S'il ne la trouve pas non plus, il 
                      cherchera l'entr&eacute;e <literal>MYADDR</literal>.</para>
		  </listitem>
		</varlistentry>
		
		<varlistentry><term>Line 2:</term>
		  
		  <listitem>
		    <para>Cette ligne dit &agrave; <command>ppp</command> de supprimer
                      toutes les routes existantes pour l'interface 
		      <devicename>tun</devicename> qu'il utilise (sauf la route
		      directe).</para>
		  </listitem>
		</varlistentry>
		
		<varlistentry><term>Ligne 3:</term>
		  
		  <listitem>
                    <para>Cette ligne dit &agrave; <command>ppp</command> d'ajouter
                      une route par d&eacute;faut vers <literal>HISADDR</literal>.
		      <literal>HISADDR</literal> sera remplac&eacute;e par l'adresse IP
		      de la passerelle n&eacute;goci&eacute;e par IPCP.</para>
		    
		  </listitem>
		</varlistentry>
	      </variablelist>
	    
	    <para>Voyez l'entr&eacute;e &ldquo;pmdemand&rdquo; dans les fichiers
	      <filename>/etc/ppp/ppp.conf.sample</filename> et
	      <filename>/etc/ppp/ppp.linkup.sample</filename> pour avoir un
              exemple d&eacute;taill&eacute;.</para>

	<para>La version 2 de PPP introduit les &ldquo;routes 
          persistantes&rdquo;. Toutes les lignes 
	  <literal>add</literal> ou <literal>delete</literal> qui contiennent
	  <literal>MYADDR</literal> ou <literal>HISADDR</literal> sont
          m&eacute;moris&eacute;es et chaque fois que la valeur de
	  <literal>MYADDR</literal> ou <literal>HISADDR</literal> change, les
	  routes sont red&eacute;finies. Il n'est donc plus n&eacute;cessaire de r&eacute;p&eacute;ter ces
	  lignes dans <filename>ppp.linkup</filename>.</para>
	  </sect3>
	  
	  <sect3>
	    <title>Recevoir des appels entrants avec <command>ppp</command></title>
	    
	    <para>Cette section vous explique comment configurer 
              <command>ppp</command> pour l'utiliser comme serveur.</para>
	    
	    <para>Quand vous configurez <command>ppp</command> pour recevoir
              des appels entrants sur une machine connect&eacute;e &agrave; un r&eacute;seau local,
              vous devez d&eacute;cider si vous transmettrez des paquets vers le
              r&eacute;seau local. Si c'est le cas, vous devrez allouer &agrave; la machine
              distante une adresse IP sur votre sous-r&eacute;seau local et utiliser la
              commande
	    
	    <programlisting>
enable proxy</programlisting>
	    
	    dans le fichier <filename>ppp.conf</filename>. Vous devrez aussi
            vous assurer que le fichier <filename>/etc/rc.conf</filename> 
            (ce fichier s'appelait auparavant 
             <filename>/etc/sysconfig</filename>) contienne la ligne:</para>
	  	    
	    <programlisting>
gateway=YES</programlisting>
	  	    
	    <sect4>
	      <title>Quel &ldquo;getty&rdquo;?</title>
	      
	      <para>La section 
                  <link linkend="dialup">Connexions t&eacute;l&eacute;phoniques</link>
		  d&eacute;crit en d&eacute;tail la mise en oeuvre des connexions
                  entrantes avec &ldquo;getty&rdquo;.</para>
	      
	      <para>Une alternative &agrave; <command>getty</command> est <ulink
		  url="http://www.leo.org/~doering/mgetty/index.html">mgetty</ulink>, une version de <command>getty</command> sp&eacute;cialement con&ccedil;ue pour les connexions t&eacute;l&eacute;phoniques.</para>
	      
	      <para>Un des avantages de <command>mgetty</command> est qu'il
		<emphasis>discute</emphasis> avec les modems, ce qui signifie
                que si le port est marqu&eacute; &ldquo;off&rdquo; dans
		<filename>/etc/ttys</filename>, votre modem ne d&eacute;crochera pas
		le t&eacute;l&eacute;phone.</para>
	      
	      <para>Les derni&egrave;res versions de <command>mgetty</command> (&agrave;
                partir de la 0.99b&ecirc;ta) suportent aussi la d&eacute;tection automatique
		des fluxs PPP, ce qui permet &agrave; vos clients d'acc&eacute;der au serveur
		sans ex&eacute;cuter de proc&eacute;dures particuli&egrave;res.</para>
	      
	      <para>Voyez <link linkend="userppp-mgetty">Mgetty et
		  AutoPPP</link> pour plus d'informations sur
                  <command>mgetty</command>.</para>
	      
	    </sect4>
	    
	    <sect4>
	      <title>Autorisations pour PPP</title>
	      
	      <para><command>ppp</command> doit normalement &ecirc;tre ex&eacute;cut&eacute; avec un
                IDentifiant utilisateur de 0. Cependant, si vous voulez 
                autoriser l'ex&eacute;cution du serveur <command>ppp</command>, comme
                d&eacute;crit ci-dessous, sous un compte utilisateur ordinaire, vous
                devez autoriser ces utilisateurs &agrave; ex&eacute;cuter 
                <command>ppp</command> en les ajoutant au groupe
		<username>network</username> dans
		<filename>/etc/group</filename>.</para>

	  <para>Vous devrez aussi leur donner acc&egrave;s &agrave; une ou plusieurs sections
            du fichier de configuration avec la commande
            <command>allow</command>:</para>

	  <programlisting>
allow users fred mary</programlisting>

	  <para>Si vous mettez cette commande dans la section
            <literal>default</literal>, vous donnez aux utilisateurs mentionn&eacute;s
            acc&egrave;s &agrave; tout.</para>
	    </sect4>
	    
	    <sect4>
	      <title>Installer une proc&eacute;dure PPP pour les utilisateurs
                 avec des adresses IP dynamiques</title>
	      
	      <para>Cr&eacute;ez un fichier appel&eacute;
		<filename>/etc/ppp/ppp-shell</filename> comme suit:</para>
	      
	      <programlisting>
#!/bin/sh
IDENT=`echo $0 | sed -e 's/^.*-\(.*\)$/\1/'`
CALLEDAS="$IDENT"
TTY=`tty`

if [ x$IDENT = xdialup ]; then
        IDENT=`basename $TTY`
fi

echo "PPP pour $CALLEDAS sur $TTY"
echo "D&eacute;marrage PPP pour $IDENT"

exec /usr/sbin/ppp -direct $IDENT</programlisting>
	      
	      <para>Cette proc&eacute;dure doit &ecirc;tre ex&eacute;cutable. Cr&eacute;ez maintenant un
		lien symbolique appel&eacute; <filename>ppp-dialup</filename> sur
                cette proc&eacute;dure avec la commande:</para>
	      
	      <informalexample>
		<screen>&prompt.root; <userinput>ln -s ppp-shell /etc/ppp/ppp-dialup</userinput></screen>
	      </informalexample>
	      
	      <para>Utilisez cette proc&eacute;dure comme
		<emphasis>interpr&eacute;teur de commandes</emphasis> pour tous vos
                utilisateurs qui se connectent avec ppp. Voici une exemple de
                fichier <filename>/etc/password</filename> avec un utilisateur
		PPP appel&eacute; <username>pchilds</username>. (n'oubliez pas de ne
		pas &eacute;diter directement le fichier <filename>passwd</filename>,
                utilisez <command>vipw</command>):</para>
	      
	      <programlisting>
pchilds:*:1011:300:Peter Childs PPP:/home/ppp:/etc/ppp/ppp-dialup</programlisting>
	      
	      <para>Cr&eacute;ez un r&eacute;pertoire <filename>/home/ppp</filename> que tout
                le monde puisse lire, avec le fichier vide suivant:
	      
	      <informalexample>
		<screen>-r--r--r--   1 root     wheel           0 May 27 02:23 .hushlogin
-r--r--r--   1 root     wheel           0 May 27 02:22 .rhosts</screen>
	      </informalexample>
	      
	     ce qui &eacute;vite que le contenu du fichier 
             <filename>/etc/motd</filename> soit affich&eacute;
	     &agrave; l'ouverture de session.</para>
	      
	    </sect4>
	    
	    <sect4>
	      <title>Installer une proc&eacute;dure PPP pour les utilisateurs
                 avec des adresses IP statiques</title>
	      
	      <para>Cr&eacute;ez le fichier <filename>ppp-shell</filename> comme d&eacute;crit
                ci-dessus, et pour chaque compte auquel est assign&eacute;e une adresse
                IP fixe, cr&eacute;ez un lien symbolique sur
		<filename>ppp-shell</filename>.</para>
	      
	      <para>Par exemple, si vous avez trois clients appel&eacute;s 
                <username>fred</username>, <username>sam</username>,
		et <username>mary</username>, qui se connectent par t&eacute;l&eacute;phone et
                pour qui vous servez de passerelle sur des r&eacute;seaux 
                de classe C, vous taperez les commandes suivantes:</para>
	      
	      <informalexample>
		<screen>&prompt.root; <userinput>ln -s /etc/ppp/ppp-shell /etc/ppp/ppp-fred</userinput>
&prompt.root; <userinput>ln -s /etc/ppp/ppp-shell /etc/ppp/ppp-sam</userinput>
&prompt.root; <userinput>ln -s /etc/ppp/ppp-shell /etc/ppp/ppp-mary</userinput></screen>
		</informalexample>
	      
	      <para>Vous devez d&eacute;finir comme interpr&eacute;teur de commandes de chacun
                de ces comptes les liens symboliques que vous venez de cr&eacute;er.
		(ie. <filename>/etc/ppp/ppp-mary</filename> pour
                <username>mary</username>, etc.)</para>
	      
	    </sect4>
	    
	    <sect4>
	      <title>Renseigner ppp.conf pour les utilisateurs avec des
                 adresses IP dynamiques</title>
	      
	      <para>Le fichier <filename>/etc/ppp/ppp.conf</filename> doit
                contenir quelque chose qui ressemble &agrave;:</para>
	      
	      <programlisting>
default:
  set debug phase lcp chat
  set timeout 0

ttyd0:
  set ifaddr 203.14.100.1 203.14.100.20 255.255.255.255
  enable proxy

ttyd1:
  set ifaddr 203.14.100.1 203.14.100.21 255.255.255.255
  enable proxy</programlisting>

	      <note>
		<para>L'indentation est importante.</para>
	      </note>
	      
	      <para>La section <literal>default:</literal> est utilis&eacute;e pour
                chaque session. Cr&eacute;ez une entr&eacute;e semblable &agrave; celle pour
		<literal>ttyd0:</literal> ci-dessus pour chaque ligne activ&eacute;e
                dans <filename>/etc/ttys</filename>. Vous devez attribuer &agrave;
                chaque ligne une adresse IP dans votre plage d'adresses IP
                dynamiques.</para>
	      
	    </sect4>
	    
	    <sect4>
	      <title>Renseigner <filename>ppp.conf</filename> pour les 
                utilisateurs avec des adresses IP statiques</title>
	      
	      <para>En plus de ce que vous avez d&eacute;j&agrave; introduit dans le fichier
                <filename>/etc/ppp/ppp.conf</filename> d'exemple ci-dessus
                vous devez ajouter une section pour chaque utilisateur auquel
                est assign&eacute;e une adresse IP fixe. En continuant avec notre 
                exemple pour <username>fred</username>, 
                <username>sam</username> et
                <username>mary</username>:</para>
	      
	      <programlisting>
fred:
  set ifaddr 203.14.100.1 203.14.101.1 255.255.255.255

sam:
  set ifaddr 203.14.100.1 203.14.102.1 255.255.255.255

mary:
  set ifaddr 203.14.100.1 203.14.103.1 255.255.255.255</programlisting>
	      
	      <para>Vous devez aussi, si besoin est,
                donnez les informations de routage dans
                 <filename>/etc/ppp/ppp.linkup</filename> pour
                chaque utilisateur ayant une adresse IP fixe. 
                La premi&egrave;re ligne ci-dessous ajoute 
                une route vers le r&eacute;seau de classe C <hostid
		  role="ipaddr">203.14.101.0</hostid> via la liaison
                ppp du client.</para>
	      
	      <programlisting>
fred:
  add 203.14.101.0 netmask 255.255.255.0 HISADDR

sam:
  add 203.14.102.0 netmask 255.255.255.0 HISADDR

mary:
  add 203.14.103.0 netmask 255.255.255.0 HISADDR</programlisting>
	      
	    </sect4>
	    
	    <sect4>
	      <title>A propos de <command>mgetty</command>, AutoPPP et des 
                extensions Microsoft</title>
	      
	      
	      <sect5 id="userppp-mgetty">
		<title><command>mgetty</command> et AutoPPP</title>
		
		<para>Configurer et compiler
                   <command>mgetty</command> avec l'option
                   <literal>AUTO_PPP</literal> permet &agrave;
		   <command>mgetty</command> de d&eacute;tecter la phase LCP des
                   connexions PPP et de lancer automatiquement une proc&eacute;dure
                   adapt&eacute;e &agrave; ppp. Cependant, comme il n'y a pas alors 
                   d'ouverture de session avec invite et demande de mot de 
                   passe, il est n&eacute;cessaire d'authentifier les utilisateurs
                   en utilisant soit PAP, soit CHAP.</para>
		
		<para>Nous supposerons dans cette section que vous avez d&eacute;j&agrave;
                  r&eacute;ussi &agrave; configurer, compiler et installer une version de
		  <command>mgetty</command> avec l'option 
                  <literal>AUTO_PPP</literal> (v0.99b&ecirc;ta ou ult&eacute;rieure).</para>
		
		<para>Assurez-vous que le fichier
		  <filename>/usr/local/etc/mgetty+sendfax/login.config</filename> contienne bien la ligne suivante:</para>
		
		<programlisting>
/AutoPPP/ -     -		      /etc/ppp/ppp-pap-dialup</programlisting>
		
		<para>Cela dit &agrave; <command>mgetty</command> d'ex&eacute;cuter la 
                  proc&eacute;dure <filename>ppp-pap-dialup</filename> lorsqu'il
                  reconna&icirc;t une connexion PPP.</para>
		
		<para>Cr&eacute;ez un fichier
		  <filename>/etc/ppp/ppp-pap-dialup</filename> 
		  (ce fichier doit &ecirc;tre ex&eacute;cutable) avec pour contenu:</para>
		
		<programlisting>
#!/bin/sh
exec /usr/sbin/ppp -direct pap$IDENT</programlisting>
		
		<para>Pour chaque ligne d'appel activ&eacute;e dans le fichier
		  <filename>/etc/ttys</filename>, cr&eacute;ez une entr&eacute;e
                  correspondante dans le fichier 
                  <filename>/etc/ppp/ppp.conf</filename>. Ces entr&eacute;es
                  peuvent sans probl&egrave;me exister conjointement aux entr&eacute;es
                  que nous avons d&eacute;j&agrave; cr&eacute;&eacute;es plus haut.</para>
		
		<programlisting>
pap:
  enable pap	      
  set ifaddr 203.14.100.1 203.14.100.20-203.14.100.40
  enable proxy</programlisting>
		
		<para>Chaque utilisateur se connectant de cette mani&egrave;re devra
                  disposer d'une entr&eacute;e &ldquo;nom d'utilisateur/mot de 
                  passe&rdquo; dans le fichier
		  <filename>/etc/ppp/ppp.secret</filename>, ou bien vous pouvez
		  ajouter l'option:</para>
		
		<programlisting>
enable passwdauth</programlisting>
		
		<para>pour identifier les utilisateurs avec pap en utilisant le
		  fichier <filename>/etc/password</filename>.</para>

	    <para>Si vous voulez affecter &agrave; certains utilisateurs une adresse IP
              statique, vous pouvez donner ce num&eacute;ro comme troisi&egrave;me argument
              de <filename>/etc/ppp/ppp.secret</filename>. Le fichier
	      <filename>/etc/ppp/ppp.secret.sample</filename> vous en donne
	      des exemples.</para>
	      </sect5>
	      
	      <sect5>
		<title>Extentions Microsoft</title>

	    <para>Il est possible de configurer PPP pour qu'il fournisse &agrave; la
              demande les adresses des serveurs DNS et NetBIOS.</para>

	    <para>Pour mettre en service ces extensions avec PPP version 1.x,
              ajoutez les lignes suivantes &agrave; la section ad&eacute;quate de 
	      <filename>/etc/ppp/ppp.conf</filename>:</para>
	    
		<programlisting>
enable msext
set ns 203.14.100.1 203.14.100.2
set nbns 203.14.100.5</programlisting>

	    <para>Et pour PPP version 2 et ult&eacute;rieures:</para>

	    <programlisting>
accept dns
set dns 203.14.100.1 203.14.100.2
set nbns 203.14.100.5</programlisting>
	    
		<para>Cela donnera aux clients les adresses des serveurs 
                  DNS primaire et secondaire et du serveur de noms
                  netbios.</para>

	    <para>A partir de la version 2, si la ligne 
              <literal>set dns</literal> n'est pas mentionn&eacute;e, PPP utilise
              les valeurs donn&eacute;es par 
              <filename>/etc/resolv.conf</filename>.</para>
	      </sect5>
	    </sect4>
	  </sect3>
	  
	  <sect3 id="userppp-PAPnCHAP">
	    <title>Authentification PAP et CHAP</title>
	    
	    <para>Certains fournisseurs d'acc&egrave;s configurent leurs syst&egrave;mes de 
              sorte que la phase d'authentification de votre connexion se fasse
              par PAP ou CHAP. Si tel est le cas, il n'y a pas d'invite
	      <prompt>login:</prompt> quand vous vous connectez, le dialogue
              s'&eacute;tablit imm&eacute;diatement avec PPP.</para>
	    
	    <para>PAP est moins s&eacute;curis&eacute; que CHAP, mais la s&eacute;curit&eacute; n'est
              normalement pas un probl&egrave;me dans ce cas, parce que les mots
              de passe, bien que transmis en clair, ne sont transmis que sur
              une liaison s&eacute;rie, ce qui la rend tr&egrave;s difficile &agrave; espionner
              par un pirate.</para>
	    
	    <para>Par rapport aux exemples donn&eacute;s aux sections
              <link linkend="userppp-staticIP">PPP et les adresses IP 
              statiques</link> ou <link
		linkend="userppp-dynamicIP">PPP et les adresses IP
		dynamiques</link>, vous devez faire les modifications
                suivantes:</para>
	    
	    <programlisting>
7       set login
...
12      set authname <replaceable>MonNomUtilisateur</replaceable>
13      set authkey <replaceable>MonMotDePasse</replaceable></programlisting>
	    
	    <para>Comme toujours, ne mettez pas les num&eacute;ros de ligne, ils ne
              sont l&agrave; que pour y faire r&eacute;f&eacute;rence dans les explications qui
              suivent. Il faut indenter avec au moins un espace.</para>
	    
	      <variablelist>
		<varlistentry><term>Ligne 7:</term>
		  <listitem>
		    <para>Votre fournisseur ne vous demandera normalement pas
                       d'ouvrir de session sur le serveur si vous utilisez PAP
                       ou CHAP. Vous devez donc d&eacute;sactiver votre s&eacute;quence
                       &ldquo;set login&rdquo;.</para>
		  </listitem>
		</varlistentry>
		
		<varlistentry><term>Ligne 12:</term>
		  
		  <listitem>
		    <para>Cette ligne donne votre nom d'utilisateur PAP/CHAP. 
                    Remplacez <replaceable>MonNomUtilisateur</replaceable> par
                    la bonne valeur.</para>
		  </listitem>
		</varlistentry>
		
		<varlistentry><term>Ligne 13:</term>
		  
		  <listitem>
		    <para>Cette ligne donne votre mot de PAP/CHAP.
                    Remplacez <replaceable>MonMotDePasse</replaceable> par
                    la bonne valeur. Peut-&ecirc;tre voudrez-vous ajouter une ligne
                    suppl&eacute;mentaire:
		    
		      <programlisting>
15      accept PAP</programlisting> ou
		    
		      <programlisting>
15      accept CHAP</programlisting> pour que l'intention soit claire, mais
		     PAP et CHAP sont tous deux accept&eacute;s par d&eacute;faut.</para>
		    
		  </listitem>
		</varlistentry>
	      </variablelist>
	  </sect3>
	  
	  <sect3>
	    <title>Modifier &agrave; chaud votre configuration 
              <command>ppp</command></title>
	    
	    <para>Il est possible de dialoguer avec le programme 
              <command>ppp</command> tandis qu'il s'ex&eacute;cute en t&acirc;che de fond,
              mais vous devez avoir configur&eacute; un port de diagnostic 
              qui convienne. Pour cela, ajoutez &agrave; votre configuration la
              ligne suivante:</para>

	<programlisting>
set server /var/run/ppp-tun%d MotDePasseDeDiagnostic 0177</programlisting>

	<para>Cela dit &agrave; PPP d'&eacute;couter sur 
          la &ldquo;prise&rdquo;&nbsp;-&nbsp;socket&nbsp;-&nbsp;Unix
          indiqu&eacute;e, et de demander au client de lui donner le mot de passe
          mentionn&eacute; avant de lui autoriser l'acc&egrave;s. Le
	  <literal>%d</literal> est &agrave; remplacer par le num&eacute;ro du p&eacute;riph&eacute;rique
	  &ldquo;tunnel&rdquo; utilis&eacute;.</para>
	    
	    <para>Une fois que 
              la &ldquo;prise&rdquo;&nbsp;-&nbsp;socket&nbsp;-&nbsp;a 
              &eacute;t&eacute; cr&eacute;&eacute;e, le programme 
              <citerefentry><refentrytitle>pppctl</refentrytitle><manvolnum>8</manvolnum></citerefentry> 
              peut &ecirc;tre utilis&eacute; par des proc&eacute;dures qui veulent agir sur la
	      configuration du programme <command>ppp</command> actif.</para>
	    
	  </sect3>
	</sect2>
	
	<sect2 id="userppp-final">
	  <title>Configuration finale du syst&egrave;me</title>
	  
	  <para><command>ppp</command> est maintenant configur&eacute;, mais il y a
            encore quelques petites choses &agrave; faire avant de pouvoir l'utiliser.
            Il faut pour cela modifier le fichier
	    <filename>/etc/rc.conf</filename> (qui s'appelait auparavant
	    <filename>/etc/sysconfig</filename>).</para>
	  
	  <para>En le parcourant de haut en bas, v&eacute;rifiez que la valeur
	    <literal>hostname=</literal> est bien renseign&eacute;e, e.g.:</para>
	  
	  <programlisting>
hostname=foo.bar.com</programlisting>
	  
	  <para>Si votre fournisseur d'acc&egrave;s vous a donn&eacute; une adresse IP 
            statique et un nom de machine, le mieux est d'utiliser ce nom
            comme nom de votre machine.</para>
	  
	  <para>Cherchez la variable <literal>network_interfaces</literal>. Si
            vous voulez configurer votre syst&egrave;me pour vous connecter &agrave; la 
            demande chez votre fournisseur, v&eacute;rifiez que le p&eacute;riph&eacute;rique
	    <devicename>tun0</devicename> est bien dans la liste, sinon
            ajoutez-le.</para>
	  
	  <programlisting>
network_interfaces="lo0 tun0" ifconfig_tun0=</programlisting>

	  <note>
	    <para>La variable <literal>ifconfig_tun0</literal> doit &ecirc;tre vide.
              Il faut cr&eacute;er un fichier <filename>/etc/start_if.tun0</filename>
              avec la ligne:</para> 

	    <programlisting>
ppp -auto mysystem</programlisting>
	    
	    <para>Cette proc&eacute;dure est ex&eacute;cut&eacute;e lors de la configuration du 
              r&eacute;seau au d&eacute;marrage et lance le &ldquo;d&eacute;mon&rdquo; ppp en
              mode automatique. Si cette machine sert de passerelle sur un
              r&eacute;seau local, vous pouvez aussi ajouter l'indicateur
	      <option>-alias</option>. Reportez-vous aux pages de manuel pour
              plus de d&eacute;tails.</para>
	  </note>
	  
	  <para>Donnez <literal>NO</literal> comme valeur pour le programme
            de routage avec la ligne:</para>
	  
	  <programlisting>
router_enable=NO            (/etc/rc.conf)
router=NO                   (/etc/sysconfig)</programlisting>
	  
	  <para>Il est important que le &ldquo;d&eacute;mon&rdquo; 
            <command>routed</command> ne soit pas lanc&eacute; (il est d&eacute;marr&eacute; par 
            d&eacute;faut) parce que <command>routed</command> a tendance &agrave; effacer
            les entr&eacute;es par d&eacute;faut cr&eacute;&eacute;es dans la table de routage par
	    <command>ppp</command>.</para>
	  
	  <para>Il vaut probablement la peine de v&eacute;rifier que la ligne
	    <literal>sendmail_flags</literal> ne comporte pas l'option
            <option>-q</option>, sans quoi <command>sendmail</command> 
            jettera de temps &agrave; autre un oeil au r&eacute;seau, ce qui peut amener
            votre machine &agrave; ouvrir la connexion. Vous pouvez essayez:</para>
	  
	  <programlisting>
sendmail_flags="-bd"</programlisting>
	  
	  <para>L'inconv&eacute;nient est que vous devrez forcer
            <command>sendmail</command> &agrave; r&eacute;examiner la file d'attente 
	    du courrier &eacute;lectronique chaque fois que la liaison ppp sera
            activ&eacute;e, en tapant:</para>
	  
	  <informalexample>
	    <screen>&prompt.root; <userinput>/usr/sbin/sendmail -q</userinput></screen>
	  </informalexample>
	  
	  <para>Vous pouvez utiliser la commande <command>!bg</command>
	    de <filename>ppp.linkup</filename> pour le faire 
            automatiquement:</para>
	  
	  <programlisting>
1     provider:
2       delete ALL
3       add 0 0 HISADDR
4       !bg sendmail -bd -q30m</programlisting>
	  
	  <para>Si cela ne vous convient pas, il 
            est possible de mettre en place un
            &ldquo;dfilter&rdquo; pour bloquer le trafic SMTP. Consultez les
            fichiers d'exemple pour plus de d&eacute;tails.</para>
	  
	  <para>Vous n'avez plus qu'&agrave; red&eacute;marrer votre machine.</para>
	  
	  <para>Apres qu'elle ait red&eacute;marr&eacute;, vous pouvez taper soit:</para>
	  
	  <informalexample>
	    <screen>&prompt.root; <userinput>ppp</userinput></screen>
	  </informalexample>
	  
	  <para>puis <command>dial provider</command> pour initialiser la 
            session PPP ou, si vous voulez que ppp lance la session
            automatiquement lorsqu'il y a du trafic sortant (et que vous
            n'avez pas cr&eacute;&eacute; le fichier <filename>start_if.tun0</filename>),
            tapez:</para>
	  
	  <informalexample>
	    <screen>&prompt.root; <userinput>ppp -auto provider</userinput></screen>
	  </informalexample>
	  
	</sect2>
	
	<sect2>
	  <title>R&eacute;sum&eacute;</title>
	  
	  <para>Pour r&eacute;capituler, les &eacute;tapes suivantes sont n&eacute;cessaires lors de
            la premi&egrave;re configuration de ppp:</para>
	  
	  <para>C&ocirc;t&eacute; client:</para>
	  
	    <procedure>
	      
	      <step>
	      <para>V&eacute;rifier que le pilote de p&eacute;riph&eacute;rique 
                 <devicename>tun</devicename> soit inclus dans le noyau.</para>
	      </step>
	      
	      <step>
	      <para>V&eacute;rifier que le fichier sp&eacute;cial de p&eacute;riph&eacute;rique 
                <filename>tun<replaceable>X</replaceable></filename> existe
		  dans le r&eacute;pertoire <filename>/dev</filename>.</para>
	      </step>
	      
	      <step>
		<para>Cr&eacute;er une entr&eacute;e dans
		  <filename>/etc/ppp/ppp.conf</filename>. L'exemple
                  <filename>pmdemand</filename> doit suffire pour la plupart
                  des fournisseurs d'acc&egrave;s.</para>
	      </step>
	      
	      <step>
		<para>Dans le cas d'une adresse IP dynamique, cr&eacute;er une entr&eacute;e
		  dans <filename>/etc/ppp/ppp.linkup</filename>.</para>
	      </step>
	      
	      <step>
		<para>Modifier le fichier <filename>/etc/rc.conf</filename> (ou
		  <filename>sysconfig</filename>).</para>
	      </step>
	      
	      <step>
		<para>Cr&eacute;er une proc&eacute;dure <filename>start_if.tun0</filename>
		  dans le cas d'une connexion automatique &agrave; la demande.</para>
	      </step>
	      
	    </procedure>
	  
	  
	  <para>C&ocirc;t&eacute; serveur:</para>
	  
	    <procedure>
	      
	      <step>
	      <para>V&eacute;rifier que le pilote de p&eacute;riph&eacute;rique 
                <devicename>tun</devicename> soit inclus dans le noyau.</para>
	      </step>
	      
	      <step>
	      <para>V&eacute;rifier que le fichier sp&eacute;cial de p&eacute;riph&eacute;rique
                <filename>tun<replaceable>X</replaceable></filename> existe
                dans le r&eacute;pertoire <filename>/dev</filename>.</para>
	      </step>
	      
	      <step>
		<para>Cr&eacute;er une entr&eacute;e dans <filename>/etc/passwd</filename>
		  (avec le programme <citerefentry><refentrytitle>vipw</refentrytitle><manvolnum>8</manvolnum></citerefentry>).</para>
	      </step>
	      
	      <step>
		<para>Cr&eacute;er un profil dans le r&eacute;pertoire de cet utilisateur qui
                  ex&eacute;cute <command>ppp -direct direct-server</command> ou 
                  quelque chose d'&eacute;quivalent.</para>
	      </step>
	      
	      <step>
		<para>Cr&eacute;er une entr&eacute;e dans 
                <filename>/etc/ppp/ppp.conf</filename>. L'exemple
                <filename>direct-server</filename> devrait suffire.</para>
	      </step>
	      
	      <step>
		<para>Cr&eacute;er une entr&eacute;e dans
		  <filename>/etc/ppp/ppp.linkup</filename>.</para>
	      </step>
	      
	      <step>
		<para>Modifier le fichier <filename>/etc/rc.conf</filename> (ou
		  <filename>sysconfig</filename>).</para>
	      </step>
	      
	    </procedure>
	  
	</sect2>
	
	<sect2>
	  <title>Remerciements</title>
	  
	  <para>La derni&egrave;re mise &agrave; jour de cette section du manuel a &eacute;t&eacute; 
            effectu&eacute;e le Lundi 10 Ao&ucirc;t 1998 par &a.brian;.</para>
	  
	  <para>Merci aux personnes suivantes pour les informations, 
            commentaires et suggestions qu'elles m'ont transmis:</para>
	  
	  <para>&a.nik;</para>
	  
	</sect2>
      </sect1>
      
      <sect1 id="ppp">
	<title>Configurer PPP int&eacute;gr&eacute; au noyau</title>
	
	<para><emphasis>Contribution de Gennady B. Sorokopud
		<email>gena@NetVision.net.il</email>.</emphasis></para>
	
	<para>Avant de lancer PPP sur votre machine, v&eacute;rifiez que 
	  <command>pppd</command> est bien dans le r&eacute;pertoire
          <filename>/usr/sbin</filename> et que le r&eacute;pertoire
	  <filename>/etc/ppp</filename> existe.</para>
	
	<para><command>pppd</command> fonctionne de deux fa&ccedil;ons:</para>
	
	  <orderedlist>
	    
	    <listitem>
	      <para>comme &ldquo;client&rdquo;, i.e. si vous voulez connecter
		votre machine au monde ext&eacute;rieur via un liaison PPP s&eacute;rie ou un
                modem.</para>
	    </listitem>
	    
	    <listitem>
	      <para>comme &ldquo;serveur&rdquo;, i.e. si votre machine est
                sur le r&eacute;seau et sert &agrave; y connecter d'autres ordinateurs avec
		PPP.</para>
	    </listitem>
	    
	  </orderedlist>

	<para>Dans les deux cas, vous devrez renseigner un fichier d'options
	  (<filename>/etc/ppp/options</filename> ou
	  <filename>~/.ppprc</filename> s'il y a plus d'un utilisateur sur votre
	  machine qui utilisent PPP).</para>
	
	<para>Il vous faudra aussi un logiciel &ldquo;modem/s&eacute;rie&rdquo; 
          (de pr&eacute;f&eacute;rence <command>kermit</command>) pour appeler et &eacute;tablir la 
          connexion avec la machine distante.</para>
	
	<sect2>
	  <title>Utiliser le client PPP</title>
	  
	  <para>J'ai utilis&eacute; le fichier <filename>/etc/ppp/options</filename>
            suivant pour me connecter &agrave; la liaison PPP d'un concentrateur 
            CISCO.</para>

	    <programlisting>
crtscts         # contr&ocirc;le de flux mat&eacute;riel
modem           # liaison par modem
noipdefault     # adresse IP affect&eacute;e par le serveur PPP distant 
                # si la machine distante ne vous donne pas d'adresse IP 
                # lors de la n&eacute;gociation IPCP, ne mettez pas cette option
passive         # attendre les paquets LCP 
domain ppp.foo.com      # mettez ici votre nom de domaine

:&lt;ip_&eacute;loign&eacute;&gt;   # mettez ici l'adresse IP de la machine PPP distante
                # elle servira &agrave; router des paquets via la liaison PPP
                # si vous n'avez pas utilis&eacute; l'option noipdefault
                # changez cette ligne en &lt;ip_local&gt;:&lt;ip_&eacute;loign&eacute;&gt;
defaultroute    # mettez cette ligne si vous voulez que le serveur PPP soit
                # votre routeur par d&eacute;faut</programlisting>
	  
	  <para>Pour vous connecter:</para>
	  
	    <procedure>
	      
	      <step>
		<para>Appelez la machine &eacute;loign&eacute;e avec kermit (ou un autre
		  programme pour modem) et donnez votre nom et votre mot
                  de passe (ou ce qu'il faut pour activer PPP sur la machine
		  distante).</para>
	      </step>
	      
	      <step>
		<para>Quittez kermit (sans raccrocher la ligne).</para>
	      </step>
	      
	      <step>
		<para>Entrez:</para>

		  <informalexample>
		<screen>&prompt.root; <userinput>/usr/src/usr.sbin/pppd.new/pppd <replaceable>/dev/tty01</replaceable> <replaceable>19200</replaceable></userinput></screen>
		  </informalexample>

	      <para>Utilisez la vitesse et le nom de p&eacute;riph&eacute;rique 
                 ad&eacute;quats.</para>
	      </step>
	      
	    </procedure>
	  
	  <para>Votre ordinateur est maintenant connect&eacute; par PPP. Si la 
            connexion &eacute;choue pour une raison ou une autre, vous pouvez ajouter
	    l'option <option>debug</option> au fichier 
	    <filename>/etc/ppp/options</filename> et consulter les messages &agrave;
	    la console pour trouver la cause du probl&egrave;me.</para>
	  
	  <para>La proc&eacute;dure <filename>/etc/ppp/pppup</filename> ci-dessous
            fera tout cela automatiquement:</para>

	    <programlisting>
#!/bin/sh
ps ax |grep pppd |grep -v grep
pid=`ps ax |grep pppd |grep -v grep|awk '{print $1;}'`
if [ "X${pid}" != "X" ] ; then
        echo 'arr&ecirc;t de pppd, PID=' ${pid}
        kill ${pid}
fi
ps ax |grep kermit |grep -v grep
pid=`ps ax |grep kermit |grep -v grep|awk '{print $1;}'`
if [ "X${pid}" != "X" ] ; then
        echo 'arr&ecirc;t de kermit, PID=' ${pid}
        kill -9 ${pid}
fi

ifconfig ppp0 down
ifconfig ppp0 delete

kermit -y /etc/ppp/kermit.dial
pppd /dev/tty01 19200</programlisting>
	  
	  <para><filename>/etc/ppp/kermit.dial</filename> est la proc&eacute;dure
            kermit qui appelle et fournit les informations d'authentification
            &agrave; la machine distante. (Il y a une exemple de proc&eacute;dure de ce type
            &agrave; la fin de ce document.)</para>
	  
	  <para>Utilisez la proc&eacute;dure <filename>/etc/ppp/pppdown</filename> 
            ci-dessous pour terminer la session PPP et vous d&eacute;connecter:</para>

	    <programlisting>
#!/bin/sh
pid=`ps ax |grep pppd |grep -v grep|awk '{print $1;}'`
if [ X${pid} != "X" ] ; then
        echo 'arr&ecirc;t de pppd, PID=' ${pid}
        kill -TERM ${pid}
fi

ps ax |grep kermit |grep -v grep
pid=`ps ax |grep kermit |grep -v grep|awk '{print $1;}'`
if [ "X${pid}" != "X" ] ; then
        echo 'arr&ecirc;t de kermit, PID=' ${pid}
        kill -9 ${pid}
fi

/sbin/ifconfig ppp0 down
/sbin/ifconfig ppp0 delete
kermit -y /etc/ppp/kermit.hup
/etc/ppp/ppptest</programlisting>
	  
	  <para>Pour voir si PPP tourne toujours
	    (<filename>/usr/etc/ppp/ppptest</filename>):</para>

	    <programlisting>
#!/bin/sh
pid=`ps ax| grep pppd |grep -v grep|awk '{print $1;}'`
if [ X${pid} != "X" ] ; then
        echo 'pppd actif : PID=' ${pid-NONE}
else
        echo 'Pas de pppd actif.'
fi
set -x
netstat -n -I ppp0
ifconfig ppp0</programlisting>
	  
	  <para>Pour raccrocher la ligne modem
	    (<filename>/etc/ppp/kermit.hup</filename>):</para>

	    <programlisting>
set line /dev/tty01	; mettez ici le p&eacute;riph&eacute;rique pour votre modem
set speed 19200
set file type binary
set file names literal
set win 8
set rec pack 1024
set send pack 1024
set block 3
set term bytesize 8
set command bytesize 8
set flow none

pau 1
out +++
inp 5 OK
out ATH0\13
echo \13
exit</programlisting>
	  
	  <para>Voici une autre m&eacute;thode qui utilise <command>chat</command>
             au lieu de <command>kermit</command>:</para>
	  
	  <para><emphasis>Contribution de Robert Huff
		<email>rhuff@cybercom.net</email>.</emphasis></para>
	  
	  <para>Les deux fichiers suivants suffisent &agrave; &eacute;tablir une liaison
	    ppp.</para>
	  
	  <para><filename>/etc/ppp/options</filename>:</para>

	    <programlisting>
/dev/cuaa1 115200
	    </programlisting>
          <para></para>
	    <programlisting>
crtscts         # contr&ocirc;le de flux mat&eacute;riel
modem           # liaison par modem
connect "/usr/bin/chat -f /etc/ppp/login.chat.script"
noipdefault     # adresse IP affect&eacute;e par le serveur PPP distant 
                # si la machine distante ne vous donne pas d'adresse IP 
                # lors de la n&eacute;gociation IPCP, ne mettez pas cette option
passive         # attendre les paquets LCP 
domain ppp.foo.com      # mettez ici votre nom de domaine

:&lt;ip_&eacute;loign&eacute;&gt;   # mettez ici l'adresse IP de la machine PPP distante
                # elle servira &agrave; router des paquets via la liaison PPP
                # si vous n'avez pas utilis&eacute; l'option noipdefault
                # changez cette ligne en &lt;ip_local&gt;:&lt;ip_&eacute;loign&eacute;&gt;
defaultroute    # mettez cette ligne si vous voulez que le serveur PPP soit
                # votre routeur par d&eacute;faut</programlisting>
	  
	  <para><filename>/etc/ppp/login.chat.script</filename>:</para>
	  
	  <para>(Ceci doit &ecirc;tre tap&eacute; <emphasis>sur une seule 
               ligne</emphasis>.)</para>
	  
	  <programlisting>
ABORT BUSY ABORT 'NO CARRIER' "" AT OK ATDT&lt;num&eacute;ro.de.t&eacute;l&eacute;phone&gt;
  CONNECT "" TIMEOUT 10 ogin:-\\r-ogin: &lt;nom-d-utilisateur&gt;
  TIMEOUT 5 sword: &lt;mot-de-passe&gt;</programlisting>
	  
	  <para>Une fois que ces fichiers sont install&eacute;s et contiennent ce qu'il
            faut, vous n'avez plus qu'&agrave; taper:</para>
	  
	  <informalexample>
	    <screen>&prompt.root; <userinput>pppd</userinput></screen>
	  </informalexample>
	  
	  <para>Cet exemple est avant tout bas&eacute; sur des informations fournies
	      par: Trev Roydhouse
	      &lt;Trev.Roydhouse@f401.n711.z3.fidonet.org&gt; et utilis&eacute;es
	      avec son autorisation.</para>
	  
	</sect2>
	
	<sect2>
	  <title>Utiliser le serveur PPP</title>
	  
	  <para><filename>/etc/ppp/options</filename>:</para>

	    <programlisting>
crtscts                         # contr&ocirc;le de flux mat&eacute;riel
netmask 255.255.255.0           # masque de sous-r&eacute;seau ( facultatif )
192.114.208.20:192.114.208.165  # adresses IP des machines locales et distantes
                                # l'adresse locale ne doit pas &ecirc;tre la m&ecirc;me que
                                # celle que vous avez assign&eacute;e &agrave; l'interface
                                # Ethernet ( ou autre ) de la machine.
                                # l'adresse IP de la machine distante est
                                # l'adresse qui lui sera affect&eacute;e
domain ppp.foo.com              # votre nom de domaine
passive                         # attendre LCP
modem                           # liaison modem</programlisting>
	  
	  <para>La proc&eacute;dure <filename>/etc/ppp/pppserv</filename> ci-dessous
	    lancera le serveur ppp sur votre machine:</para>

	    <programlisting>
#!/bin/sh 
ps ax |grep pppd |grep -v grep
pid=`ps ax |grep pppd |grep -v grep|awk '{print $1;}'`
if [ "X${pid}" != "X" ] ; then
        echo 'arr&ecirc;t de pppd, PID=' ${pid}
        kill ${pid}
fi
ps ax |grep kermit |grep -v grep
pid=`ps ax |grep kermit |grep -v grep|awk '{print $1;}'`
if [ "X${pid}" != "X" ] ; then
        echo 'arr&ecirc;t de kermit, PID=' ${pid}
        kill -9 ${pid}
fi

# r&eacute;initialiser l'interface ppp
ifconfig ppp0 down
ifconfig ppp0 delete

# activer le mode r&eacute;ponse automatique
kermit -y /etc/ppp/kermit.ans

# lancer ppp
pppd /dev/tty01 19200</programlisting>
	  
	  <para>Utilisez cette proc&eacute;dure
            <filename>/etc/ppp/pppservdown</filename> pour arr&ecirc;ter 
	    le serveur:</para>

	    <programlisting>
#!/bin/sh 
ps ax |grep pppd |grep -v grep
pid=`ps ax |grep pppd |grep -v grep|awk '{print $1;}'`
if [ "X${pid}" != "X" ] ; then
        echo 'arr&ecirc;t de pppd, PID=' ${pid}
        kill ${pid}
fi
ps ax |grep kermit |grep -v grep
pid=`ps ax |grep kermit |grep -v grep|awk '{print $1;}'`
if [ "X${pid}" != "X" ] ; then
        echo 'arr&ecirc;t de kermit, PID=' ${pid}
        kill -9 ${pid}
fi
ifconfig ppp0 down
ifconfig ppp0 delete

kermit -y /etc/ppp/kermit.noans</programlisting>
	  
	  <para>La proc&eacute;dure kermit ci-dessous active ou d&eacute;sactive 
            le mode r&eacute;ponse automatique de votre modem 
            (<filename>/etc/ppp/kermit.ans</filename>):</para>

	    <programlisting>
set line /dev/tty01
set speed 19200
set file type binary
set file names literal
set win 8
set rec pack 1024
set send pack 1024
set block 3
set term bytesize 8
set command bytesize 8
set flow none

pau 1
out +++
inp 5 OK
out ATH0\13
inp 5 OK
echo \13
out ATS0=1\13   ; remplacez par ATS0=0\13 pour d&eacute;sactiver 
                ; le mode r&eacute;ponse automatique
inp 5 OK
echo \13
exit</programlisting>
	  
	  <para>La proc&eacute;dure
            <filename>/etc/ppp/kermit.dial</filename> &eacute;tablit la connexion et
            ouvre la session sur la machine distante. Vous devrez l'adapter
            &agrave; vos besoins propres. Mettez-y votre nom d'utilisateur et votre 
            mot de passe, et modifiez aussi les cha&icirc;nes attendues en r&eacute;ponse
            selon ce que vous envoient votre modem et la machine 
            distante.</para>

	    <programlisting>
;
; mettez ici la liaison s&eacute;rie &agrave; laquelle est raccord&eacute; le modem:
;
set line /dev/tty01
;
; mettez ici la vitesse du modem:
;
set speed 19200
set file type binary            ; transfert 8 bits
set file names literal
set win 8
set rec pack 1024
set send pack 1024
set block 3
set term bytesize 8
set command bytesize 8
set flow none
set modem hayes
set dial hangup off
set carrier auto                ; puis SET CARRIER si n&eacute;cessaire,
set dial display on             ; puis SET DIAL si n&eacute;cessaire,
set input echo on
set input timeout proceed
set input case ignore
def \%x 0                       ; compteur d'ouverture de session
goto slhup

:slcmd                          ; met le modem en mode commande
echo Modem en mode commande.
clear                           ; vide le tampon d'entr&eacute;e
pause 1
output +++                      ; s&eacute;quence d'&eacute;chappement Hayes
input 1 OK\13\10                ; attendre un OK
if success goto slhup
output \13
pause 1
output at\13
input 1 OK\13\10
if fail goto slcmd              ; si le modem ne r&eacute;pond pas OK, r&eacute;essayer

:slhup                          ; raccrocher
clear                           ; vider le tampon d'entr&eacute;e
pause 1
echo On raccroche.
output ath0\13                  ; commande HAYES pour raccrocher
input 2 OK\13\10
if fail goto slcmd              ; si pas de r&eacute;ponse OK, passez en mode commande

:sldial                         ; composer le num&eacute;ro
pause 1
echo On appelle.
output atdt9,550311\13\10       ; mettre ici le num&eacute;ro de t&eacute;l&eacute;phone
assign \%x 0                    ; mettre le compteur de secondes &agrave; 0 

:look
clear                           ; vider le tampon d'entr&eacute;e
increment \%x                   ; compter les secondes
input 1 {CONNECT }
if success goto sllogin
reinput 1 {NO CARRIER\13\10}
if success goto sldial
reinput 1 {NO DIALTONE\13\10}
if success goto slnodial
reinput 1 {\255}
if success goto slhup
reinput 1 {\127}
if success goto slhup
if < \%x 60 goto look
else goto slhup

:sllogin                        ; ouverture de session
assign \%x 0                    ; mettre le compteur de secondes &agrave; 0
pause 1
echo Attente de l'invite de session.

:slloop
increment \%x                   ; compter les secondes
clear                           ; vider le tampon d'entr&eacute;e
output \13
;
; Mettez ici l'invite que vous attendez:
;
input 1 {Username: }
if success goto sluid
reinput 1 {\255}
if success goto slhup
reinput 1 {\127}
if success goto slhup
if < \%x 10 goto slloop         ; essayer 10 fois d'avoir l'invite
else goto slhup                 ; raccrocher et recommencer apr&egrave;s 10 &eacute;checs

:sluid
;
; Mettez ici votre nom d'utilisateur:
;
output nom-d-utilisateur-ppp\13
input 1 {Password: }
;
; Mettez ici votre mot de passe:
;
output mot-de-passe-ppp\13
input 1 {Entering SLIP mode.}
echo
quit

:slnodial
echo \7Pas de tonalit&eacute;.  V&eacute;rifiez votre ligne t&eacute;l&eacute;phonique!\7
exit 1

; local variables:
; mode: csh
; comment-start: "; "
; comment-start-skip: "; "
; end:</programlisting>
	  
	</sect2>
      </sect1>
      
      <sect1 id="slipc">
	<title>Configurer un client SLIP</title>
	
	<para><emphasis>Contribution de &a.asami;<!-- <br> -->8 Ao&ucirc;t
	    1995.</emphasis></para>
	
	<para>Cette section d&eacute;crit une mani&egrave;re de configurer une machine
          FreeBSD pour utiliser SLIP sur un r&eacute;seau o&ugrave; le nom de machine
          est statique. Si le nom de machine est affect&eacute; dynamiquement (i.e.,
          votre adresse change &agrave; chaque connexion), vous devrez probablement
          employer une m&eacute;thode plus sophistiqu&eacute;e.</para>
	
	<para>D&eacute;terminez d'abord sur quel port s&eacute;rie votre modem est branch&eacute;. 
          J'utilise un lien symbolique de <filename>/dev/modem</filename> vers 
	    <filename>/dev/cuaa1</filename>, et n'utilise que ce lien dans mes
            fichiers de configuration. Cela &eacute;vite qu'il devienne laborieux 
            de modifier un certain nombre de fichiers de 
	    <filename>/etc</filename> et les
	  <filename>.kermrc</filename> pour l'ensemble du syst&egrave;me!</para>

	<note>
	  <para><filename>/dev/cuaa0</filename> correspond &agrave;
            <devicename>COM1</devicename> et
	    <filename>cuaa1</filename> &agrave; <devicename>COM2</devicename>,
            etc.</para>
	</note>
	
	<para>V&eacute;rifiez que la ligne:

	  <programlisting>
pseudo-device   sl      1</programlisting> est bien pr&eacute;sente dans votre fichier
          de configuration du noyau. Elle existe dans le noyau
	  <filename>GENERIC</filename>, ce n'est donc un probl&egrave;me que si vous
	  l'avez supprim&eacute;e.</para>
	
	<sect2>
          <title>Ce que vous n'aurez &agrave; faire qu'une seule fois</title>
	  
	    <procedure>
	      
	      <step>
		<para>Ajoutez votre machine, la passerelle et les serveurs de
                  noms de domaines &agrave; votre fichier
                  <filename>/etc/hosts</filename>. Voici &agrave; quoi ressemble le
		  mien:</para>

		  <programlisting>
127.0.0.1               localhost loghost
136.152.64.181          silvia.HIP.Berkeley.EDU silvia.HIP silvia
136.152.64.1            inr-3.Berkeley.EDU inr-3 slip-gateway
128.32.136.9            ns1.Berkeley.edu ns1
128.32.136.12           ns2.Berkeley.edu ns2</programlisting>

	      <para>Au passage, silvia est le nom de la voiture que j'avais
		  quand je suis retourn&eacute; au Japon (on l'appelle 2?0SX ici aux
		  Etats-Unis).</para>
	      </step>
	      
	      <step>
		<para>V&eacute;rifiez que <option>hosts</option> vient avant
                  <option>bind</option> dans votre fichier
		  <filename>/etc/host.conf</filename>. Sinon, il peut se
		  passer des choses bizarres.</para>
	      </step>
	      
	      <step>
		<para>Modifiez le fichier <filename>/etc/rc.conf</filename>. 
		  Si votre version de FreeBSD est ant&eacute;rieure &agrave; la version 2.2.2,
                  c'est le fichier <filename>/etc/sysconfig</filename> qu'il
		  faut modifier &agrave; la place.</para>
		  <orderedlist>
		    
		    <listitem>
		      <para>D&eacute;finissez votre nom de machine &agrave; la ligne:</para>
			<programlisting>
hostname=myname.my.domain</programlisting>

		  <para>Vous devez donner votre nom Internet de 
                     machine en entier.</para>
		    </listitem>
		    
		    <listitem>
		      <para>Ajouter sl0 &agrave; la liste des interfaces r&eacute;seau
			en modifiant la ligne:</para>
		      
			<programlisting>
network_interfaces="lo0"</programlisting>

		  <para>en:</para>
		    
			<programlisting>
network_interfaces="lo0 sl0"</programlisting>
		    </listitem>
		    
		    <listitem>
		      <para>D&eacute;finissez les param&egrave;tres de configuration de sl0 en
                        ajoutant une ligne:</para>

			<programlisting>
ifconfig_sl0="inet ${hostname} slip-gateway netmask 0xffffff00 up"</programlisting>
		    </listitem>
		    
		    <listitem>
		      <para>Pr&eacute;cisez la passerelle par d&eacute;faut en modifiant
                        la ligne:</para>
			<programlisting>
defaultrouter=NO</programlisting>
		    <para>en:</para>
			<programlisting>
defaultrouter=slip-gateway</programlisting>
		    </listitem>
		    
		  </orderedlist>
		  
	      </step>
	      
	      <step>
		<para>Cr&eacute;ez un fichier <filename>/etc/resolv.conf</filename> qui
		  contienne:</para>

		  <programlisting>
domain HIP.Berkeley.EDU
nameserver 128.32.136.9
nameserver 128.32.136.12</programlisting>

	      <para>Comme vous le constatez, c'est la d&eacute;finition des serveurs de
                noms de domaines. Bien entendu, les noms et les adresses de
                ceux-ci sont fonction de votre environnement particulier.</para>
	      </step>
	      
	      <step>
		<para>Donnez des mots de passe &agrave; root et toor (et &agrave; tous les
                  autres comptes qui n'auraient pas de mot de passe). Employez 
		  <command>passwd</command>, ne modifiez pas les fichiers
		  <filename>/etc/passwd</filename> ou
		  <filename>/etc/master.passwd</filename>!</para>
	      </step>
	      
	      <step>
		<para>Red&eacute;marrez la machine et v&eacute;rifiez qu'elle a bien le nom 
		  voulu.</para>
	      </step>
	      
	    </procedure>
	  
	</sect2>
	
	<sect2>
	  <title>Etablir une connexion SLIP</title>
	  
	    <procedure>
	      
	      <step>
		<para>T&eacute;l&eacute;phonez, tapez <command>slip</command> &agrave; l'invite, 
                  entrez votre nom d'utilisateur et votre mot de passe. Ce
                  que vous avez &agrave; faire d&eacute;pend de votre environnement. J'utilise
                  une proc&eacute;dure kermit comme celle-ci:</para>

		  <programlisting>
# configuration kermit
set modem hayes
set line /dev/modem
set speed 115200
set parity none
set flow rts/cts
set terminal bytesize 8
set file type binary
# La macro-instruction qui suit t&eacute;l&eacute;phone et &eacute;tablit la connexion
define slip dial 643-9600, input 10 =>, if failure stop, -
output slip\x0d, input 10 Username:, if failure stop, -
output silvia\x0d, input 10 Password:, if failure stop, -
output ***\x0d, echo \x0aCONNECTED\x0a</programlisting>
		  <para>(vous devez bien sur remplacer le nom et le mot de
                  passe par les v&ocirc;tres). Vous pouvez alors entrer simplement
		  <command>slip</command> &agrave; l'invite de kermit
		  pour vous connecter.</para>

		<note>
		  <para>Laisser votre mot de passe en clair dans un 
		    quelconque fichier est en g&eacute;n&eacute;ral une 
                    <emphasis>MAUVAISE</emphasis> id&eacute;e. Faites-le &agrave; vos risques
                    et p&eacute;rils. Je suis simplement trop paresseux.</para>
		</note>
	      </step>
	      
	      <step>
		<para>Laissez maintenant kermit tel que (vous pouvez le mettre 
                en arri&egrave;re-plan avec <command>z</command>) et, sous le compte
		super-utilisateur, tapez:</para>

		  <informalexample>
		    <screen>&prompt.root; <userinput>slattach -h -c -s 115200 /dev/modem</userinput></screen>
		  </informalexample>

	      <para>Si vous arriver &agrave; envoyer un <command>ping</command> &agrave; des
                  machines situ&eacute;es de l'autre c&ocirc;t&eacute; du routeur, vous &ecirc;tes 
                  connect&eacute;! Si cela ne marche pas, vous pouvez essayer l'option
		  <option>-a</option> au lieu de l'option <option>-c</option> de
		  slattach.</para>
	      </step>
	      
	    </procedure>
	  
	</sect2>
	
	<sect2>
	  <title>Comment couper la connexion</title>
	  
	  <para>Tapez:

	    <informalexample>
	      <screen>&prompt.root; <userinput>kill -INT `cat /var/run/slattach.modem.pid`</userinput></screen>
	    </informalexample>(en &eacute;tant super-utilisateur 
            <username>root</username>)
	    pour tuer slattach. Revenez maintenant sous kermit 
            (<command>fg</command> si vous l'avez mis en t&acirc;che de fond)
     	    et quittez-le (<command>q</command>).</para>
	  
	  <para>Les pages de manuel de slattach disent que vous devez employer
            <command>ifconfig sl0 down</command> pour indiquer que l'interface
            n'est plus active, mais cela ne change apparement rien pour moi.
	    (Les diagnostics de <command>ifconfig sl0</command> sont
	    identiques.)</para>
	  
	  <para>Il arrive parfois que votre modem refuse de raccrocher (le mien
	    le fait souvent). Dans ce cas, relancez kermit et quittez-le de 
            nouveau. Cela marche en g&eacute;n&eacute;ral au deuxi&egrave;me essai.</para>
	  
	</sect2>
	
	<sect2>
	  <title>En cas de probl&egrave;mes</title>
	  
	  <para>Si cela ne marche pas, n'h&eacute;sitez pas &agrave; me contacter. Voici
	    les probl&egrave;mes que certains ont rencontr&eacute;s jusqu'ici:</para>
	  
	    <itemizedlist>
	      
	      <listitem>
		<para>Ne pas utiliser l'option <option>-c</option> ou 
                  <option>-a</option> de slattach (Je n'ai aucune id&eacute;e
                  de pourquoi cela pose probl&egrave;me, mais le fait de mettre
                  cet indicateur a au moins fourni la solution dans un 
                  cas).</para>
	      </listitem>
	      
	      <listitem>
		<para>Mettre <option>s10</option> au lieu <option>sl0</option> 
                  (avec certaines polices de caract&egrave;res, il est parfois 
                  difficile de faire la diff&eacute;rence).</para>
	      </listitem>
	      
	      <listitem>
		<para>Essayez <command>ifconfig sl0</command> pour contr&ocirc;ler
		la configuration de votre interface. J'obtiens:</para>
	      
		  <informalexample>
		    <screen>&prompt.root; <userinput>ifconfig sl0</userinput>
sl0: flags=10&lt;POINTOPOINT&gt;
        inet 136.152.64.181 --&gt; 136.152.64.1 netmask ffffff00</screen>
		  </informalexample>
	      </listitem>
	      
	      <listitem>
		<para>De m&ecirc;me, <command>netstat -r</command> vous affichera
		  la table de routage, au cas o&ugrave; <command>ping</command>
                  vous renverrait des
                  messages &ldquo;no route to host&rdquo;.
		  Voici la mienne:</para>

		  <informalexample>
		    <screen>&prompt.root; <userinput>netstat -r</userinput>
Routing tables
Destination      Gateway            Flags     Refs     Use  IfaceMTU    Rtt    Netmasks:

(root node)
(root node)

Route Tree for Protocol Family inet:
(root node) =&gt;
default          inr-3.Berkeley.EDU UG          8   224515  sl0 -      -
localhost.Berkel localhost.Berkeley UH          5    42127  lo0 -       0.438
inr-3.Berkeley.E silvia.HIP.Berkele UH          1        0  sl0 -      -
silvia.HIP.Berke localhost.Berkeley UGH        34 47641234  lo0 -       0.438
(root node)</screen>
		  </informalexample>
	      <para>(cela apr&egrave;s transfert d'un certain nombre de fichiers, vous
		  devriez avoir des valeurs moins importantes).</para>
	      </listitem>
	      
	    </itemizedlist>
	  
	</sect2>
      </sect1>
      
      <sect1 id="slips">
	<title>Configurer un serveur SLIP</title>
	
	<para><emphasis>Contribution de &a.ghelmer;.<!-- <br> --> v1.0, 15 Mai
	    1995.</emphasis></para>
	
	<para>Ce document vous donne des indications pour mettre en oeuvre un
          serveur SLIP sur un syst&egrave;me FreeBSD, ce qui signifie typiquement 
          configurer votre syst&egrave;me pour ouvrir une connexion &agrave; l'ouverture
          d'une session depuis une machine distante. L'auteur l'a r&eacute;dig&eacute; en
          se basant sur sa propre exp&eacute;rience; n&eacute;anmoins, comme votre syst&egrave;me et
          vos besoins peuvent &ecirc;tre diff&eacute;rents, il ne r&eacute;pond peut-&ecirc;tre pas &agrave;
          toutes vos questions, et l'auteur ne peut pas &ecirc;tre tenu pour
          responsable des d&eacute;g&acirc;ts que vous causeriez &agrave; votre syst&egrave;me ou des
          donn&eacute;es que vous auriez perdues en essayant de suivre les indications
          donn&eacute;es ici.</para>
	
	<para>Ce guide a &eacute;t&eacute; &agrave; l'origine &eacute;crit pour le serveur SLIP de la 
          version 1.x de FreeBSD. Il a &eacute;t&eacute; adapt&eacute; pour prendre en compte les
          modifications de chemins d'acc&egrave;s et la suppression des indicateurs
          de compression de l'interface SLIP des premi&egrave;res versions 2.x de
          FreeBSD, qui sont apparemment les seuls diff&eacute;rences importantes entre
          ces versions. Si vous trouvez des erreurs, envoyez s'il
          vous pla&icirc;t &agrave; l'auteur un courrier &eacute;lectronique suffisamment d&eacute;taill&eacute;
          pour qu'il puisse les corriger.</para>
	
	<sect2 id="slips-prereqs">
	  <title>Pr&eacute;requis</title>
	  
	  <para>Ce document est tr&egrave;s technique, il vous faut donc quelques
            connaissances de base. On suppose que vous connaissez le protocole
            r&eacute;seau TCP/IP, et, en particulier, l'adressage des r&eacute;seaux et
            des noeuds, les masques de r&eacute;seau, les sous-r&eacute;seaux, le routage et
            les protocoles de routage tels que RIP. Ce sont des choses que vous
            devez conna&icirc;tre pour configurer les services SLIP sur un serveur
            de connexions, et si ce n'est pas le cas, lisez s'il vous pla&icirc;t
            <emphasis>TCP/IP Network Administration</emphasis> par Craig Hunt
            chez O'Reilly &amp; Associates, Inc. (ISBN 
            0-937175-82-X)<footnote><para>N.d.T.: traduit en fran&ccedil;ais sous le
            titre &ldquo;TCP/IP, Administration de r&eacute;seau TCP/IP&rdquo;, chez 
            le m&ecirc;me &eacute;diteur</para></footnote>, ou le livre de Douglas Comer 
            sur le protocole TCP/IP.</para>
	  
	  <para>On suppose aussi que vous avez d&eacute;j&agrave; install&eacute; vos modems et
            configur&eacute; les fichiers syst&egrave;me appropri&eacute;s pour permettre l'ouverture
            de session via vos modems. Si vous ne l'avez pas encore fait,
            reportez-vous au guide de configuration des connexions entrantes;
            si vous disposez d'un navigateur World Wide Web, parcourez la liste
            des guides sur <ulink
	      url="http://www.freebsd.org/">http://www.freebsd.org/</ulink>;
	    sinon, regardez l&agrave; o&ugrave; vous avez trouv&eacute; le pr&eacute;sent document et 
            cherchez un document appel&eacute; <filename>dialup.txt</filename> o&ugrave;
            quelque chose du m&ecirc;me genre. Vous pouvez aussi consulter les pages
            de manuel de
	    <citerefentry><refentrytitle>sio</refentrytitle><manvolnum>4</manvolnum></citerefentry> pour plus d'informations sur le pilote de port s&eacute;rie
	    et de <citerefentry><refentrytitle>ttys</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
	    <citerefentry><refentrytitle>gettytab</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
	    <citerefentry><refentrytitle>getty</refentrytitle><manvolnum>8</manvolnum></citerefentry> et <citerefentry><refentrytitle>init</refentrytitle><manvolnum>8</manvolnum></citerefentry> en
            ce qui concerne la configuration du syst&egrave;me pour qu'il autorise 
            des connexions de l'ext&eacute;rieur par modem et peut-&ecirc;tre aussi celles de
	    <citerefentry><refentrytitle>stty</refentrytitle><manvolnum>1</manvolnum></citerefentry> pour avoir des renseignements sur le param&egrave;trage des ports
            s&eacute;rie (comme <literal>clocal</literal> pour les interfaces s&eacute;rie
	    directement connect&eacute;es).</para>
	  
	</sect2>
	
	<sect2>
	  <title>Br&egrave;ve vue d'ensemble</title>
	  
	  <para>Une configuration typique d'utilisation de FreeBSD comme
            serveur SLIP fonctionne de la fa&ccedil;on suivante: un utilisateur SLIP
            appelle votre serveur SLIP FreeBSD et ouvre une session sous un
            IDentifiant utilisateur SLIP particulier qui lance 
	    <filename>/usr/sbin/sliplogin</filename> &agrave; la place de 
            l'interpr&eacute;teur de commandes. Le programme
            <command>sliplogin</command> consulte le fichier
	    <filename>/etc/sliphome/slip.hosts</filename> pour trouver une ligne
            correspondant &agrave; cet utilisateur, et s'il la trouve, connecte la 
            ligne s&eacute;rie &agrave; une interface SLIP disponible et lance ensuite la
	    proc&eacute;dure <filename>/etc/sliphome/slip.login</filename> pour
            configurer cette interface SLIP.</para>
	  
	  <sect3>
	    <title>Un exemple d'ouverture de session sur un serveur SLIP</title>
	    
	    <para>Par exemple, si <username>Shelmerg</username> est un 
              IDentifiant utilisateur SLIP, l'entr&eacute;e pour 
              <username>Shelmerg</username> dans
	      <filename>/etc/master.passwd</filename> ressemblera &agrave; ce qui
	      suit (sinon que tout sera sur une seule ligne):</para>
	    
	    <programlisting>
Shelmerg:password:1964:89::0:0:Guy Helmer - SLIP:/usr/users/Shelmerg:/usr/sbin/sliplogin</programlisting>
	    
	    <para>Quand <username>Shelmerg</username> ouvre une session,
	      <command>sliplogin</command> cherche dans
	      <filename>/etc/sliphome/slip.hosts</filename> la ligne qui
	      contient cet IDentifiant utilisateur; il peut, par exemple, y 
              avoir dans <filename>/etc/sliphome/slip.hosts</filename> la 
              ligne:</para>
	    
	    <programlisting>
Shelmerg        dc-slip sl-helmer       0xfffffc00		  autocomp</programlisting>
	    
	    <para><command>sliplogin</command> la trouvera alors, affectera la
	      ligne s&eacute;rie &agrave; la prochaine interface SLIP disponible et ex&eacute;cutera
	      <filename>/etc/sliphome/slip.login</filename> avec les arguments
              suivants:</para>
	    
	    <programlisting>
/etc/sliphome/slip.login 0 19200 Shelmerg dc-slip sl-helmer 0xfffffc00 autocomp</programlisting>
	    
	    <para>Si tout se passe bien,
	      <filename>/etc/sliphome/slip.login</filename> ex&eacute;cutera un
	      <command>ifconfig</command> sur l'interface SLIP que s'est
	      attribu&eacute;e <command>sliplogin</command> 
	      (l'interface slip 0, dans l'exemple ci-dessus, qui est le premier
	      param&egrave;tre pass&eacute; &agrave; <filename>slip.login</filename>)
	      pour d&eacute;finir l'adresse IP locale (<hostid>dc-slip</hostid>), 
              l'adresse IP de la machine &eacute;loign&eacute;e (<hostid>sl-helmer</hostid>),
              le masque de sous-r&eacute;seau de l'interface SLIP
	      (<hostid role="netmask">0xfffffc00</hostid>) et tout autre
	      indicateur suppl&eacute;mentaire (<literal>autocomp</literal>). Si
              quelque chose se passe mal, <command>sliplogin</command> 
              fournit en g&eacute;n&eacute;ral des messages d'informations valables en 
              utilisant la fonctionnalit&eacute; de trace du &ldquo;d&eacute;mon&rdquo; 
              <command>syslog</command>, qui les enregistre habituellement dans
	      <filename>/var/log/messages</filename>
	      (reportez-vous au pages de manuel de <citerefentry><refentrytitle>syslogd</refentrytitle><manvolnum>8</manvolnum></citerefentry> et
	      <citerefentry><refentrytitle>syslog.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>, et regardez peut-&ecirc;tre aussi dans
	      <filename>/etc/syslog.conf</filename> pour voir o&ugrave;
	      <command>syslogd</command> enregistre les messages).</para>
	    
	    <para>OK, assez d'exemples&nbsp;-&nbsp;attelons-nous maintenant &agrave; la
	      configuration du syst&egrave;me.</para>
	    
	  </sect3>
	</sect2>
	
	<sect2>
	  <title>Configuration du noyau</title>
	  
	  <para>Les noyaux par d&eacute;faut de FreeBSD d&eacute;finissent habituellement
            deux interfaces SLIP (<devicename>sl0</devicename> et
	    <devicename>sl1</devicename>); vous pouvez v&eacute;rifier avec 
            <command>netstat -i</command> si ces interfaces sont d&eacute;finies
	    dans votre noyau.</para>
	  
	  <para>Exemple de r&eacute;sultats de la commande
             <command>netstat -i</command>:</para>
	  
	  <informalexample>
	    <screen>Name  Mtu   Network     Address            Ipkts Ierrs    Opkts Oerrs  Coll
ed0   1500  &lt;Link&gt;0.0.c0.2c.5f.4a         291311     0   174209     0   133
ed0   1500  138.247.224 ivory             291311     0   174209     0   133
lo0   65535 &lt;Link&gt;                            79     0       79     0     0
lo0   65535 loop        localhost             79     0       79     0     0
sl0*  296   &lt;Link&gt;                             0     0        0     0     0
sl1*  296   &lt;Link&gt;                             0     0        0     0     0</screen>
	    </informalexample>
	  
	  <para>Les interfaces <devicename>sl0</devicename> et
            <devicename>sl1</devicename> apparaissent dans les sorties de
            <command>netstat -i</command>, il y a donc deux interfaces
	    SLIP dans le noyau. (Les ast&eacute;risques apr&egrave;s <literal>sl0</literal>
            et <literal>sl1</literal> indiquent que les interfaces sont
	    &ldquo;inactives&rdquo;&nbsp;-&nbsp;down.)</para>
	  
	  <para>Cependant, les noyaux par d&eacute;faut de FreeBSD ne sont pas 
            configur&eacute;s pour transmettre des paquets (i.e., votre machine
            FreeBSD ne fonctionnera pas comme routeur) &agrave; cause des 
            sp&eacute;cifications impos&eacute;es par les RFC Internet (reportez-vous &agrave; la
	    RFC's 1009 [Sp&eacute;cifications des passerelles Internet], 1122
	    [Sp&eacute;cifications des machines Internet&nbsp;-&nbsp;Couches de
            communication], et peut-&ecirc;tre aussi 1127 [Une perspective sur le
            RFCs de sp&eacute;cifications des machines]), donc, si vous voulez que 
            votre serveur SLIP serve de routeur, vous devez modifier votre
	    fichier <filename>/etc/rc.conf</filename> (appel&eacute;
	    <filename>/etc/sysconfig</filename> dans les versions de
            FreeBSD ant&eacute;rieures &agrave; la 2.2.2) et affecter <option>YES</option>
            &agrave; la variable <literal>gateway</literal>. Si vous avez un syst&egrave;me
            plus ancien qui n'a m&ecirc;me pas de fichier 
            <filename>/etc/sysconfig</filename>, ajoutez alors la commande:

	    <programlisting>
sysctl -w net.inet.ip.forwarding = 1</programlisting> &agrave; votre fichier
            <filename>/etc/rc.local</filename>.</para>
	  
	  <para>Vous devrez alors red&eacute;marrer votre syst&egrave;me pour que ce nouveau
            param&egrave;trage soit pris en compte.</para>
	  
	  <para>Vous remarquerez &agrave; la fin du fichier de configuration par
            d&eacute;faut du noyau (<filename>/sys/i386/conf/GENERIC</filename>)
	    la ligne:</para>
	  
	  <programlisting>
pseudo-device sl 2</programlisting>
	  
	  <para>C'est cette ligne qui d&eacute;finit le nombre de p&eacute;riph&eacute;riques
            SLIP disponibles dans le noyau; le nombre en fin de ligne est le
            nombre maximum de connexions SLIP qui peuvent &ecirc;tre simultan&eacute;ment
	    actives.</para>
	  
	  <para>Reportez-vous s'il vous pla&icirc;t au chapitre
            <link linkend="kernelconfig">Configurer le noyau de FreeBSD</link> 
            pour des indications sur la mani&egrave;re de configurer votre 
            noyau.</para>
	  
	</sect2>
	
	<sect2>
	  <title>Configuration de sliplogin</title>
	  
	  <para>Comme on l'a dit plus haut, il y a trois fichiers dans le 
            r&eacute;pertoire <filename>/etc/sliphome</filename> qui servent &agrave; la
	    configuration de <filename>/usr/sbin/sliplogin</filename> (voyez
	    <citerefentry><refentrytitle>sliplogin</refentrytitle><manvolnum>8</manvolnum></citerefentry> pour avoir les pages de manuel de
	    <command>sliplogin</command>):
	    <filename>slip.hosts</filename>, qui d&eacute;finit les utilisateurs SLIP
	    et les adresses IP qui leur sont affect&eacute;es;
	    <filename>slip.login</filename>, qui ne fait en g&eacute;n&eacute;ral que 
            configurer l'interface SLIP; et (facultatif) 
            <filename>slip.logout</filename>,
	    qui fait le travail inverse de <filename>slip.login</filename> 
            quand la connexion s&eacute;rie est termin&eacute;e.</para>
	  
	  <sect3>
	    <title>Configuration de <filename>slip.hosts</filename></title>
	    
	    <para><filename>/etc/sliphome/slip.hosts</filename> contient des
	      lignes avec au moins quatre champs, s&eacute;par&eacute;s par des 
              blancs:</para>
	    
	      <itemizedlist>
		
		<listitem>
		  <para>L'IDentifiant d'utilisateur SLIP,</para>
		</listitem>
		
		<listitem>
		  <para>L'addresse locale (locale au serveur SLIP) de la 
                    liaison SLIP,</para>
		</listitem>
		
		<listitem>
		  <para>L'adresse de l'autre extr&eacute;mit&eacute; de la liaison 
                    SLIP,</para>
		</listitem>
		
		<listitem>
		  <para>Le masque de r&eacute;seau.</para>
		</listitem>
		
	      </itemizedlist>
	    
	    
	    <para>Les adresses locale et &eacute;loign&eacute;e peuvent &ecirc;tre des noms de
              machines (qui seront converties en adresses IP via 
	      <filename>/etc/hosts</filename> ou par le service de noms de 
              domaines, selon ce que contient
	      <filename>/etc/host.conf</filename>), et je crois que le masque
	      de r&eacute;seau peut &ecirc;tre un nom qui sera converti en consultant le
	      fichier <filename>/etc/networks</filename>. Pour notre exemple
              plus haut, <filename>/etc/sliphome/slip.hosts</filename> 
	      contiendrait:</para>
	    
	    <programlisting>
#
# login local-addr      remote-addr     mask            opt1    opt2 
#                                               (normal,compress,noicmp)
#
Shelmerg  dc-slip       sl-helmerg      0xfffffc00      autocomp</programlisting>
	    
	    <para>La ligne se termine par une ou plusieurs des options:</para>
	    
	      <itemizedlist>
		
		<listitem>
		  <para><option>normal</option>&nbsp;-&nbsp;pas de compression 
		    des en-t&ecirc;tes,</para>
		</listitem>
		
		<listitem>
		  <para><option>compress</option>&nbsp;-&nbsp;compression des
		    en-t&ecirc;tes,</para>
		</listitem>
		
		<listitem>
		  <para><option>autocomp</option>&nbsp;-&nbsp;compression des
		    en-t&ecirc;tes si la machine distante l'autorise,</para>
		</listitem>
		
		<listitem>
		  <para><option>noicmp</option>&nbsp;-&nbsp;interdire les
                    paquets ICMP (de sorte que les paquets &ldquo;ping&rdquo;
                    seront ignor&eacute;s au lieu de consommer votre bande 
                    passante).</para>
		</listitem>
		
	      </itemizedlist>
	    
	    <para>Remarquez que le programme <command>sliplogin</command> des
	      premi&egrave;res versions de FreeBSD 2 ignorait les options que
              FreeBSD 1.x reconnaissait, de sorte que les options
	      <option>normal</option>, <option>compress</option>,
              <option>autocomp</option> et <option>noicmp</option> restaient
              sans effet, jusqu'&agrave; ce que leur support soit ajout&eacute; &agrave;
	      FreeBSD 2.2 (&agrave; moins que votre proc&eacute;dure
	      <filename>slip.login</filename> n'inclue le code n&eacute;cessaire &agrave;
	      la prise en compte de ces indicateurs).</para>
	    
	    <para>Les choix des adresses pour les deux extr&eacute;mit&eacute;s des liaisons
              SLIP d&eacute;pend du fait que vous leur d&eacute;diiez un sous-r&eacute;seau ou que
	      vous comptiez utiliser &ldquo;proxy ARP&rdquo; sur votre serveur
              SLIP (ce n'est pas du &ldquo;vrai&rdquo; proxy ARP, mais c'est
	      la terminologie que nous utiliserons dans ce document pour le
              d&eacute;signer). Si vous n'&ecirc;tes pas s&ucirc;r de la m&eacute;thode &agrave; choisir ou de
              la facon d'assigner les adresses IP, r&eacute;f&eacute;rez-vous s'il vous pla&icirc;t
              aux ouvrages mentionn&eacute;s &agrave; la section <link
		linkend="slips-prereqs">Pr&eacute;requis</link> et/ou consultez
	      l'administrateur de votre r&eacute;seau IP.</para>
	    
	    <para>Si vous comptez d&eacute;dier un sous-r&eacute;seau IP &agrave; vos clients SLIP,
              vous devrez d&eacute;finir l'adresse de sous-r&eacute;seau &agrave; partir de 
              l'adresse de r&eacute;seau qui vous est affect&eacute;e et attribuer &agrave; chacun 
              de vos clients SLIP une adresse IP sur ce sous-r&eacute;seau. Vous devrez
              alors probablement configurer une route statique vers votre
              sous-r&eacute;seau SLIP via votre serveur SLIP, sur votre routeur le 
              plus proche, ou installer <command>gated</command> sur votre
              serveur SLIP FreeBSD et le configurer pour qu'il dialogue avec
              les protocoles appropri&eacute;s avec les autres routeurs, pour leur
              annoncer la route de votre serveur SLIP vers le sous-r&eacute;seau 
              SLIP.</para>
	    
	    <para>Sinon, si vous utilisez la m&eacute;thode &ldquo;proxy ARP&rdquo;,
              vous devrez assigner &agrave; vos client SLIP des adresses sur le 
              sous-r&eacute;seau Ethernet de votre serveur SLIP, et vous devrez
              aussi adapter vos proc&eacute;dures
	      <filename>/etc/sliphome/slip.login</filename> et
	      <filename>/etc/sliphome/slip.logout</filename> pour qu'elles
              utilisent 
	      <citerefentry><refentrytitle>arp</refentrytitle><manvolnum>8</manvolnum></citerefentry> pour g&eacute;rer les entr&eacute;es proxy-ARP dans la table ARP de 
	      votre serveur SLIP.</para>
	    
	  </sect3>
	  
	  <sect3>
	    <title>Configuration de <filename>slip.login</filename></title>
	    
	    <para>Le fichier <filename>/etc/sliphome/slip.login</filename>
	      ressemble typiquement &agrave; ceci:</para>
	    
	    <programlisting>
#!/bin/sh -
#
#       @(#)slip.login  5.1 (Berkeley) 7/1/90

#
# proc&eacute;dure d'ouverture de session g&eacute;n&eacute;rique pour une liaison slip
# sliplogin l'appelle avec les param&egrave;tres:
#
#       1        2     3        4               5           6       7-n
#   interface vitesse nom adresse-locale adresse-&eacute;loign&eacute;e masque optionnels
#
/sbin/ifconfig sl$1 inet $4 $5 netmask $6</programlisting>
	    
	    <para>Ce fichier <filename>slip.login</filename> ne fait
              qu'ex&eacute;cuter <command>ifconfig</command> sur l'interface
	      SLIP appropri&eacute;e avec comme param&egrave;tres les adresses locales 
              et distantes et le masque de r&eacute;seau de l'interface SLIP.</para>
	    
	    <para>Si vous avez choisi la m&eacute;thode &ldquo;proxy ARP&rdquo;
              (au lieu d'affecter un sous-r&eacute;seau distinct &agrave; vos clients 
	      SLIP), votre fichier 
              <filename>/etc/sliphome/slip.login</filename> devra ressembler
	      &agrave;:</para>
	    
	    <programlisting>
#!/bin/sh -
#
#       @(#)slip.login  5.1 (Berkeley) 7/1/90

#
# proc&eacute;dure d'ouverture de session g&eacute;n&eacute;rique pour une liaison slip
# sliplogin l'appelle avec les param&egrave;tres:
#
#       1        2     3        4               5           6       7-n
#   interface vitesse nom adresse-locale adresse-&eacute;loign&eacute;e masque optionnels
#
/sbin/ifconfig sl$1 inet $4 $5 netmask $6 
#
# r&eacute;pondre aux requ&ecirc;tes ARP concernant le client SLIP 
# pour notre adresse Ethernet
#
/usr/sbin/arp -s $5 00:11:22:33:44:55 pub</programlisting>
	    
	    <para>La ligne suppl&eacute;mentaire 
	      <command>arp -s &#36;5 00:11:22:33:44:55 pub</command> 
              de ce fichier <filename>slip.login</filename> cr&eacute;e une entr&eacute;e
              ARP dans la table ARP du serveur SLIP. Cette entr&eacute;e ARP fait
              que le serveur SLIP r&eacute;pond en donnant sa propre adresse MAC 
              lorsqu'un autre noeud IP du r&eacute;seau Ethernet demande &agrave; parler
              avec le client SLIP qui a cette adresse IP.</para>
	    
	    <para>Dans l'exemple donn&eacute; ci-dessus, remplacez bien l'adresse
	      MAC Ethernet (<hostid role="mac">00:11:22:33:44:55</hostid>) par
              l'adresse MAC de la carte Ethernet de votre syst&egrave;me, sans quoi
	      votre &ldquo;proxy ARP&rdquo; ne fonctionnera d&eacute;finitivement pas!
              Vous pouvez conna&icirc;tre cette adresse MAC en regardant le r&eacute;sultat
              de la commande <command>netstat -i</command>; la seconde ligne des
              sorties doit ressembler &agrave; ce qui suit:</para>
	    
	    <informalexample>
	      <screen>ed0   1500  &lt;Link&gt;0.2.c1.28.5f.4a         191923	0   129457     0   116
	      </screen>
	    </informalexample>
	    
	    <para>Cela indique que l'adresse MAC Ethernet de ce syst&egrave;me 
	      est <hostid role="mac">00:02:c1:28:5f:4a</hostid>&nbsp;-&nbsp;il
              faut remplacer les &ldquo;.&rdquo; dans les adresses MAC Ethernet
              que donne <command>netstat -i</command> par des &ldquo;:&rdquo;
              et ajouter un &ldquo;0&rdquo; devant les valeurs hexad&eacute;cimales
              qui ne sont donn&eacute;es que sur un seul caract&egrave;re pour obtenir des
              adresses telles que
	      <citerefentry><refentrytitle>arp</refentrytitle><manvolnum>8</manvolnum></citerefentry> 
              les demande; voyez les pages de manuel de
	      <citerefentry><refentrytitle>arp</refentrytitle><manvolnum>8</manvolnum></citerefentry> pour avoir des informations compl&egrave;tes sur ces 
              conventions.</para>

	    <note>
	      <para>Quand vous cr&eacute;ez les fichiers
		<filename>/etc/sliphome/slip.login</filename>&nbsp;-&nbsp;et
		<filename>/etc/sliphome/slip.logout</filename>&nbsp;-&nbsp;, le
		bit &ldquo;ex&eacute;cutable&rdquo; doit &ecirc;tre positionn&eacute;
                (i.e., <command>chmod 755 /etc/sliphome/slip.login
		  /etc/sliphome/slip.logout</command>), sinon 
		<command>sliplogin</command> ne pourra pas ex&eacute;cuter la
		proc&eacute;dure.</para>
	    </note>
	  </sect3>
	  
	  <sect3>
	    <title>Configuration de <filename>slip.logout</filename></title>
	    
	    <para><filename>/etc/sliphome/slip.logout</filename> n'est pas
	      strictement indispensable (&agrave; moins que vous n'impl&eacute;mentiez
              &ldquo;proxy ARP&rdquo;), mais, si vous d&eacute;cidez de la cr&eacute;er,
              voici un exemple de proc&eacute;dure
	      <filename>slip.logout</filename> &eacute;l&eacute;mentaire:</para>
	    
	    <programlisting>
#!/bin/sh -
#
#       slip.logout
#
# proc&eacute;dure de fermeture de session g&eacute;n&eacute;rique pour une liaison slip
# sliplogin l'appelle avec les param&egrave;tres:
#
#       1        2     3        4               5           6       7-n
#   interface vitesse nom adresse-locale adresse-&eacute;loign&eacute;e masque optionnels
#
/sbin/ifconfig sl$1 down</programlisting>

	    <para>Si vous utilisez &ldquo;proxy ARP&rdquo;, vous voudrez que
	      <filename>/etc/sliphome/slip.logout</filename> supprime l'entr&eacute;e
              ARP pour le client SLIP:</para>
	    
	    <programlisting>
#!/bin/sh -
#
#       slip.logout
#
# proc&eacute;dure de fermeture de session g&eacute;n&eacute;rique pour une liaison slip
# sliplogin l'appelle avec les param&egrave;tres:
#
#       1        2     3        4               5           6       7-n
#   interface vitesse nom adresse-locale adresse-&eacute;loign&eacute;e masque optionnels
#
/sbin/ifconfig sl$1 down
# Cessez de r&eacute;pondre aux requ&ecirc;tes ARP concernant le client SLIP
/usr/sbin/arp -d $5</programlisting>
	    
	    <para><command>arp -d &#36;5</command> supprime l'entr&eacute;e ARP que la
              proc&eacute;dure <filename>slip.login</filename> pour &ldquo;proxy
              arp&rdquo; a ajout&eacute; quand le client SLIP a ouvert la 
              session.</para>
	    
	    <para>Il n'est pas inutile de r&eacute;p&eacute;ter: v&eacute;rifiez que le bit
              &ldquo;ex&eacute;cutable&rdquo; de la proc&eacute;dure
	      <filename>/etc/sliphome/slip.logout</filename> est positionn&eacute;
	      apr&egrave;s que vous l'ayez cr&eacute;&eacute;e (i.e., <command>chmod
		755 /etc/sliphome/slip.logout</command>).</para>
	    
	  </sect3>
	</sect2>
	
	<sect2>
	  <title>A propos du routage</title>
	  
	  <para>Si vous n'utilisez pas &ldquo;proxy ARP&rdquo; pour router
            les paquets entre vos clients SLIP et le reste de votre r&eacute;seau
            (et peut-&ecirc;tre l'Internet), vous devrez probablement soit ajouter 
            des routes statiques vers votre(vos) routeur(s) par d&eacute;faut le(s)
            plus proche(s) pour router le sous-r&eacute;seau de vos clients SLIP via
            votre serveur SLIP, soit installer et configurer
            <command>gated</command> sur votre serveur SLIP FreeBSD de sorte
            qu'il fournisse &agrave; vos routeurs, en utilisant les protocoles de 
            routage appropri&eacute;s, les informations qui concernent votre 
            sous-r&eacute;seau SLIP.</para>
	  
	  <sect3>
	    <title>Routes statiques</title>
	    
	    <para>Ajouter des routes statiques vers vos routeurs les plus 
              proches peut &ecirc;tre probl&eacute;matique (voire impossible, si vous n'avez 
              pas les autorisations pour ...). Si vous avez un r&eacute;seau avec
              des routeurs divers, certains d'entre eux, tels les Cisco et les
              Proteon, devront non seulement avoir la route statique vers votre
              sous-r&eacute;seau SLIP, mais devront aussi savoir quelles routes 
              statiques ils doivent annoncer aux autres routeurs, il faudra
              donc quelques comp&eacute;tences, de la mise au point ou de la
              &ldquo;bidouille&rdquo; pour que vos routes statiques
              fonctionnent.</para>
	    
	  </sect3>
	  
	  <sect3>
	    <title>Utiliser <command>gated</command></title>
	    
	    <para>Une alternative aux maux de t&ecirc;te que provoquent les routes
              statiques est d'installer <command>gated</command> sur votre 
              serveur SLIP FreeBSD et de le configurer pour qu'il utilise les
              protocoles de routage appropri&eacute;s (RIP/OSPF/BGP/EGP) pour annoncer
              aux autres routeurs votre sous-r&eacute;seau SLIP. Vous pouvez utiliser
              la version de <command>gated</command> du 
	      <link linkend="ports">catalogue des logiciels port&eacute;s</link> ou le
              t&eacute;l&eacute;charger depuis <ulink
		url="ftp://ftp.gated.merit.edu/research.and.development/gated/">le site ftp anonyme de GateD</ulink> et 
              le compiler vous-m&ecirc;me; Je crois que la derni&egrave;re version au moment
              o&ugrave; j'&eacute;cris ceci est <filename>gated-R3_5Alpha_8.tar.Z</filename>,
              qui inclut la version pour FreeBSD &ldquo;pr&ecirc;te-&agrave;-l'usage&rdquo;.
              Des informations compl&egrave;tes et la documentation de 
              <command>gated</command> sont disponibles
              sur le Web sur le site du
              <ulink url="http://www.gated.merit.edu/">Merit GateD Consortium</ulink>.
              Compilez-le et installez-le, et cr&eacute;ez ensuite un fichier
              <filename>/etc/gated.conf</filename> pour le configurer; voici un
              exemple, semblable &agrave; celui que l'auteur a utilis&eacute; sur un serveur 
              SLIP FreeBSD:</para>

	    <programlisting>
#
# fichier de configuration de gated dc.dsu.edu; 
# pour la version 3.5alpha5 de gated
# simplement diffuser les informations RIP pour xxx.xxx.yy 
# via l'interface Ethernet "ed"
#
# options de trace
#
traceoptions "/var/tmp/gated.output" replace size 100k files 2 general ;

rip yes {
  interface sl noripout noripin ;
  interface ed ripin ripout version 1 ;
  traceoptions route ;
} ;

#
# fournir des informations de trace sur l'interface au noyau:
kernel {
  traceoptions remnants request routes info interface ;
} ;

#
# Propager la route vers xxx.xxx.yy via l'Ethernet interface et RIP
#

export proto rip interface ed {
  proto direct {
      <replaceable>xxx.xxx.yy</replaceable> mask 255.255.252.0 metric 1; # SLIP connections
  } ;
} ;

#
# Accepter les routes de RIP via les interfaces Ethernet "ed"
	      
import proto rip interface ed {
  all ;
} ;</programlisting>
	    
	    <para>L'exemple ci-dessus de fichier <filename>gated.conf</filename>
              diffuse l'information de routage concernant le sous-r&eacute;seau SLP
	      <replaceable>xxx.xxx.yy</replaceable> en utilisant RIP sur 
	      l'interface Ethernet; si vous utilisez un pilote Ethernet autre 
              que <devicename>ed</devicename>, vous devrez modifier en
              cons&eacute;quence les r&eacute;f&eacute;rences &agrave; l'interface 
              <devicename>ed</devicename>. Ce fichier d'exemple active aussi les
              traces sur <filename>/var/tmp/gated.output</filename> pour pouvoir
              d&eacute;boguer le fonctionnement de <command>gated</command>; vous 
              pouvez certainement d&eacute;sactiver ces options de trace si 
	      <command>gated</command> fonctionne comme vous le voulez. Vous
              devrez remplacer les <replaceable>xxx.xxx.yy</replaceable> par
              l'adresse r&eacute;seau de votre propre sous-r&eacute;seau SLIP (veillez &agrave;
              remplacer aussi le masque de r&eacute;seau dans la clause
	      <literal>proto direct</literal>).</para>
	    
	    <para>Une fois que vous avez compil&eacute; et install&eacute;
              <command>gated</command> et cr&eacute;er son fichier de configuration,
              vous devrez lancer <command>gated</command> au lieu de 
              <command>routed</command> sur votre syst&egrave;me FreeBSD; modifiez les
               param&egrave;tres de d&eacute;marrage de <filename>routed/gated</filename> dans
	      <filename>/etc/netstart</filename> comme requis par votre
	      syst&egrave;me. Consultez s'il vous pla&icirc;t les pages de manuel de 
              <command>gated</command> pour avoir des informations sur les
              param&egrave;tres de la ligne de commande de 
              <command>gated</command>.</para>
	    
	  </sect3>
	</sect2>
	
	<sect2>
	  <title>Remerciements</title>
	  
	  <para>Merci aux personnes suivantes pour leurs commentaires et leurs
            conseils &agrave; propos de ce guide:</para>
	  
	    <variablelist>
	      <varlistentry><term>&a.wilko;</term>
		<listitem>
		  <para></para>
		</listitem>
	      </varlistentry>
	      
	      <varlistentry><term>Piero Serini</term>
		
		<listitem>
		<para><email>Piero@Strider.Inet.IT</email></para>
		  
		</listitem>
	      </varlistentry>
	    </variablelist>
	  
	  
	</sect2>
      </sect1>
    </chapter>

<!-- 
     Local Variables:
     mode: sgml
     sgml-declaration: "../chapter.decl"
     sgml-indent-data: t
     sgml-omittag: nil
     sgml-shorttag: nil
     sgml-always-quote-attributes: t
     sgml-minimize-attributes: max
     sgml-parent-document: ("../handbook.sgml" "part" "chapter")
     End:
-->

