Page suivante Page précédente Table des matières

7. Hack 5 : Changement dynamique de votre /etc/hosts

par Michael Driscoll fenris@lightspeed.net

Comme je l'ai dit plus tôt, Linux n'est pas vraiment à l'aise avec les changements d'IP. Par exemple, il arrive que votre talkd ne marche pas avec quand il y a des choses fantaisistes dans votre /etc/hosts. Néanmoins, le hack qui suit s'arrange pour changer votre /etc/hosts avec l'adresse IP qu'on reçoit à la connection.

Pour moi, ça a règlé les problèmes avec "hostname" et "ntalk".

7.1 Ce dont vous avez besoin.

Juste une configuration PPP qui marche.

Ce hack est vraiment facile, tout ce que vous avez à faire c'est de suivre ce qui est écrit et remplir les blancs.

7.2 Création des patrons de hosts

NOTE : D'abord, faite une sauvegarde de votre /etc/hosts, juste au cas ou plus rien ne marcherais (on ne sait jamais :-). Faites juste "cp /etc/hosts /etc/hosts.backup"

D'abord, nous allons faire nos patrons de fichiers hosts. Le premier va s'appeler /etc/hosts-down et va contenir les lignes suivantes :


127.0.0.1 myhostname.mydomain.net localhost myhostname

Substituer vos hostname et nom de domaine dans ces valeurs. Ce fichier est celui qui sera utilisé quand vous serez déconnecté.

Le second fichier appelé /etc/hosts-up contiendra au moins les lignes suivantes :


127.0.0.1 localhost
--IP-- myhostname.mydomain.net myhostname

Comme précédemment, faites les substitutions de vos hostnames et noms de domaine, mais ne touchez pas au "--IP--", car, il servira plus tard d'ancre pour faire un remplacement. Si vous ne comprenez pas, ce n'est pas grave, sachez simplement que vous êtes censés ne pas toucher au "--IP--" là dedans.

Vous pouvez faire un /etc/hosts-up plus gros si vous le voulez, il peut contenir des adresses de machines que vous visitez souvent ou des surnoms que vous voulez leur donner. par exemple, mon /etc/hosts-up ressemble à ça :


127.0.0.1 localhost
--IP-- ulfheim.lightspeed.net ulfheim
136.168.201.9 ultrix6.cs.csubak.edu ultrix ultrix6
128.214.48.39 linux.cs.helsinki.fi linux
152.2.254.81 sunsite.unc.edu sunsite
136.168.1.4 academic.csubak.edu academic
128.214.248.6 nic.funet.fi ftp.funet.fi funet

7.3 Et on retripote ip-up et ip-down

Ajoutez la ligne suivante à /etc/ppp/ip-up :


cat /etc/hosts-up | sed -e s/--IP--/$4/g > /etc/hosts

Ceci met en place le fichier hosts-up grâce à un script sed qui substitue le mot "--IP--" par $4, la variable qui contient notre nouvelle adresse.

Puis ajoutez la ligne suivante à /etc/ppp/ip-down :


cp /etc/hosts-down /etc/hosts

Cela copie le patron hosts-down vers /etc/hosts.


Page suivante Page précédente Table des matières