Sophie

Sophie

distrib > Mandriva > 9.0 > i586 > by-pkgid > 0d5cd12c82d627a82c59047e1ba7b8a9 > files > 1655

howto-html-fr-9.0-0.2mdk.noarch.rpm

<HTML>
<HEAD>
<TITLE>M&eacute;thode</TITLE>
</HEAD>
<BODY>
<H1>6. <A NAME="s6"></A>M&eacute;thode</H1>
<P>
<A HREF="DHCPcd.html#toc6">Contenu de cette section</A></P>

<P></P>
<P></P>
<H2>6.1 <A NAME="ss6.1"></A> Premi&egrave;re &eacute;tape </H2>

<P></P>
<P>Quel que soit la distribution que vous utilisez, vous aurez besoin de
t&eacute;l&eacute;charger le d&eacute;mon client pour <B>Linux</B>. Le
paquetage dont vous avez besoin est appel&eacute; <CODE>dhcpcd</CODE> et sa
version actuelle est 0.70. Le fichier de description du paquetage
&eacute;crit: </P>
<P>
<PRE>
Title:          dhcpcd 
Version:        0.70 
Entered-date:   05MAY97 
Description:    dhcpcd is an RFC2131 compliant DHCP client daemon. It 
                gets an IP address and other information from a 
                corresponding DHCP server, configures the network 
                interface automatically, and tries to renew the lease 
                time according to RFC2131. It works in the RFC1541 
                compliant mode when the '-r' option is specified. 
                So far it is found that dhcpcd 0.70 works fine with
                the 
                following DHCP servers: 
                  1. ISC's dhcpcd-BETA-5.15 
                  2. DHCP server on Windows NT server 3.51 
                  3. DHCP server version 1.3b by WIDE project. 
                  4. DHCP server in the SolarNet PC-Admin 1.5 package 
                  5. DHCP server used in Time Warner Cable's 
                     Internet Access Service
                  6. DHCP server used in Bell Atlantic ADSL
                See the &quot;Changes&quot; file if you want to know the
                difference 
                from the previous version. 
Keywords:       DHCP, client, Linux 
Author:         yoichi@fore.com (Yoichi Hariguchi) 
Maintained-by:  yoichi@fore.com (Yoichi Hariguchi) 
Primary-site:   ftp.kobe-u.ac.jp:/pub/PC-UNIX/Linux/network/dhcp
                33kB dhcpcd-0.70.tar.gz 
Alternate-site: sunsite.unc.edu:/pub/Linux/system/network/daemons 
                33kB dhcpcd-0.70.tar.gz 
Original-site:  
Platforms:       Linux 1.2.xx, 1.3.xx, 2.0.x 
Copying-policy: GPL 
</PRE>
</P>
<P></P>
<H3>Slackware </H3>

<P></P>
<P>Vous pouvez t&eacute;l&eacute;charger la derni&egrave;re copie de
DHCPcd depuis n'importe quel mirroir de <SF>sunsite</SF> ou :
<CODE>ftp://ftp.cdrom.com/pub/linux/sunsite/system/network/daemons/</CODE>
<CODE>ftp://ftp.sunsite.unc.edu/pub/Linux/system/network/daemons/</CODE></P>
<P><CODE>ftp://ftp.lip6.fr/pub/linux/sunsite/system/daemons/</CODE>
(site de r&eacute;f&eacute;rence en France)</P>
<P>T&eacute;l&eacute;chargez la derni&egrave;re version de
<CODE>dhcpcd.tar.gz</CODE></P>
<P>D&eacute;compressez-le: <CODE>tar -zxvf dhcpcd-0.70.tar.gz</CODE>,</P>
<P>d&eacute;placez-vous dans le r&eacute;pertoire: <CODE>cd dhcpcd-0.70</CODE>,</P>
<P>tapez: <CODE>make</CODE>. </P>
<P>Vous aurez besoin d'&ecirc;tre <SF>root</SF> pour
l'installer en tapant <CODE>make install</CODE>. </P>
<P>Cela cr&eacute;era le r&eacute;pertoire <CODE>/etc/dhcpcd</CODE> o&ugrave;
DHCPcd stockera les param&egrave;tres et <CODE>dhcpcd</CODE> sera copi&eacute; dans
le r&eacute;pertoire <CODE>/usr/sbin/</CODE>.
Vous pouvez passer &agrave; la deuxi&egrave;me &eacute;tape.</P>
<P></P>
<H3>RedHat </H3>

