Ce dossier est une adaptation de l'article portant le même titre et écrit par Jean Gourgin. On peut trouver l'article original sur le site Cours Linux de l'Académie de Créteil (http://www.ac-creteil.fr/reseaux/systemes/linux/outils-tcp-ip/Linux-TCP-outils.html).
Il s'agit de paramétrer un système LINUX pour qu'il soit connecté à un réseau local, et puisse éventuellement accéder au réseau Internet via un accès distant par routeur ou par modem.
Un certain nombre d'éléments matériels (adaptateurs ...) et logiciels (démons lancés ..) doivent être installés, configurés et activés au démarrage de la machine.
- adresse IP de l'adaptateur (on dit aussi interface) réseau (une machine de type passerelle ayant 2 cartes)
Par exemple : 192.168.1.5 se composant de l'adresse du réseau (supposé de classe C) 192.168.1.0 et du numéro de la machine, ici 5 ( de 1 à 254)
- Adresse de 'boucle' : une machine isolée a toujours l'adresse 127.0.0.1, ce qui lui permet de se connecter à elle-même
- masque de sous-réseau (netmask) : ce qui détermine les adresses qu'il est possible d'attribuer aux machines de ce sous-réseau, ici 255.255.255.0
- adresse IP générale du sous-réseau : elle se déduit du masque et d'une adresse d'une machine quelconque du réseau; ici 192.168.1.0
- nom complet : nom station + nom du domaine, ici pc01.misfu.com
Prenons l'exemple d'une machine Linux, installé avec la distribution Mandriva
La configuration réseau comprend 2 parties :
1) Détection de l'adaptateur réseau Ethernet et intégration du pilote dans le noyau
Par exemple pour une carte SMC Elite ....--> module wd.o !
2) Paramètrage réseau TCP/IP: il peut s'effectuer à l'aide de fenêtres de dialogue successives à renseigner.
Par exemple :
adresse ip : 192.168.2.100 à 192.168.2.119
masque de sous-réseau : 255.255.255.0
passerelle par défaut : 192.168.2.245(adresse du routeur, ce pourrait être l'adresse d'un boitier ISB 100)
serveur de nom primaire : 195.98.246.50 (Le DNS du fournisseur d'accès)
nom de domaine : misfu.com
nom de machine : pc01.misfu.com à pc19.misfu.com
2ème serveur de nom : 195.98.246.10
Ces différents paramètres vont affecter divers fichiers de configuration que l'administrateur root doit connaitre et savoir éventuellement modifier 'à la main' ou par l'intermédiaire d'un .
Pour vérifier que l'adaptateur réseau est bien lié à la couche réseau du noyau Linux et activé, passer la commande ifconfig.
$ ifconfig nom-interface
renseigne sur l'interface, son paramétrage et son activité
$ ifconfig lo
renseigne sur l'interface loopback (bouclage local)
$ ifconfig eth0
renseigne sur la première interface Ethernet (donne la configuration irq, adresse E/S)
$ ifconfig nom-interface adresse-IP
assigne cette adresse à l'interface et l'active
Si l'interface réseau n'est pas active, la commande ifconfig eth0 renvoie par exemple :
ne.c : no PCI cards found. Use io=0xNNN valuesfor ISA cards
eth0 : Device not found
Dans ce cas le plus simple est de rajouter l'indication manquante io=0x300, par exemple directement dans le fichier /etc/conf.modules, qui liste les modules chargées par le noyau, en particulier dans le cas d'une carte ISA , il doit contenir des lignes du genre : alias eth0 wd assure la liaison de la 1ère interface réseau au pilote wd.o (pour pseudo carte Western Digital, alias SMC 8013)
options wd io=0x240 irq=5 le paramètre io seul est exigé par le pilote
Sans rebooter ;~) , il suffit de lancer les scripts d'initialisation réseau, (/etc/rc.d/rc3.d/S50inet restart) et la carte est enfin reconnue et liée au noyau !
Ils peuvent être examinés et parcourus en ligne de commande par la commande less.
Ou mieux à l'aide de l'utilitaire Midnight Commander.
Pour le lancer, passer la commande : mc
mode affichage F3 : pour lire sans risquer de modifier (par inadvertance)
mode édition F4 : pour modifier, F2 pour sauvegarder.
pc1.misfu.com
/etc/hosts table de correspondance des adresses IP des machines du sous-réseau et de leur nom d'hôtes
127.0.0.1 localhost
192.168.2.101 pc01.misfu.com pc01
192.168.2.102 pc02.misfu.com pc02
192.168.2.103 pc03.misfu.com pc03
# Fin du fichier
Si on n'utilise pas de serveur de nom DNS local pour connaitre la correspondance entre l'adresse IP de la machine et son nom, il faut lister ainsi toutes les machines du sous-réseau et copier ce fichier /etc/hosts sur toutes les machines du sous-réseau.
Pour des réseaux de taille modeste, il est habituellement recommandé de maintenir cette liste des machines dans /etc/hosts, plutôt que de configurer et de gérer un serveur de noms.
order hosts, bind
multi on
# fin du fichier.
indique que chaque machine cherche d'abord l'adresse de toute machine dans le fichier. /etc/hosts et si la correspondance n'est pas trouvée, chercher par requête dns.
DEVICE = eth0
IPADDR = 192.168.2.101
NETMASK = 255.255.255.0
NETWORK = 192.168.2.0
BROADCAST = 192.168..2.255
ONBOOT = yes
Plus généralement, les interfaces à activer automatiquement au boot sont définies dans les fichiers du répertoire :
/etc/sysconfig/network-scripts/
NETWORKING = yes
FORWARD_IPV4 = no(empêche le transfert automatique des paquets ?)
HOSTNAME= pc01
DOMAINNAME = misfu.com
GATEWAY= 192.168.2.245
#passerelle par défaut, par où chercher si l'adresse IP n'est pas dans le sous-réseau
GATEWAYDEV = eth0
# fin du fichier.
#nom de domaine local de l'ordinateur
domain misfu.com
#adresse du serveur primaire DNS
nameserver 195.98.246.50
#liste de domaines à essayer, si le nom d'hôte ne précise pas son domaine. On peut mettre jusqu'à 3 serveurs de noms
domainsearch wanadoo.fr
# décrit les noms et adresses IP des différents sous-réseaux routables à partir de l'hôte
#modules installés
alias eth0 wd
options wd io=0x240