Index Page précédente Page suivante

IV. MISE EN PLACE DU PROTOCOLE TCP/IP

A. Installation

Tout d'abord, il faut vous assurer que le noyau Linux que vous utilisez a été compilé pour supporter le protocole TCP/IP. C'est le cas de la très grande majorité des noyaux fournis avec les distributions. Dans le cas contraire, il faudra le recompiler. Il faut ensuite installer le package :

   initscripts

Il se trouve sur votre CDROM Linux dans le répertoire /RedHat/RPMS/ (ou /Mandrake/RPMS/ suivant la distribution que vous utilisez). Pour l'installer, placez vous dans le répertoire où se situent ces packages et tapez la commande :

   rpm -i nom_du_package_à_installer

Remarque : si le package est déjà installé, Linux vous le signalera et abandonnera de lui-même l'installation.
 

B. Configuration

Maintenant que votre carte Ethernet est installée, il faut la paramétrer. Dans le répertoire :

/etc/sysconfig/network-scripts

éditez le fichier ifcfg-lo. C'est le fichier de configuration du loopback. Il doit comporter les lignes suivantes :

   DEVICE=lo
   IPADDR=127.0.0.1
   NETMASK=255.0.0.0
   NETWORK=127.0.0.0
   ONBOOT=yes
   NAME=loopback

Editez ensuite, dans le même répertoire, le fichier ifcfg-eth0. C'est le fichier de configuration TCP/IP de votre carte Ethernet. S'il n'existe pas, créez le. Dans le cas d'une carte d'adresse IP 192.168.0.3 et de masque réseau 255.255.255.0, il doit comporter les lignes suivantes :

   DEVICE="eth0"
   IPADDR="192.168.0.3"
   NETMASK="255.255.255.0"
   ONBOOT="yes"
   BOOTPROTO="none"

Une fois cela fait, exécutez la commande ls -l pour vérifier les droits sur ces deux fichiers. Ils doivent être :

   -rwxr-xr-x.

Si ce n'est pas le cas, tapez la commande :

   chmod u+r+w+x,g+r-w+x,o+r-w+x ifcfg-eth0 (ou chmod 755 ifcfg)

Faites la même chose pour le fichier ifcfg-lo si nécessaire. Démarrez ensuite TCP/IP en tapant la commande :

   /etc/rc.d/init.d/network start (ou restart s'il est déjà lancé).

Vérifiez que tout fonctionne en pingant le loopback. Tapez la commande :

   ping 127.0.0.1

Si vous obtenez une suite de réponses qui ressemblent à :

   64 bytes from 127.0.0.1: icmp_seq=0 ttl=255 time=0.2 ms

alors cela fonctionne. En revanche, si vous obtenez une réponse du genre :

   PING 127.0.0.1 (127.0.0.1) : 56 data bytes

et que votre ordinateur reste bloqué (touches CTRL C pour le débloquer), alors il y a un problème. Reprenez toutes les étapes de l'installation depuis le début, vous avez probablement fait une erreur quelque part.

Si le ping du loopback fonctionne, essayez de pinguer votre propre adresse IP (192.168.0.3 dans notre exemple) et enfin une machine qui se trouve dans le même réseau que vous.

Pour que TCP/IP se lance automatiquement à chaque boot, il faut utiliser le programme setup pour la Red Hat 6.x, 7.x ou la Mandrake 6.x. Pour la Mandrake 7.0, il faut utiliser la commande drakxservices. Sélectionnez network, et validez.

Si vous souhaitez donner un nom à votre machine, ainsi qu'un nom de domaine, éditez le fichier :

   /etc/sysconfig/network

et changez la valeur de la variable HOSTNAME :

   NETWORKING=yes
   FORWARD_IPV4=false (ou NOsuivant les versions)
   HOSTNAME=votre_nom_de_machine.votre_nom_de_domaine

Remarque : dans certaines distributions plus rescentes, le fichier network se présente de la façon suivante :

   NETWORKING=yes
   FORWARD_IPV4=false (ou NO suivant les versions)
   HOSTNAME=votre_nom_de_machine
   DOMAINNAME=votre_nom_de_domaine

Lorsque vous redémarrerez votre PC, si vous utilisez une version récente de Linux, vous pourrez vérifier que le fichier /etc/HOSTNAME a lui aussi été modifié et qu'il contient maintenant le nouveau nom de machine.
 

C. Plusieurs adresses IP sur la même carte Ethernet

Linux autorise l'assignation de plusieurs adresses IP sur le même périphérique. Nous allons voir comment donner 2 adresses IP sur une seule carte Ethernet. Allez dans le répertoire /etc/sysconfig/network-scripts/. Faites une copie du fichier ifcfg-eth0 et renommez le ifcfg-eth0:0. Editez le et modifiez le de la façon suivante :

   DEVICE="eth0:0"
   IPADDR="une_nouvelle_adresse_IP"
   NETMASK="un_nouveau_masque_réseau"
   ONBOOT="yes"
   BOOTPROTO="none"

Relancez network. Pinguez votre nouvelle adresse. En principe, il ne doit pas y avoir de problèmes. Tapez la commande ifconfig. Votre nouveau périphérique doit apparaître. Tapez maintenant la commande route, et là, oh surprise : le nouveau périphérique n'apparaît pas ! C'est normal, car Linux, par défaut, ne monte pas automatiquement de route pour les alias. Si vous souhaitez monter automatiquement une route correspondant à cette nouvelle adresse, éditez le fichier /etc/rc.d/init.d/network. Il doit contenir les lignes suivantes :

   # find all the interfaces besides loopback.
   # ignore aliases, alternative configurations, and editor
   # backup files
   interfaces=`ls ifcfg* | egrep -v '(ifcfg-lo|:)' | egrep \
      'ifcfg-[a-z0-9]+$' | \
      sed 's/^ifcfg-//g'`
   interfaces_boot=`ls ifcfg* | egrep -v '(ifcfg-lo|:)' | egrep \
      'ifcfg-[a-z0-9]+$' | xargs egrep -l \
      "ONBOOT=[^n][^o]" | sed 's/^ifcfg-//g'`

Remplacez ces lignes par :

   # find all the interfaces besides loopback.
   # doesn't ignore aliases, alternative configurations, and
   # editor backup files
   interfaces=`ls ifcfg* | egrep -v '(ifcfg-lo)' | egrep \
      'ifcfg-[a-z0-9]+$|ifcfg-[a-z0-9]+:[0-9]+$'| \
      sed 's/^ifcfg-//g'`
   interfaces_boot=`ls ifcfg* | egrep -v '(ifcfg-lo)' | egrep \
      'ifcfg-[a-z0-9]+$|ifcfg-[a-z0-9]+:[0-9]+$' | xargs \
      egrep -l "ONBOOT=[^n][^o]" | sed 's/^ifcfg-//g'`

Relancez network. Tapez route. Si vous n'avez pas fait d'erreur en recopiant le script, vous devez maintenant voir apparaître la nouvelle adresse IP.


Index Page précédente Page suivante