<P></P>
<P>DHCPcd est inclu dans la distribution standard de RedHat sous forme
RPM et vous pouvez le trouver dans le r&eacute;pertoire <CODE>RPMS</CODE> du
CD-ROM 
contenant la distribution ou bien le t&eacute;l&eacute;charger depuis:
<CODE>ftp://tsx-11.edu/pub/linux/distributions/redhat/redhat-4.2/i386/RedHat/RPMS/</CODE>
le fichier <CODE>dhcpcd-0.6-2.i386.rpm</CODE></P>
<P>et installez-le avec </P>
<P><CODE>rpm -i dhcpcd-0.6-2.i386.rpm</CODE></P>
<P>Vous pouvez aussi compiler votre propre version en suivant les
&eacute;tapes de la Slackware. Lorsque vous avez fini, passez &agrave;
l'&eacute;tape 2.</P>
<P></P>
<H3>Debian </H3>

<P>Il y a un package pour DHCPcd &agrave;:
<CODE>ftp://ftp.debian.org/debian/stable/binary/net/</CODE>.
Vous pouvez aussi suivre les &eacute;tapes de la Slackware.</P>
<P>Pour d&eacute;compresser les paquetage tapez: <CODE>dpkg -i
/ou/se/trouve/votre/paquetage/dhcpcd*deb</CODE>.</P>
<P>Apr&egrave;s allez &agrave; l'&eacute;tape 2.</P>
<P></P>

<H2>6.2 <A NAME="ss6.2"></A> Deuxi&egrave;me &eacute;tape </H2>

