Administration réseau sous Linux/Configuration réseau

Un livre de Wikilivres.
Aller à : navigation, rechercher

Installation de la carte réseau[modifier | modifier le wikicode]

Les cartes réseau sont souvent détectées au démarrage. Si ce n'est pas le cas il faudra charger les modules correspondants.

Pour obtenir la liste des interfaces réseau qui ont été détectées, on peut utiliser la commande

ifconfig -a

Les sections qui commencent par ethX correspondent aux cartes ethernet, où X est le numéro de la carte.

Si la carte n'est pas détectée, il faudra charger le module avec la commande

modprobe <nom du module>

Parmi les modules courants on peut noter : ne2k-pci pour les cartes NE2000, via-rhine, rtl8139...

Les modules disponibles pour votre noyau se trouvent dans /lib/modules/<nom du noyau>/kernel/drivers/net/. La commande suivante affiche les modules réseau disponibles pour le noyau en cours d'utilisation :

ls /lib/modules/`uname -r`/kernel/drivers/net/

Pour connaître le nom du module en fonction du nom commercial d'une carte, une recherche sur internet est souvent la meilleure solution.

Le noyau donne parfois des informations utiles sur les cartes réseau. On peut rechercher les messages contenant "eth0" pour avoir plus d'informations sur la première carte réseau détectée :

dmesg | grep eth0

La commande suivante permet d'afficher les cartes réseaux reliées au bus PCI :

lspci | grep Ethernet

Configuration de l'interface réseau.[modifier | modifier le wikicode]

Une fois votre carte reconnue par le noyau, vous devez au moins préciser l'adresse IP et le masque de sous-réseau de la carte. Dans le cas d'un réseau local connecté à Internet, vous devez aussi ajouter l'adresse IP de la passerelle et l'adresse IP d'un ou plusieurs serveurs DNS.

Adresse IP[modifier | modifier le wikicode]

Pour attribuer une adresse IP à une interface réseau, on peut utiliser la commande ifconfig :

ifconfig <interface> <adresse ip>

Par exemple :

ifconfig eth0 192.168.1.12

Le masque de sous-réseau est déterminé automatiquement en fonction de la classe de l'adresse IP. S'il est différent on peut le spécifier avec l'option netmask :

ifconfig eth0 192.168.1.12 netmask 255.255.255.128

Pour voir si la carte réseau est bien configurée, on peut utiliser la commande :

ifconfig eth0

Passerelle et routage[modifier | modifier le wikicode]

Pour ajouter une passerelle, on peut utiliser la commande route :

route add default gw <adresse ip>

Pour afficher les routes vers les différents réseaux :

route -n

Tester le réseau[modifier | modifier le wikicode]

Pour tester si la carte réseau fonctionne, on peut essayer de communiquer avec une autre machine avec la commande

ping <adresse ip>

La commande ping envoi un paquet à l'adresse IP puis attend que la machine réponde. Elle affiche ensuite le temps qu'a pris toute l'opération, en millisecondes.

Informations sur les interfaces[modifier | modifier le wikicode]

Pour vérifier le statuts de toutes les interfaces on peut utiliser la commande

netstat -a

Nom d'hôte (hostname)[modifier | modifier le wikicode]

Le fichier /etc/hostname contient le nom de la machine. Il suffit de l'éditer pour changer le nom d'hôte de la machine. Cette modification n'est pas prise en compte immédiatement par le système. Elle le sera au prochain démarrage de la machine ou après avoir lancé :

/etc/init.d/hostname.sh

On peut également changer le nom d'hôte avec la commande suivante, mais il ne sera pas conservé au prochain démarrage :

hostname <nom d'hôte>

Configuration automatique au démarrage[modifier | modifier le wikicode]

Le fichier /etc/network/interfaces permet de configurer les cartes réseau de manière permanente.

Par exemple :

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
  address 192.168.1.2
  netmask 255.255.255.0
  gateway 192.168.1.1

Cette configuration initialisera automatiquement les interfaces "lo" et "eth0".

L'interface "lo" est souvent indispensable au système, il est important de l'initialiser. Elle aura systématiquement l'adresse IP 127.0.0.1.

L'interface "eth0" sera configurée avec l'adresse IP 192.168.1.2, le masque de sous réseau 255.255.255.0 et la passerelle 192.168.1.1 (ce paramètre est facultatif).


Si l'interface eth0 doit être configurée automatiquement par un serveur DHCP, il faut indiquer :

auto eth0
iface eth0 inet dhcp

Pour que les modifications de ce fichier soient prises en compte, il faut redémarrer ou utiliser les commandes ifup et ifdown. Par exemple :

ifup eth0

Résolution de noms d'hôte[modifier | modifier le wikicode]

Le fichier /etc/host.conf indique comment les noms doivent être résolus (c'est à dire comment passer d'une adresse IP à un nom, et inversement). Par exemple :

# D'abord traduire avec les serveurs DNS et ensuite avec /etc/hosts.
order bind,hosts

# Il existe des machines avec plusieurs adresses
multi on

# Vérifie l'usurpation d'adresse IP
nospoof on

Serveurs DNS[modifier | modifier le wikicode]

Le fichier /etc/resolv.conf contient les adresses IP des serveurs DNS. Par exemple :

nameserver 208.164.186.1
nameserver 208.164.186.2
search foo

La commande search indique que si un nom de domaine n'est pas trouvé, il faudra essayer en lui ajoutant .foo.

Fichier hosts[modifier | modifier le wikicode]

Le fichier /etc/hosts contient une liste de résolutions de noms (adresses IP et noms de machine). Par exemple:

192.168.105.2 sasa

Ce fichier indique que sasa correspond à l'adresse IP 192.168.105.2, qui sera accessible par cet alias.