Sophie

Sophie

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

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

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>3. La mobilité IPv6 avec Linux</title>
<link rel="stylesheet" href="style.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
<link rel="start" href="index.html" title="Guide pratique de la mobilité IPv6 avec Linux">
<link rel="up" href="index.html" title="Guide pratique de la mobilité IPv6 avec Linux">
<link rel="prev" href="ar01s02.html" title="2. IPv6">
<link rel="next" href="ar01s04.html" title="4. Environnement de test">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<div class="navheader">
<table width="100%" summary="Navigation header">
<tr><th colspan="3" align="center">3. La mobilité IPv6 avec Linux</th></tr>
<tr>
<td width="20%" align="left">
<a accesskey="p" href="ar01s02.html">Précédent</a> </td>
<th width="60%" align="center"> </th>
<td width="20%" align="right"> <a accesskey="n" href="ar01s04.html">Suivant</a>
</td>
</tr>
</table>
<hr>
</div>
<div class="sect1" lang="fr">
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
<a name="MIPv6"></a>3. La mobilité IPv6 avec Linux</h2></div></div></div>
<p>
    Il existe actuellement deux souches logicielles de la mobilité
    IPv6 pour Linux. L'université anglaise de Lancaster a réalisé la
    première souche historique (<a href="http://www.cs-ipv6.lancs.ac.uk/MobileIP/" target="_top">http://www.cs-ipv6.lancs.ac.uk/MobileIP/</a>).
    Le noyau géré le plus récent est le 2.1.90 et la mise en œuvre est
    compatible avec la version 5 du document de travail relatif à la mobilité
    IPv6 de l'IETF (ce document en est actuellement à la version 24). Le code
    source et le site web n'ont pas été mis à jour depuis 1998. L'ensemble est
    donc considéré obsolète.
  </p>
<p>
    L'autre souche, réalisée dans le cadre du projet MIPL de l'université
    de technologie d'Helsinki, est davantage à jour. Le noyau le plus récent
    pris en charge est le 2.4.22 et des greffons de code existent pour la
    série des noyaux 2.6 (se reporter à la FAQ). Le site <a href="http://www.mobile-ipv6.org/" target="_top">http://www.mobile-ipv6.org/</a>
    contient des documents, le logiciel et une archive des discussions par
    courrier électronique.
  </p>
<div class="sect2" lang="fr">
<div class="titlepage"><div><div><h3 class="title">
<a name="patch"></a>3.1. Mise à niveau du noyau</h3></div></div></div>
<p>
      La souche MIPL de MIPv6 demande une mise à niveau du noyau.
      Elle modifie la pile IPv6 de ce dernier. Une recompilation est donc
      nécessaire.  La procédure est correctement documentée mais un rapide
      aperçu des étapes est donné ci-dessous.
    </p>
<p>
      <span class="emphasis"><em>
        Remarque importante : il n'est plus nécessaire de compiler
        deux noyaux différents (un pour la station mobile et l'autre pour
        la station d'accueil). Il suffit de compiler la prise en charge de
        la station mobile et celle de la station d'accueil dans le même
        noyau. Il n'est cependant pas possible de faire fonctionner le
        noyau à la fois pour une station mobile et pour une station
        d'accueil : le mode retenu dépend du module chargé.
      </em></span>
    </p>
<p>
      </p>
<div class="orderedlist"><ol type="1">
<li>
<p>
            On commence par télécharger le dernier code source de MIPv6 pour
            Linux à l'adresse <a href="http://www.mobile-ipv6.org/" target="_top">http://www.mobile-ipv6.org/</a>.
            La dernière version à jour est
            <span class="emphasis"><em>mipv6-1.0-v2.4.22</em></span>. Les quatre derniers chiffres
            indiquent le noyau Linux auquel le greffon doit être appliqué.
          </p>
<pre class="screen">
# cd /usr/local/src
# wget http://www.mobile-ipv6.org/download/mipv6-1.0-v2.4.22.tar.gz
# tar zxfv mipv6-1.0-v2.4.22.tar.gz
</pre>
</li>
<li>
<p>
            On télécharge et on décompresse ensuite le noyau Linux
            correspondant depuis le site <a href="ftp://ftp.kernel.org" target="_top">ftp.kernel.org</a> :
          </p>
<pre class="screen">
# cd /usr/src
# wget ftp://ftp.kernel.org/pub/linux/kernel/v2.4/linux-2.4.22.tar.bz2
# tar jxvf linux-2.4.22.tar.bz2
# ln -s linux-2.4.22 linux
# cd linux
</pre>
</li>
<li>
<p>Application du greffon MIPv6 :</p>
<pre class="screen">
# patch -p1 --dry-run &lt; /usr/local/src/mipv6-1.0-v2.4.22/mipv6-1.0-v2.4.22.patch
</pre>
<p>
            L'option --dry-run vérifie que le greffon est applicable. Si un
            fragment est rejeté, il vaut mieux ne <span class="emphasis"><em>pas</em></span>
            continuer. Si tout se déroule correctement, on peut effectivement
            appliquer les modifications :
          </p>
<pre class="screen">
# patch -p1 &lt; /usr/local/src/mipv6-1.0-v2.4.22/mipv6-1.0-v2.4.22.patch
</pre>
</li>
<li>
<p>
            L'arborescence du noyau Linux est maintenant prête à être
            configurée. On exécute la commande <span><b class="command">make *config</b></span>
            de son choix. Les options de configuration de MIPv6 se trouvent
            sous le menu « <span class="quote">Networking Options</span> ». Les options
            ci-dessous devraient apparaître dans le fichier
            <span class="emphasis"><em>« <span class="quote">.config</span> »</em></span> :
          </p>
<pre class="screen">
CONFIG_EXPERIMENTAL=y
CONFIG_SYSCTL=y
CONFIG_PROC_FS=y
CONFIG_MODULES=y
CONFIG_NET=y
CONFIG_NETFILTER=y
CONFIG_UNIX=y
CONFIG_INET=y
CONFIG_IPV6=m
CONFIG_IPV6_SUBTREES=y
CONFIG_IPV6_IPV6_TUNNEL=m
CONFIG_IPV6_MOBILITY=m
CONFIG_IPV6_MOBILITY_MN=m
CONFIG_IPV6_MOBILITY_HA=m
</pre>
<p>
            Comme le développement de MIPL n'est pas encore achevé, il peut
            être utile d'activer :
          </p>
<pre class="screen">
CONFIG_IPV6_MOBILITY_DEBUG=y
</pre>
<p>
            Les messages de mise au point permettent de comprendre plus
            facilement ce qui s'est produit quand une erreur a lieu. Ils
            sont également très utiles lorsqu'on rapporte une anomalie.
          </p>
<p>
            On peut exécuter le script <b class="userinput"><tt>chkconf_kernel.sh</tt></b>
            inclus dans le paquet MIPL pour vérifier que toutes les options
            adéquates sont positionnées.
          </p>
</li>
<li>
<p>
            On procède ensuite à la compilation et à l'installation du noyau.
          </p>
<p>
            Suggestion : afin de distinguer plus facilement les noyaux
            qu'on recompile soi-même, il suffit par exemple de positionner
            la variable « <span class="quote">EXTRAVERSION</span> » dans le fichier
            <b class="userinput"><tt>/usr/src/linux/Makefile</tt></b> à la valeur
            « <span class="quote">-MIPv6-1</span> ».
          </p>
</li>
</ol></div>
<p>
    </p>
<p>
      Le <a href="http://www.traduc.org/docs/howto/lecture/Kernel-HOWTO.html" target="_top">guide
      pratique du noyau Linux</a> fournit des instructions détaillées pour
      la modification, la compilation et l'installation d'un nouveau noyau.
    </p>
</div>
<div class="sect2" lang="fr">
<div class="titlepage"><div><div><h3 class="title">
<a name="userspace"></a>3.2. Programmes utilitaires</h3></div></div></div>
<p>
      L'utilitaire <b class="userinput"><tt>mipdiag</tt></b>, les fichiers de
      configuration et les scripts d'initialisation doivent être installés
      pour que le module fonctionne correctement :
    </p>
<pre class="screen">
# cd /usr/local/src/mipv6-1.0-v2.4.22
# ./configure
# make &amp;&amp; make install
</pre>
</div>
<div class="sect2" lang="fr">
<div class="titlepage"><div><div><h3 class="title">
<a name="dev"></a>3.3. Fichier spécial pour MIPv6</h3></div></div></div>
<p>
      Le module MIPv6 nécessite également un nouveau fichier spécial.
      La commande suivante en crée un :
    </p>
<pre class="screen">
# mknod /dev/mipv6_dev c 0xf9 0
</pre>
</div>
<div class="sect2" lang="fr">
<div class="titlepage"><div><div><h3 class="title">
<a name="startup"></a>3.4. Démarrage automatique</h3></div></div></div>
<div class="orderedlist"><ol type="1">
<li>
<p><span class="emphasis"><em>Red Hat :</em></span></p>
<p>
          Les fichiers de commandes de démarrage se trouvent dans le
          répertoire <tt class="filename">/etc/init.d/</tt> et sont référencés
          au moyen de liens symboliques suivant le niveau de fonctionnement
          (<tt class="filename">/etc/rcX.d/</tt>). On active MIPv6 au démarrage
          avec la commande :
        </p>
<pre class="screen">
# chkconfig --add mobile-ip6
</pre>
<p>On le désactive de façon similaire :</p>
<pre class="screen">
# chkconfig --del mobile-ip6
</pre>
</li>
<li>
<p><span class="emphasis"><em>Debian :</em></span></p>
<p>
          Si on a la chance d'opérer avec une distribution Debian, la
          commande suivante positionnera tous les liens nécessaires :
        </p>
<pre class="screen">
# update-rc.d -n mobile-ip6 start 75 3 4 5 . stop 05 1 2 6 .
</pre>
</li>
<li>
<p><span class="emphasis"><em>Slackware :</em></span></p>
<p>
          Les scripts de démarrage et de changement de niveau de
          fonctionnement se trouvent tous dans le répertoire
          <tt class="filename">/etc/rc.d</tt>. « <span class="quote">configure</span> »
          n'examine pas « <span class="quote">/etc/rc.d</span> ». On ajoute donc
          <span class="emphasis"><em>INIT_SLACK="/etc/rc.d"</em></span> et INIT_SLACK à
          INITDIRS dans le script « <span class="quote">configure</span> » (il suffit
          de rechercher INITDIR dans ce fichier). La commande suivante
          permet alors d'achever le travail :
        </p>
<pre class="screen">
# echo '/etc/rc.d/mobile-ip6 start' &gt;&gt; /etc/rc.d/rc.local
</pre>
<p>
          Si le fichier Makefile n'est pas modifié, le script
          <tt class="filename">mobile-ip6</tt> est installé à la racine et il
          faut alors le déplacer manuellement dans le répertoire /etc/rc.d.
        </p>
</li>
</ol></div>
</div>
</div>
<div class="navfooter">
<hr>
<table width="100%" summary="Navigation footer">
<tr>
<td width="40%" align="left">
<a accesskey="p" href="ar01s02.html">Précédent</a> </td>
<td width="20%" align="center"><a accesskey="u" href="index.html">Niveau supérieur</a></td>
<td width="40%" align="right"> <a accesskey="n" href="ar01s04.html">Suivant</a>
</td>
</tr>
<tr>
<td width="40%" align="left" valign="top">2. IPv6 </td>
<td width="20%" align="center"><a accesskey="h" href="index.html">Sommaire</a></td>
<td width="40%" align="right" valign="top"> 4. Environnement de test</td>
</tr>
</table>
</div>
</body>
</html>