<P>L'(Les) instruction(s) suivante(s) d&eacute;pend(ent) de vos besoins.</P>
<P>
<OL>
<LI>Si vous avez besoin de ressources r&eacute;seau
occasionnellement, vous pouvez lancer <CODE>dhcpcd</CODE> depuis la ligne de
commande (vous avez besoin d'&ecirc;tre <CODE>root</CODE> pour
l'ex&eacute;cuter) en tapant: 
<CODE>/usr/sbin/dhcpcd</CODE>.

Lorsque vous avez besoin d'arr&eacute;ter le service, tapez:

<CODE>/usr/sbin/dhcpcd -k</CODE>. 

Il ne vous manque, maintenant, que la
configuration du serveur de noms (<CODE>/etc/resolv.conf</CODE>). Pour
conna&icirc;tre les instructions afin de cr&eacute;er le fichier
<CODE>/etc/resolv.conf</CODE> allez &agrave; l'&eacute;tape 3.</LI>
<LI>Si vous souhaitez (avez besoin) d'une connexion permanente,
ainsi que l'ex&eacute;cution du d&eacute;mon au d&eacute;marrage
suivez les instructions qui suivent. </LI>
</OL>
</P>
<H3>Slackware. </H3>

<P>Pour que le syst&egrave;me utilise DHCP au d&eacute;marrage tapez:
<CODE>cd /etc/rc.d</CODE>,
<CODE>mv rc.inet1 rc.inet1.old</CODE>.</P>
<P>Cela renommera l'ancienne initilisation du r&eacute;seau en
<CODE>rc.inet1.old</CODE>. Vous avez maintenant besoin de cr&eacute;er le
nouveau fichier <CODE>rc.inet1</CODE>. Il devrait ressembler &agrave;:
<PRE>
#!/bin/sh
#  
# rc.inet1      This shell script boots up the base INET system.
#
# Version:      @(#)/etc/rc.d/rc.inet1  1.01    05/27/93
#

HOSTNAME=`cat /etc/HOSTNAME` #This is probably not necessary but I
                             #will leave it in anyways

# Attache le peripherique loopback.
/sbin/ifconfig lo 127.0.0.1
/sbin/route add -net 127.0.0.0 netmask 255.0.0.0 lo

# SI VOUS AVEZ UNE CONNEXION ETHERNET, utilisez les lignes suivantes
# pour configurer votre interface eth0. Si vous utilisez uniquement 
# le loopback ou bien SLIP, il ne faut pas inclure les lignes
# restantes.

/usr/sbin/dhcpcd
</PRE>
</P>
<P>Nommez le fichier pr&eacute;c&eacute;dant <CODE>rc.inet1</CODE> et
sauvegardez-le. Rebootez votre machine et allez &agrave;
l'&eacute;tape 3.</P>
<P></P>
<H3>RedHat. </H3>

<P>Cette information a &eacute;t&eacute; fournie par <SF>nothing</SF>
(<SF>nothing@cc.gatech.edu</SF>)
<EM>``J'ai enlev&eacute; mon adresse ip statique ainsi que le nom
de ma machine dans le fichier <CODE>/etc/resolv.conf</CODE>. Toutefois,
j'ai laiss&eacute; la ligne search ainsi que mes deux lignes
nameserver (pour une raison inconnue, mon <CODE>dhcpcd</CODE> n'a jamais
cr&eacute;&eacute; de <CODE>/etc/dhcpcd/resolv.conf</CODE>, je dois
donc utiliser un <CODE>/etc/resolv.comf</CODE> statique). </EM></P>
<P><EM>Dans <CODE>/etc/sysconfig/network</CODE> j'ai supprim&eacute; les
valeurs de HOSTNAME ainsi que de GATEWAY.
J'ai laiss&eacute; les autres entr&eacute;es comme telles
(NETWORKING, DOMAINNAME, GATEWAYDEV). </EM></P>
<P><EM>Dans <CODE>/etc/sysconfig/network-scripts/ifcfg-eth0</CODE> j'ai
supprim&eacute; les entr&eacute;es IPADDR, NETMASK, NETWORK, et
BROADCAST. J'ai laiss&eacute; les entr&eacute;es DEVICE et ONBOOT
telles quelles. J'ai modifi&eacute; la valeur de BOOTPROTO &agrave;
BOOTPROTO=dhcp.''</EM> </P>
<P>Savegardez le fichier et rebootez la machine.</P>
<H3>Debian. </H3>

<P>Il semblerait qu'il n'y ait pas besoin de configuration pour DHCPcd
car: 
D'apr&egrave;s <SF>Heik Schlittermann</SF>
<EM>``Le paquetage dhcpcd installe son script de d&eacute;marrage
comme n'importe quel paquetage dans <CODE>/etc/init.d/</CODE>, ici 
<CODE>/etc/init.d/dhcpcd</CODE>, et le lie &agrave; diff&eacute;rents
r&eacute;pertoire <CODE>/etc/rc?.d</CODE>.
Le contenu des diff&eacute;rents <CODE>/etc/rc?.d/</CODE> sont alors
ex&eacute;cut&eacute; au d&eacute;marrage.
Si vous ne rebootez pas votre machine apr&egrave;s l'installation,
vous pouvez quand m&ecirc;me d&eacute;marrer le d&eacute;mon
manuellement: <CODE>/etc/init.d/dhcpcd start</CODE>'' </EM>
Allez &agrave;. l'&eacute;tape 3.</P>
<P></P>

<H2>6.3 <A NAME="ss6.3"></A> Troisi&egrave;me &eacute;tape </H2>

<P>Cette &eacute;tape devrait &ecirc;tre la m&ecirc;me pour toutes les
distributions. </P>
<P>Apr&egrave;s que votre machine ait reboot&eacute;, votre interface 
r&eacute;seau devrait &ecirc;tre configur&eacute;e. Tapez <CODE>ifconfig</CODE> :
et vous devriez avoir quelque chose du genre:</P>
<P>
<PRE>
lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Bcast:127.255.255.255  Mask:255.0.0.0
          UP BROADCAST LOOPBACK RUNNING  MTU:3584  Metric:1
          RX packets:302 errors:0 dropped:0 overruns:0 frame:0
          TX packets:302 errors:0 dropped:0 overruns:0 carrier:0 coll:0

eth0      Link encap:Ethernet  HWaddr 00:20:AF:EE:05:45
          inet addr:24.128.53.102  Bcast:24.128.53.255  Mask:255.255.254.0
          ^^^^^^^^^^^^^^^^^^^^^^^
          UP BROADCAST NOTRAILERS RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:24783 errors:1 dropped:1 overruns:0 frame:1
          TX packets:11598 errors:0 dropped:0 overruns:0 carrier:0 coll:96
          Interrupt:10 Base address:0x300 
</PRE>
</P>
<P>Si vous avez un num&eacute;ro normal apr&egrave;s <CODE>inet addr</CODE>, c'est bon. 
DHCPcd est un d&eacute;mon et continuera de s'ex&eacute;cuter tant que votre 
machine restera allum&eacute;e. Toutes les trois heures il contactera le 
serveur DHCP et essaiera de renouveler le bail de l'adresse IP. Il placera 
tous les messages journaux dans le "journal syst&egrave;me" (pour la
Slackware 
<CODE>/var/adm/syslog</CODE>) si vous avez besoin de le consulter.</P>
<P>Une derni&egrave;re chose. Vous avez besoin de sp&eacute;cifier vos serveurs de noms. Il y a deux mani&egrave;res de le faire, vous pouvez demander &agrave; votre fournisseur d'acc&egrave;s de vos donner les adresses de vos serveurs de noms et de les placer dans le fichier <CODE>/etc/resolv.conf</CODE> o&ugrave; bien, DHCPcd obtient la liste depuis le serveur DHCP et construira un fichier <CODE>/etc/dhcpcd/resolv.conf</CODE>. J'ai d&eacute;cid&eacute; d'utiliser les <CODE>resolv.conf</CODE> de DHCPcd en faisant les choses suivantes:
<UL>
<LI>Sauvegarder votre ancien <CODE>resolv.conf</CODE>: <CODE>mv /etc/resolv.conf /etc/resolv.conf.old</CODE>,</LI>
<LI>Si le r&eacute;pertoire <CODE>/etc/dhcpcd/</CODE> n'existe pas, cr&eacute;ez le: <CODE>mkdir /etc/dhcpcd/</CODE>,</LI>
<LI>Faire un lien entre <CODE>/etc/dhcpcd/resolv.conf</CODE> et <CODE>/etc/resolv.conf</CODE>: <CODE>ln -s /etc/dhcpcd/resolv.conf /etc/resolv.conf</CODE></LI>
</UL>
</P>
<P>Si cela ne marche pas, essayez cela (propos&eacute; par <SF>nothing@cc.gatech.edu</SF> avec une retouche de <SF>Henrik Stoerner</SF>)</P>
<P><EM>Cette derni&egrave;re &eacute;tape doit &ecirc;tre ex&eacute;cut&eacute;e seulement si <CODE>dhcpcd</CODE> ne cr&eacute;e pas le <CODE>/etc/dhcpcd/resolv.conf</CODE>. Dans le fichier <CODE>/etc/sysconfig/network-scripts/ifup</CODE> j'ai effectu&eacute; les modifications suivantes (qui sont vraiment de petites bidouilles, mais qui marchent pour moi).</EM></P>
<P>
<PRE>
#################################
elif [ &quot;$BOOTPROTO&quot; = dhcp -a &quot;$ISALIAS&quot; = no ]; then
    echo -n &quot;Using DHCP for ${DEVICE}... &quot;
    /sbin/dhcpcd -c /etc/sysconfig/network-scripts/ifdhcpc-done ${DEVICE}
    echo &quot;echo \$$ &gt; /var/run/dhcp-wait-${DEVICE}.pid; exec sleep 30&quot; | sh

    if [ -f /var/run/dhcp-wait-${DEVICE}.pid ]; then
        ^^^^
        echo &quot;failed.&quot;
        exit 1
################################# 
</PRE>

<EM> Je l'ai chang&eacute; en: </EM>
<PRE>
################################# 
elif [ &quot;$BOOTPROTO&quot; = dhcp -a &quot;$ISALIAS&quot; = no ]; then
    echo -n &quot;Using DHCP for ${DEVICE}... &quot;
    /sbin/dhcpcd
    echo &quot;echo \$$ &gt; /var/run/dhcp-wait-${DEVICE}.pid; exec sleep 30&quot; | sh

    if [ ! -f /var/run/dhcp-wait-${DEVICE}.pid ]; then
        ^^^^^^
       echo &quot;failed.&quot;
       exit 1
#################################
</PRE>
</P>
<P><EM> Notez le ! (point d'interrogation) dans le <CODE>if [ ! -f /var/run/dhcp-wait-$(DEVICE).pid ] ;</CODE>
Maintenant asseyez vous et contemplez <CODE>&lt;:&circ;}</CODE> </EM></P>
<P></P>

<HR>
<P>
Chapitre <A HREF="DHCPcd-7.html">suivant</A>,
Chapitre <A HREF="DHCPcd-5.html">Pr&eacute;c&eacute;dent</A>
<P>
Table des mati&egrave;res de <A HREF="DHCPcd.html#toc6">ce chapitre</A>,
 <A HREF="DHCPcd.html#toc">Table des mati&egrave;res</A> g&eacute;n&eacute;rale</P>
<P>
<A HREF="DHCPcd.html">D&eacute;but</A> du document,
 <A HREF="#0"> D&eacute;but de ce chapitre</A></P>
</BODY>
</HTML>