Académique Documents
Professionnel Documents
Culture Documents
i
Guide de dépannage réseau - Version Linux
Sommaire
• Introduction
• ♦ Conventions et mode d'utilisation du guide
♦ ◊ Fenêtre terminal, environnement
◊ Conventions et usage
◊ Désignation de l'interface réseau
• Diagnostics
• ♦ Est-ce que votre poste est raccordé au réseau ?
♦ Est-ce que la négociation s'est bien passée ? (réseau filaire uniquement)
♦ Est-ce que votre carte Wifi est liée a un Access Point (wifi seulement)
♦ Est-ce que votre poste a une adresse IP configurée ?
♦ Est-ce que votre poste arrive à communiquer avec la passerelle par défaut ?
♦ Est-ce qu'un serveur DNS est configuré ?
♦ Est-ce que vous arrivez à joindre le serveur DNS ?
• Tests du bon fonctionnement réseau
Introduction
Ce guide est destiné à assister l'utilisateur d'un poste de travail sous Linux à diagnostiquer un problème
d'accès au réseau.
Il indique une succession de tests à réaliser qui devraient permettre à l'utilisateur d'établir assez rapidement
l'origine de son problème et :
• soit de le résoudre
• soit de contacter un administrateur système ou réseau avec des éléments précis à lui communiquer.
Ces éléments devraient accélérer le diagnostic final et la résolution du problème par cet administrateur
•
Conventions et mode d'utilisation du guide
La grande majorité des commandes décrites dans ce manuel doit être exécutée dans un shell.
Si vous avez un problème réseau à diagnostiquer, Vous pouvez dès à présent ouvrir une fenêtre shell dans
votre interface graphique.
Chaque distribution et chaque environnement graphique Linux permet d'ouvrir une fenêtre shell. Le tableau
suivant indique comment faire sur différents environnements graphiques :
• Les commandes qui sont suggérées dans la suite de ce document doivent être saisies dans la fenêtre
shell
• Certaines des commandes que ce manuel vous demande de saisir sont relativement complexes.
N'hésitez pas à utiliser le copier/coller en sélectionnant le texte de la commande dans le manuel et en
le collant dans la fenêtre terminal. Cette indication dans le manuel : [CC!] vous indiquera à quel
moment il est fortement recommandé d'utiliser le copier/coller
• Les commandes indiquées dans le manuel sont préfixées par le caractère $.
Ce caractère symbolise le prompt qui est affiché par le terminal.
Dans le manuel cela sert à distinguer les commandes que vous devez saisir du résultat de ces
commandes.
Ne saisissez jamais le caractère $ en début de ligne lorsque vous recopierez les commandes décrites
dans le manuel.
Si une ligne de commande se termine par le caractère \ cela veut dire que vous devez aussi copier la
ligne suivante, elle fait partie de la commande.
L'interpréteur utilisé dans le manuel est bash. Afin d'être sûr que vous utilisez l'interpréteur bash,
entrez dès à présent la commande suivante dans la fenêtre shell :
$ bash
• Votre environnement doit vous permettre d'utiliser les commandes décrites dans le manuel
• Exécutez la commande suivante [CC!]
$ export PATH=/sbin:/usr/bin:/bin:/usr/local/guide:$PATH
Conventions et usage
• Les tests sont donné par le manuel de façon progressive. L'approche choisie est celle d'une analyse
bottom-up, en commençant à tester les couches basses du réseau pour monter ensuite vers les couches
applicatives de façon à déterminer exactement l'origine du problème.
Quand le manuel suggère à l'étape N une analyse en cas d'échec d'un test, il suppose que les tests des
étapes précédentes ont étés réalisés.
• Si in fine vous ne pouvez pas résoudre votre problème, vous aurez sous les yeux tous les éléments qui
vous permettront de donner des informations pertinentes à l'administrateur du site et donc de faciliter
sa tâche (et par conséquence de résoudre le problème que vous rencontrez plus rapidement)
• Dans certains cas de figure, ce manuel vous indiquera que le problème ne peut pas être résolu par
vous. Dans ce cas, il vous recommandera de contacter un administrateur. L'administrateur à contacter
peut-être différent en fonction du type de problème que vous rencontrez :
♦ S'il s'agit d'un problème avec le réseau du site, le manuel vous indiquera de contacter
l'administrateur du site. Il s'agit d'un terme générique qui désigne la ou les personnes
responsables du réseau sur le site. Une annexe à ce manuel indique les contacts pour les sites
les plus connus.
♦ S'il s'agit d'un problème sur votre poste de travail, c'est plutôt une équipe système que vous
devez contacter. En fonction du site sur lequel vous vous trouvez (site INRIA/non INRIA)
vous pourrez soit faire appel aux équipes locales, soit vous devrez contacter les équipes
systèmes de votre site d'origine. Une annexe à ce manuel indique les contacts systèmes pour
les sites les plus connus.
• Dans certains cas, le manuel vous demandera de vérifier si le problème réseau que vous rencontriez
n'est pas résolu. Le manuel ne peut pas vous indiquer quels tests vous pouvez faire puisqu'il ne sait
pas exactement quel était votre problème réseau. Toutefois, il propose quelques liens qui devraient
vous permettre de tester le comportement réseau de votre poste de travail
La plupart des commandes indiquées dans le manuel s'appliquent quelque soit le mode de raccordement au
réseau (filaire ou sans-fil).
Les commandes du manuel utilisent toutes l'interface eth0. Cette interface est probablement celle que vous
utilisez si votre poste est connecté au réseau avec un câble.
Si ce n'est pas le cas, dans la suite du document, il faut remplacer eth0 par le nom de l'interface physique que
votre poste utilise.
Si vous ne savez pas quel nom d'interface est utilisé par votre système (surtout dans le cas d'une connexion
sans-fil), lisez le tableau suivant.
Pour savoir si elle existe, sur votre poste, entrez la commande suivante :
$ ifconfig wlan0
C'est que l'interface sans-fil n'est probablement pas connue par votre système sous le nom
wlan0.
Dans ce cas, elle est peut-être connue sous le nom eth1 (voir ci-dessous).
Conventions et usage 3
Portail ccmi - Aide au diagnostic réseau pour linux
$ ifconfig wlan0
wlan0 Link encap:Ethernet HWaddr 00:90:4B:78:5A:99
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:908019 errors:0 dropped:0 overruns:0 frame:0
TX packets:538524 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1049856700 (1001.2 MiB) TX bytes:35922503 (34.2 MiB)
Interrupt:5 Memory:fafec000-fafee000
cela veut dire que l'interface wlan0 existe sur votre système et qu'elle est actuellement active.
eth1 L'interface eth1 si elle existe, peut-être soit une deuxième interface réseau filaire,
soit une carte réseau sans-fil.
$ ifconfig eth1
$ ifconfig eth1
eth1 Link encap:Ethernet HWaddr 00:02:2D:02:39:7C
inet6 addr: fe80::202:2dff:fe02:397c/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:15553 errors:0 dropped:0 overruns:0 frame:0
TX packets:3 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1822195 (1.7 MiB) TX bytes:372 (372.0 b)
Interrupt:3 Base address:0x100
Cela veut dire qu'une interface eth1 est connue sur votre système.
Pour vérifier si l'interface eth1 est une interface sans-fil, exécutez la commande suivante [CC!] :
Si vous voyez les caractères 802.11, alors eth1 est une carte Wifi.
Si cette commande ne vous permet pas de déterminer quelle est votre interface Wifi,
tentez de rechercher la carte wifi avec les tests suivants.
Recherche
d'une carte • Si aucun des identifiants déjà testé actuellement n'existe
Wifi • Si aucune carte Wifi n'est insérée dans votre poste
n'utilisant
aucun
de ces Vérifiez si la carte est vue par votre système.
identifiants
[1]
Si la commande ne donne aucun résultat, il semblerait que la carte Wifi ne soit pas vue
contactez l'administrateur système.
Si la commande affiche un résultat du type de celui affiché en [1], cela signifie que la carte Wifi
est reconnue par le système.
Vérifiez si le nom qui lui est affecté contient la chaîne de caractères wlan en tapant la
commande suivante [CC!]:
[2]
Si le résultat ressemble à ce qui est affiché en [2], cela veut dire que votre carte wifi est vue avec
le nom d'interface qui est affiché
en première colonne.
Si rien ne s'affiche, c'est que votre carte wifi n'est pas vue avec un nom wlanX.
Dans ce cas essayez cette dernière commande afin d'essayer de trouver le nom sous lequel la
carte wifi peut-être connue du système [CC!] :
Si une ligne s'affiche, le nom d'interface indiqué est celui de votre carte Wifi.
Diagnostics
À ce stade vous devez être dans la configuration suivante :
Rappel : Les commandes du manuel utilisent toutes l'interface eth0. dans la suite du document, il faut
éventuellement remplacer eth0 par le nom de l'interface physique que votre poste utilise.
ifconfig eth0
$ ifconfig eth0
Nous allons trouver beaucoup d'informations très importantes à l'aide de cette commande.
Dans l'exemple [3], considérons la ligne qui donne l'état de la connexion physique pour la carte eth0 :
[3]
$ ifconfig eth0
Diagnostics 6
Portail ccmi - Aide au diagnostic réseau pour linux
L'information importante ici est la ligne contenant le mot UP qui indique que la carte est raccordée au
réseau (le caractère * affiché n'est pas affiché dans la réalité). Si vous voyez UP sur votre poste pour
la carte eth0 votre poste est physiquement raccordé au réseau, vous pouvez passer au test suivant.
Quand vous raccordez physiquement votre machine sur le réseau filaire, sa carte réseau négocie avec
les équipements réseaux la façon dont vont se faire les échanges :
La commande mii-tool peut-être utilisée pour connaître l'état actuel de la connexion. Cette commande
ne peut-être exécutée que par l'administrateur de la machine. Il faut donc que vous disposiez d'un
compte disposant de privilèges d'administrateur :
su
Puis entrez la commande [4], vous verrez s'afficher un résultat dans un format correspondant à l'une
des deux formes ci-dessous. La présence du mot negociated vous permettant de savoir à laquelle des
deux formes vous avez affaire.
Les actions que vous devez accomplir pour savoir si votre problème réseau vient d'un problème de
négociation de la liaison sont différentes en fonction du résultat de la commande mii-tool.
Cela veut dire que les propriétés de la connexion ont été négociées avec
l'équipement réseau.
Si vous voyez le message link ok et si la valeur négociée n'est pas l'un des deux
ci-dessus,
la négociation s'est très probablement bien passée, vous pouvez passer au test
suivant.
♦ Si vous ne voyez pas le mot negociated dans le résultat, suivez les instructions dans le cadre
ci-après :
Liaison réseau en # mii-tool eth0
mode forcé eth0: 100 Mbit, full duplex, link ok
Ces valeurs sont peut-être valides dans certains cas (mais souvent liées
à des postes fixes), mais peuvent aussi poser des problèmes.
mii-tool eth0
3. Est-ce que votre carte Wifi est liée a un Access Point (wifi seulement)
Est-ce que votre carte Wifi est liée a un Access Point (wifi seulement) 9
Portail ccmi - Aide au diagnostic réseau pour linux
Essayez de repérer l'AP qui affiche la meilleure qualité. Si plusieurs APs affichent un niveau de
qualité semblable choisissez plutôt un AP utilisant le protocole IEEE 802.11g ou IEEE 802.11a, ces
protocoles ont des débits théorique de 54Mbits/s alors que le standard IEEE 802.11b propose un débit
théorique de 11Mbits/s.
La présence de la ligne Encryption key:on indique qu'un cryptage WEP est utilisé sur un canal. Pour
connaître le mot de passe à utiliser, veuillez contacter un administrateur réseau du site.
Une fois que vous aurez choisi un AP, utilisez la commande iwconfig pour accrocher votre carte Wifi
à cet AP. Par exemple si l'AP choisi utilise le canal 2 :
Si l'AP utilise un codage WEP de 128 bits, avec une clé hexadécimale :
Si l'AP utilise un codage WEP de 128 bits, avec une clé de type chaîne :
Si votre poste n'obtient pas d'adresse IP, vérifiez si le canal que vous avez sélectionné n'utilise pas un
Est-ce que votre carte Wifi est liée a un Access Point (wifi seulement) 10
Portail ccmi - Aide au diagnostic réseau pour linux
cryptage WEP.
Vérifiez si vous avez utilisé le bon mot de passe. Si tout est correct et que soit votre PC ne capte
aucune borne, soit il n'arrive pas à s'associer à une borne essayez de recharger le pilote.
Dans l'exemple ci-dessus, le nom du driver est ipw3945, lancez les commandes suivantes pour
relancer le pilote :
Une fois que vous aurez rechargé le driver, recommencez ces tests à partir de la commande [5-1].
3. Est-ce que votre poste a une adresse IP configurée ?
Pour déterminer si votre poste a obtenu une adresse IP d'un serveur DHCP (ou si une adresse IP lui est
affectée en dur), nous allons utiliser à nouveau la commande ifconfig.
Si la ligne indiquée ici par le caractère * (pas affiché dans la réalité) et commençant par la chaîne inet
addr existe, cela veut dire qu'il a bien reçu une adresse réseau (indiquée ici par 193.51.208.194).
Dans ce cas, Passez au test suivant. Attention de ne pas confondre avec la ligne commençant par le
mot inet6. Cette ligne n'indique pas que votre poste a reçu une adresse IP valide.
S'il n'y a pas de ligne commençant par inet, cela veut dire que votre poste n'a pas d'adresse IP de
configurée et n'en a pas reçu du réseau.
collisions:0 txqueuelen:1000
RX bytes:3079794 (2.9 MiB) TX bytes:372 (372.0 b)
Interrupt:3 Base address:0x100
On essaie d'obtenir une adresse réseau avec la commande dhclient, le poste de travail fait une requête
sur le réseau auquel l'interface eth0 est connectée afin de trouver un serveur DHCP qui accepte de lui
attribuer une adresse :
On lance la commande dhclient avec comme argument le nom de l'interface réseau, ici eth0. On voit
dans l'exemple suivant qu'après avoir interrogé le réseau, un serveur DHCP a accepté d'attribuer une
adresse IP au poste de travail
$ dhclient eth0
Internet Systems Consortium DHCP Client V3.0.1
Copyright 2004 Internet Systems Consortium.
All rights reserved.
Afin de vérifier si on a obtenu une adresse ou non, on utilise de nouveau la commande ifconfig tel
qu'indiqué en [5] :
Dans l'exemple [5] l'interface a obtenu l'adresse 193.51.208.194. Si votre poste obtient une adresse IP
du réseau alors qu'il n'en avait pas, vérifiez si maintenant votre poste a un comportement réseau
correct. Si ce n'est pas le cas, passez au test suivant.
Si votre machine n'obtient aucune adresse IP par ce biais, contactez l'administrateur du site.
4.
Est-ce que votre poste arrive à communiquer avec la passerelle par
défaut ?
Votre machine est donc connectée au réseau et a obtenu une adresse IP (a une adresse configurée).
Vérifiez maintenant si une passerelle par défaut est configurée et si votre poste peut communiquer
avec cette passerelle.
Est-ce que votre poste arrive à communiquer avec la passerelle par défaut ? 12
Portail ccmi - Aide au diagnostic réseau pour linux
[6]
♦ Si aucune ligne ne s'affiche, cela veut dire que le poste de travail n'a pas reçu l'adresse de la
passerelle par défaut du serveur DHCP.
Dans ce cas, contactez l'administrateur du site pour connaître l'adresse de la passerelle par
défaut.
Une fois que la passerelle est connue, vous pouvez la configurer avec la commande suivante :
Où ggg.ggg.ggg.ggg est l'adresse de la passerelle qui vous aura été communiqué. Vérifiez que
la commande a eu l'effet escompté avec la commande [6], puis vérifiez ensuite le bon
fonctionnement de votre poste sur le réseau.
Si une ligne s'affiche suite à la commande [6] indiquée, elle indique l'adresse de la passerelle par
défaut. Il faut maintenant vérifier que votre poste est bien capable de joindre cette passerelle.
Pour vérifier cela, tapez la commande ci-dessus et attendez 2 à 3 secondes avant de voir le résultat
s'afficher [CC!]:
Le résultat indique le pourcentage de pertes. Ce pourcentage pour la passerelle par défaut devrait être
de 0%. Si un paquet seulement a été perdu (20% de pertes), lancez de nouveau cette commande à
plusieurs reprise. Si plus aucun paquet n'est perdu, la perte du tout premier paquet n'est pas
significative.
Si ce n'est pas le cas (100% de pertes ou taux de perte différent de 0% après quelques essais),
contactez l'administrateur du site. Attention ! Chez certains opérateurs d'accès Internet, la passerelle
par défaut filtre le protocole ICMP (utilisé par la commande ping ci-dessus) mais pas les autres
protocoles. Un résultat négatif à ce test n'est pas forcément rédhibitoire, vous pouvez quand même
essayer le test suivant.
5.
Est-ce qu'un serveur DNS est configuré ?
$ cat /etc/resolv.conf
; generated by /sbin/dhclient-script
search inria.fr
nameserver 138.96.0.11
nameserver 138.96.0.10
Ne tenez pas compte des lignes commençant par le caractère ; ce sont des commentaires.
Vous devriez avoir au minimum une ligne commançant par search et une ligne commençant par
nameserver.
Si ce n'est pas le cas, cela peut-être un problème. Attention certains opérateurs d'accès à Internet ne
renseignent pas la ligne search. L'absence de cette ligne n'est pas forcément une erreur, vous pouvez
quand même passer au test suivant.
Entrez la commande suivante afin de tester les serveurs DNS qui sont configurés dans le fichier
/etc/resolv.conf [CC!] :
Le résultat devrait être semblable à celui indiqué ci-dessus pour chacun des serveurs.
Si une des lignes affiche NOT OK cela ne signifie pas en soit qu'il y a une erreur. Certains prestataires
filtrent le protocole ICMP utilisé par la commande ping (utilisée dans le test ci-dessus). Essayez dans
tous les cas la commande suivante.
Si les lignes affichées ont toutes OK comme indication, cela veut dire que les serveurs DNS sont
joignables à partir de votre poste. Il faut maintenant vérifier qu'ils fonctionnent et répondent aux
requêtes.
Entrez la commande suivante afin de tester le fonctionnement des serveurs DNS [CC!] :
Le résultat devrait ressembler à ce qui est indiqué ci-dessus. Si une ligne indique NOT OK contactez
l'administrateur du site. Si le test précédent affichait NOT OK pour le même serveur, signalez-le à
l'administrateur de site.
Services Web
• Serveur de Sophia
• Serveur du LORIA
• Serveur de Rocquencourt
• Serveur de Montbonnot
• Serveur de Futurs
• Google
• Service Public
Messagerie
Vous pouvez tester l'accessibilité du serveur de messagerie dont vous dépendez. En fonction de de votre UR
d'origine trouvez dans le tableau ci-dessous un nom de serveur de courrier que vous pouvez utliser pour le
test. Attention, ces tests supposent que vous avez préalablement testé la connectivité réseau de votre poste de
travail notamment que vous disposez d'un service DNS fonctionnel.
UR Nom du serveur
Sophia sophia.inria.fr
Rocquencourt concorde.inria.fr
Loria mailironport.loria.fr
Montbonnot mx-serv.inrialpes.fr
Irisa mx-serv.inrialpes.fr
Labri iona.labri.fr
Une fois que vous avez repéré le nom du serveur DNS utilisé pour votre UR, vous pouvez tester votre accès à
ce serveur avec les commandes suivantes
• nom_du_serveur est le nom de la machine que vous avez repéré dans le tableau ci-dessus)
• nom_de_mon_poste est le résultat de la commande
hostname --fqdn
Entrez d'abord la commande telnet, puis les commandes indiquées ci-dessous en caractères gras.
$ telnet nom_du_serveur 25
Trying xx.xx.xx.xx...
Connected to nom_du_serveur.
Escape character is '^]'.
220 nom_du_serveur ESMTP Wed, 29 Mar 2006 16:45:26 +0200
helo nom_de_mon_poste
250 nom_du_serveur Hello nom_de_mon_poste [yy.yy.yy.yy], pleased to meet you
quit
221 2.0.0 nom_du_serveur closing connection
Connection closed by foreign host.
• Si tout ce déroule comme indiqué ci-dessus, cela signifie que vous disposez de la connectivité à votre
serveur de messagerie
• Si après avoir saisi la commande telnet, le serveur reste sur la ligne Trying..., cela signifie que vous
n'avez pas la connectivité avec le serveur de messagerie dont vous dépendez. Contactez
l'administrateur de site en lui indiquant tous les détails de vos commandes.
• Si la commande telnet vous renvoie une ligne de type Connection refused, cela veut dire que vous
disposez de la connectivité jusqu'au serveur mais que le service est arrêté sur celui-ci. Dans ce cas
Contactez l'administrateur système de votre site d'origine
Fichiers attachés
(guide-linux.pdf
437.00 Kb)
Créé par dbenza
Dernière modification 26-03-2007 09:41
Messagerie 16