[Mandrake] : Démarrage automatiq de dhclient

Fermé
Gérald - 5 mars 2005 à 09:26
 Gérald - 6 mars 2005 à 12:59
Bonjour.

Je me permets de vous contacter pour vous demander une petite aide sur dhclient.

Mon but est de tester le DYnamic-DNS.

J'utilise des machines Mandrake9.2. Actuellement mes serveurs DNS & DHCP fonctionnent.

J'ai installé & j'ai paramétré dhclient.
Fichier /etc/dhclient.conf : J'ai ajouté l'instruction send host-name
"nom_de_ma_machine_cliente";

J'ai testé & le résultat est mitigé.

dhclient ne démarre pas automatiquement avec la machine cliente, donc je dois saisir en ligne de commande l'instruction :
/etc/dhclient eth0 => Dans ce cas, le résultat est alors positif. Le client demande une @Ip au serveur DHCP & simultanément, il lui envoie son nom de machine => nslookup .... fonctionne.

Néanmoins, pour que le test soit complet, il serait intéressant que dhclient eth0 soit exécutée automatiquement au démarrage de ma
machine client.

Par contre, je n'y arrive pas. J'ai consulté pas mal de doc mais tous les tests ont échoué.

Avez vous des idées pour que dhclient démarre automatiquement au démarrage de la machine.


Par avance merci si vous pouvez éclairer ma minuscule lanterne.

Je ne me fixe pour dhclient. Je sais qu'il existe aussi dhcpcd & pump.

Si vous avez réussi à configurer & faire démarrer automatiquement l'un de ces 2 clients, outre dhclient, je suis preneur.


Bye.

Gérald.

1 réponse

Pour dhcpcd la syntax pour demarrer est similaire:
/sbin/dhcpcd eth0

et ici c'est aussi facile d'arreter si on veut avec:
/sbin/dhcpcd -k eth0

(Moi j'aime bien c'est methode car ca me donne le control sur ma connection adsl.) Je crois pour pump c'est aussi similaire. Il y a en plus certaines options qu'on peut mettre, par exemple par defaut le client demande aussi les serveurs DNS du serveur DHCP et s'il les obtient il les mettra dans /etc/resolv.conf. Si on ne souhaite pas ca il y a une option pour supprimer ce comportement. Il faut regarder les pages man ("man dhcpcd" etc.).
Bien-entendu pour utiliser les autres il faut les installer. Je ne sais pas pour Mandrake 9.2 mais pour le 10.1 il y a le paquet rpm pour dhcpcd sur les cds et site ftp qu'il suffit d'installer. Si on ne trouve pas on peut toujours installer et compiler a partir des sources, ca marche aussi bien mais c'est un peu moins commode:

Pour dhcpcd c'est ici:
http://www.phystech.com/ftp/dhcpcd-1.3.22-pl4.tar.gz

Pour pump j'ai trouve un tar sur le site de debian
http://ftp.debian.org/debian/pool/main/p/pump/pump_0.8.11.orig.tar.gz
mais la il y a aussi un patch, regarder:
http://packages.debian.org/stable/base/pump.html

En fait les versions sources ont l'avantage de mieux marcher si on n'a pas cree les scripts necessaire pour la distribution, (ils marchent bien ``tous" seule).

Pour le demarrage au boot, c'est d'habitude c'est tres facile. Il faut utiliser l'outil graphique de la distribution pour configuer la connection reseau. On choisit une connection de type reseau local, LAN, et dans le bon sous-menu on choisit entre DHCP et numero IP mis a la main. En plus il y a toujours une option pour demarrage au boot (peut-etre il faut cliquer sur un truc ``options''). Dans le DrakConf de Mandrake 10.1 ca marche comme ca, mais c'est vraiement standard meme dans les vieux Redhat, Suse (avec Yast) et je suppose aussi dans les vieux Mandrake. Il faut seulement lancer le bon utilitaire.
En Mandrake et Rehdat/Fedoroa cet utilitaire cree dans de fichier de genre ifup-eth0, ifdown-eth0, pour demarrer/arreter la connection dans le repertoire: /etc/sysconfig/network-scripts. Une fois ces fichiers existent on peut simplement faire: "ifup eth0" ou "ifdown eth0" pour demarrer/arreter la connection mais normalent c'est fais automatiquement avec la bonne option dans DrakConf.

En general pour le demarrage automatique de services au boot, il y a d'habitude dans /etc/rc.d/init.d/... autres types de scripts de demarrage qui marchent toujours avec les options "start", "stop", "status", "restart" (c.-a-d.: /etc/rc.d/init.d/<nom_script> start etc.)

Si dhclient (ou dhcpcd, ...) ont etes installes par rpm il y a eventuellement un script de meme nom "dhclient" ou "dhcpcd" dans ce repertoire et qui permet aussi le demarrage de la connection. S'il n'y a pas de script "dhclient" (ou "dhcpcd") dans ce cas c'est fait a l'interieur d'un autre script "network" avec la meme syntax. Pour activer/deactiver un tel script au boot il faut mettre le bon lien vers un ou plusieurs des repertoires: /etc/rc.d/rcX.d/... ou X=0,1, ..., 6 represente le runlevel
(si on veut ajouter un service a la main il faut ajouter de liens pour X=3 et 5). Par exemple pour ``ajouter'' dhclient au boot pour le runlevel 5 on pourrait faire:
cd /etc/rc.d/rc5.d/
ln -s ../init.d/dhclient S05dhclient
ln -s ../init.d/dhclient K40dhclient

et de meme pour le runlevel 3 en allant dans /etc/rc.d/rc3.d/...
Ici le "S05" signifie demarrage au boot a la position "05" par rapport aux autres liens et "K40" arreter au shutdown a la position "40". Dans certaines limites on peut choisir ces nombres mais il faut bien veiller de demarrer le dhclient au bon moment, par exemple avant les autres services necessitant reseau et apres autres services necessaire pour lui.
Souvent ces liens existent deja! Donc toujours verifier avec "ls -l" avant de les creer!

Cependant tous ca, ca ne concerne que la methode manuelle qu'on n'utilise d'habitude jamais. C'est pour ca il y a des outils comme DrakConf!
0
Merci pour vos conseils.
Ils m'ont bien aidé car j'ai résolu mon pb.

Ajout de la ligne : DHCP_HOSYNAME = nom_client
dans le fichier /etc/sysconfig/network-scripts/ifcfg-eth0

Au plaisir.
Bye./

Gérald.
0