Table des matières

Configuration du réseau

Sujet : Résolution des problèmes liés au réseau
Niveau : Facile
Auteur : bofh, révisé par calimarno (17.09.2006)

Introduction

Cette page de documentation décrit les procédures de diagnostic utiles pour isoler et confirmer la nature de votre problème lorsque vous n'arrivez pas à configurer correctement votre réseau. Par exemple, si :

NB : Ce document est indépendant d'une distribution particulière et devrait être utile sur n'importe quelle distribution. Néanmoins, certaines distributions peuvent proposer des manières plus élégantes de résoudre les différents problèmes, qui ne seront pas détaillées ici.

Commandes administrateur

ATTENTION: les commandes indiquées ici sont soit préfixées par un “$” pour une commande normale, soit par un ”#” pour une commande administrateur. Voici une liste de méthodes possibles pour appeler les commandes administrateur:

Votre station ou votre passerelle Linux n'accède pas à Internet

Commencez par tester la connectivité avec la commande ping :

$ ping -c 3 128.178.50.12

(L'adresse indiquée est celle d'un des serveurs web de l'EPFL)

La résolution DNS ne fonctionne pas

Vérifiez que le contenu du fichier /etc/resolv.conf contient au moins une ligne du type :

nameserver <adresse IP>

dont l'adresse IP corresponde à un serveur DNS de votre fournisseur d'accès Internet ou éventuellement à celle de la passerelle par défaut (par exemple si celle-ci est un Modem/Routeur qui fait office de relais DNS.)
NB: Si l'interface réseau est configurée en DHCP, le contenu de /etc/resolv.conf est écrasé automatiquement a chaque attribution d'adresse. Si son contenu est incorrect, le problème se situe dans la configuration du serveur DHCP qui a attribué l'adresse.

Le routage ne fonctionne pas

  1. Quel est le type de matériel réseau utilisé ?
    • Si c'est une carte Ethernet (connecteur RJ-45), connecté a un Hub, un Switch, un Modem avec Bridge/Routeur intégré, l'interface souhaitée est: eth0
    • Si c'est une carte WiFi (802.11a/b/g), le nom peut être eth0, wifi0, wlan0, ra0 ou ath0.
    • Si c'est un modem classique utilisant ppp, l'interface est: ppp0
    • Si vous utilisez un VPN, et que le réseau cesse de fonctionner dès que vous activez le vpn, l'interface est: tun0
    • NB : L'interface lo est une interface virtuelle destinée aux communications locales. Sa présence indique simplement le fonctionnement du sous-système réseau du noyau, pas le fonctionnement d'un quelconque périphérique réseau.
  2. Exécutez la commande (avec les droits superutilisateur):
    # ifconfig -a

L'interface réseau n'est pas reconnue

Assurez-vous de disposer d'une version récente du noyau et/ou mettez à jour votre distribution. Suivant le type de matériel (Carte réseau PCI ou intégrée a la carte mère ou périphérique USB), essayez une des commandes suivantes:

# lspci -v
# lsusb -v
Un module réseau est disponible

Vérifiez la présence de ce module dans le noyau avec la commande

lsmod

L'interface réseau ne fonctionne pas

(NB : Nous supposons ici que l'interface réseau désirée est eth0; si ce n'est pas le cas pour vous, n'oubliez pas de remplacez eth0 par le nom de votre interface.)
Entrez la commande :

# ifconfig eth0

Entrez ensuite la commande:

# route -n

et vérifiez si une ligne commençant par 0.0.0.0 est présente.

  1. Si vous n'avez aucune ligne commençant par 0.0.0.0 : voir Configuration de la passerelle par défaut FIXME
  2. Si vous avez une ligne commençant par 0.0.0.0 mais que la deuxième colonne ne correspond pas à l'adresse IP de votre routeur : votre serveur DHCP local est mal configuré, voir Configuration de la passerelle par défaut FIXME
  3. Si vous avez une ligne commençant par 0.0.0.0 et que la deuxième colonne correspond a l'adresse IP de votre routeur :

voir tester la connectivite de la passerelle

Configurer la couche IP

Chaque interface utilisant le Protocole Internet (IP) doit se voir attribuer une adresse unique. Ces adresse peuvent être attribuées statiquement ou dynamiquement. La plupart des grandes distributions incluent une manière plus élégante de procéder a cette configuration. Les techniques décrites ici fonctionnent sur toutes les distributions et sont utiles pour le dépannage surtout.

Une interface réseau peut être configurée rapidement avec la commande

# ifconfig eth0 <adresse IP> netmask <masque de sous-réseau>

Il faut également spécifier l'adresse de la passerelle par défaut pour les destinations extérieures :

# route add default gw <adresse IP de la passerelle>

et inscrire les adresses des serveurs DNS dans le fichier /etc/resolv.conf:

nameserver <adresse IP du permier serveur DNS>
nameserver <adresse IP du deuxième serveur>
...

Selon votre distribution, utilisez l'une de ces trois commandes:

# dhcpcd
# dhclient
# pump

Il est aussi possible d'activer l'option “IP Kernel Level Autoconfiguration” dans le noyau.

Tester la connectivité de la passerelle

Executez la commande suivante, en remplaçant l'adresse IP par celle de votre passerelle si nécessaire:

$ ping -c 1 192.168.1.1
# arp -a
Configurer la couche 2 WiFi

Si vous utilisez un réseau en mode Infrastructure protégé par WPA, ou que vous utilisez un laptop qui se déplace souvent entre plusieurs réseaux, il faut utiliser wpa_supplicant.

Dans le cas contraire, vous pouvez vous en tirer avec une configuration WiFi statique

Wpa_supplicant

La manière dont wpa_supplicant est lancé varie avec chaque distribution, mais vous pouvez le controler en lancant en root la commande interactive

# wpa_cli

qui permet de voir le statut WPA.

Configuration WiFi statique

La commande

# iwlist scan

permet d'identifier les réseaux disponibles, a condition que leur ESSID ne soit pas caché. Pour se connecter à un réseau ad-hoc, entrez

# iwconfig eth0 mode Ad-Hoc

Pour vous connecter à un réseau en mode infrastructure, entrez

# iwconfig eth0 mode Managed

Sélectionnez l'identifiant du réseau (ESSID) avec

# iwconfig eth0 essid <identifiant du réseau>

Si nécessaire, entrer la clef WEP, soit sous forme hexadécimale (26 caractères pour le WEP-128):

# iwconfig eth0 key 00112233..99

soit sous forme de chaîne de caractères ASCII (13 caractères pour le WEP-128), en la préfixant avec “s:” :

# iwconfig eth0 key s:abcdefghijklm

Pour les réseaux infrastructure, vérifier l'état avec

# iwconfig eth0

Si le champ Access Point affiche autre chose que 00:00:00:00:00:00, l'interface réseau est correctement connectée à la station de base.

Si vous utilisez WEP, et que le champ “Rx invalid crypt” donné par iwconfig est non-nul et augmente avec le temps, il est fort probable que votre clef WEP est incorrecte.

Votre connexion n'est pas partagée

Activez le Forwarding IP:

# echo 1 > /proc/sys/net/ipv4/ip_forward

Vérifiez l'état de la chaîne de Forwarding du firewall:

# iptables -L FORWARD

Le cas échéant, il est possible de la vider entièrement avec

# iptables -F FORWARD

Les stations client doivent être configurées, soit avec des adresses statiques en concordance avec le schéma d'adressage choisi, soit pour utiliser la configuration dynamique par DHCP. Dans ce cas, il est nécessaire d'installer un serveur DHCP (comme dhcpd), généralement sur la passerelle elle-même.

Il ne faut pas oublier de définir l'adresse de la passerelle par défaut sur les autres stations du réseau. Il faut s'assurer que la résolution DNS fonctionne; Pour celà, il est possible d'utiliser les adresses des serveurs DNS du fournisseur d'accès Internet, ou d'installer un serveur DNS sur la passerelle (comme BIND). Ces deux paramètres doivent être ajustés sur toutes les stations si celles-ci sont configurées statiquement, ou dans le fichier de configuration du serveur DHCP (dhcpd.conf, l'emplacement exact peut varier) si les stations utilisent DHCP.

Si le réseau interne utilise une des plages publiques3), se référer à la section suivante. FIXME

Configuration du Masquerading

Les options suivantes doivent être compilées dans le noyau, ou les modules correspondants chargés:

Le masquerading s'active avec:

# iptables -t nat -A POSTROUTING --out-interface <interface de sortie> -j MASQUERADE

“interface de sortie” est le nom de l'interface réseau reliée au réseau public (ppp0, dsl0, etc.)

1) Plages d'adresses publiques : Si le réseau à configurer n'est pas relié à Internet, ou seulement à travers du Masquerading (NAT), il existe trois plages d'adresses IP publiques utilisables sans autorisation préalable. Ces plages sont: a) 10.0.0.0 – 10.255.255.255 (masque par défaut: 255.0.0.0) b) 172.16.0.0 – 172.16.255.255 (masque par défaut: 255.255.0.0) c) 192.168.0.0 - 192.168.255.255 (masque par défaut: 255.255.255.0) La plupart des modems/routeurs configurés pour le masquerading par défaut utilisent la plage 192.168.1.x, avec x=1 pour l'adresse du routeur lui-même.
2) voir la note 1
3) voir la note 1