Le client dispose le plus souvent d'une adresse IP dynamique attribuée
grâce à DHCP, dont le logiciel client (sous Linux) est un démon
appelé dhcpcd (DHCP Client Daemon).
Connexion à Cybercâble (sous RedHat 5.2 ou 6.0).
Sous Red Hat 5.2 ou une 6.0, dhcp est déja installé (sinon voir le cable mini-how-to) et linuxconf aussi. Cette méthode est une méthode de paresseux, et c'est celle que j'ai adoptée.
On imagine que la carte réseau fonctionne correctement et a été reconnue au demarrage, ce qui arrive le plus souvent. Ici, on prend l'exemple d'une ne2000 pci.
En tant que root on lance linuxconf.
NB : linuxconf est un outil de configuration qui se lance en mode console ou sous X
Choisir "tache cliente" / configuration de base de cette machine.
Choisir adaptateur 1 et le paramétrer ainsi :
Ensuite, il faut modifier qqs fichiers.
Tout d'abord le fichier contenant les addresses de serveur de resolution des noms DNS :
/etc/resolv.conf contient donc :
domain cybercable.fr
nameserver XX
nameserver YY
ATTENTION : XX et YY remplace ici les numéros des
serveurs de noms (dits « serveurs DNS ») communiqués par le service
technique de votre fournisseur, le plus souvent dans les documents qui
accompagnent votre contrat d'abonnement.
puis /etc/host.conf :
order hosts,bind
multi on
puis /etc/hosts :
127.0.0.1 localhost
enfin, et c'est important :
/etc/sysconfig/network-scripts/ifcfg-eth0
Là il faut rajouter trois lignes (je mets des étoiles devant) :
DEVICE="eth0"
* IPADDR=""
* NETWORK=""
* NETMASK=""
ONBOOT="yes"
BOOTPROTO="dhcp"
IPXNETNUM_802_2=""
IPXPRIMARY_802_2="no"
IPXACTIVE_802_2="no"
IPXNETNUM_802_3=""
IPXPRIMARY_802_3="no"
IPXACTIVE_802_3="no"
IPXNETNUM_ETHERII=""
IPXPRIMARY_ETHERII="no"
IPXACTIVE_ETHERII="no"
IPXNETNUM_SNAP=""
IPXPRIMARY_SNAP="no"
IPXACTIVE_SNAP="no"
Ensuite on teste la config :
/etc/rc.d/init.d/network start
Lance la connexion et doit donner un resultat positif.
Invoquer /sbin/ifconfig afin de le vérifier :
eth0 Link encap:Ethernet HWaddr 00:80:AD:30:C6:93
inet addr:212.198.18.128 Bcast:212.198.18.255 Mask:255.255.255.0
UP BROADCAST RUNNING MTU:1500 Metric:1
...
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:3924 Metric:1
...
La connexion est rétablie lors de chaque démarrage.
pump (équivalent dhcpcd) pose problème d'upload (entre 10 à 20 Mo inutiles par jour)
donc :
% diff ifup.old ifup
86c86
< if /sbin/pump -i $DEVICE ; then
---
> if /sbin/dhcpcd -d -R $DEVICE ; then
% diff ifdown.old ifdown
45c45
< pump -r -i ${DEVICE}
---
> /sbin/dhcpcd -k ${DEVICE}
La renégociation d'adresse IP (par DHCP) échoue parfois. On peut en ce cas placer en crontab (invocation périodique, par exemple une fois par heure) le script :
#!/bin/sh
if [ -f /var/run/dhcpcd-eth0.pid ] && ps -xh|grep -w dhcpcd > /dev/null ; then
exit 0
else
date >> tmp/dhcpd.died
/etc/dhcp/dhcp-on
fi