RĂ©seaux Linux đ§ : commandes & diagnostic rĂ©seau
Mise Ă jour :

Le lien vers le PDF: Cheat Sheet Linux Réseau
Pour les administrateurs systĂšmes la capacitĂ© Ă diagnostiquer et rĂ©soudre les problĂšmes de rĂ©seau rapidement et efficacement est important. Linux, Ă©tant lâun des systĂšmes dâexploitation les plus utilisĂ©s pour les serveurs et les infrastructures rĂ©seau, offre une puissante palette dâoutils pour le diagnostic rĂ©seau. Cette documentation vise Ă vous aider Ă maitriser les commandes Linux essentielles pour le diagnostic rĂ©seau.
Connaissances préalables
Avant de plonger dans les commandes spĂ©cifiques de diagnostic rĂ©seau, il est essentiel de comprendre certains concepts et configurations de base. Cette connaissance aidera Ă mieux apprĂ©hender lâutilisation et lâinterprĂ©tation des commandes Linux. Vous devez maitriser les notions suivantes : Ethernet, Internet, modĂ©le OSI, les diffĂ©rents protocoles. La section des fondamentaux des rĂ©seaux informatiques.
Configuration Réseau sous Linux
Vous devez aussi maitriser la configuration réseau des serveurs Linux :
- Comment configurer une adresse IP statique et dynamique
- Comment configurer le routage
- Comment configurer la résolution de nom
- Comment configurer les interfaces réseau.
En maitrisant ces concepts fondamentaux, vous serez mieux préparé pour utiliser efficacement les commandes de diagnostic réseau. Cette base solide est essentielle pour interpréter correctement les résultats de ces commandes et pour mener à bien le processus de diagnostic.
Les commandes linux réseau de base
Dans cette section, nous allons explorer les commandes de base qui sont essentielles pour tout diagnostic de rĂ©seau sous Linux. Chaque commande sera accompagnĂ©e dâune description brĂšve et dâun exemple.
ping
ping est probablement lâoutil de diagnostic rĂ©seau le plus basique. Il utilise
des paquets ICMP pour tester la connectivitĂ© entre lâhĂŽte local et un hĂŽte
distant.
-
Usage typique : Pour vérifier si un hÎte spécifique est accessible.
Exemple :
Terminal window ping google.comCela enverra des paquets ICMP à google.com et affichera les temps de réponse.
ifconfig (Interface Configuration)
La commande ifconfig est utilisé pour configurer, gérer et interroger les
paramÚtres des interfaces réseau.
-
Usage typique : Pour afficher ou configurer les paramĂštres de lâinterface rĂ©seau.
Exemple :
Terminal window ifconfigeth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500inet 192.168.121.15 netmask 255.255.255.0 broadcast 192.168.121.255inet6 fe80::5054:ff:fed6:a313 prefixlen 64 scopeid 0x20<link>ether 52:54:00:d6:a3:13 txqueuelen 1000 (Ethernet)RX packets 324487 bytes 177491133 (177.4 MB)RX errors 0 dropped 64 overruns 0 frame 0TX packets 25649 bytes 9416929 (9.4 MB)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536inet 127.0.0.1 netmask 255.0.0.0loop txqueuelen 1000 (Boucle locale)RX packets 22937 bytes 27399325 (27.3 MB)RX errors 0 dropped 0 overruns 0 frame 0TX packets 22937 bytes 27399325 (27.3 MB)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0Affiche les dĂ©tails des interfaces dont lâadresse IP, le masque de sous-rĂ©seau et lâĂ©tat.
ip
La commande ip est une alternative Ă ifconfig. Elle sert Ă afficher et Ă
manipuler des routes, des adresses réseau, des interfaces, etc.
-
Usage typique : Pour gérer les adresses IP et les routes.
Exemple :
Terminal window `ip addr show`1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft forever2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000link/ether 52:54:00:d6:a3:13 brd ff:ff:ff:ff:ff:ffaltname enp0s5altname ens5inet 192.168.121.15/24 metric 100 brd 192.168.121.255 scope global dynamic eth0valid_lft 3321sec preferred_lft 3321secinet6 fe80::5054:ff:fed6:a313/64 scope linkvalid_lft forever preferred_lft foreverAffiche toutes les interfaces réseau et leurs adresses IP.
route
La commande route est utilisée pour afficher et manipuler la table de routage
IP du noyau.
-
Usage typique : Pour afficher ou modifier les routes de réseau.
Exemple :
Terminal window route -nTable de routage IP du noyauDestination Passerelle Genmask Indic Metric Ref Use Iface0.0.0.0 192.168.121.1 0.0.0.0 UG 100 0 0 eth0192.168.121.0 0.0.0.0 255.255.255.0 U 100 0 0 eth0192.168.121.1 0.0.0.0 255.255.255.255 UH 100 0 0 eth0Affiche la table de routage sans résoudre les noms.
traceroute
La commande traceroute trace la route que prennent les paquets pour atteindre
une destination réseau.
-
Usage typique : Pour diagnostiquer les problÚmes de routage et les délais.4
Exemple :
Terminal window traceroute www.google.comtraceroute to www.google.com (142.250.200.228), 30 hops max, 60 byte packets1 _gateway (192.168.121.1) 0.274 ms 0.156 ms 0.165 ms2 192.168.1.1 (192.168.1.1) 5.738 ms 5.657 ms 5.599 ms3 80.10.234.25 (80.10.234.25) 25.524 ms 25.487 ms 25.452 ms4 lag-10.newsq00z.rbci.orange.net (193.249.215.194) 25.350 ms 25.311 ms 25.255 ms5 ae101-0.nclil101.rbci.orange.net (193.253.91.114) 26.549 ms 25.116 ms 26.429 ms6 ae41-0.nilil101.rbci.orange.net (81.253.129.29) 26.304 ms 17.868 ms 17.694 ms7 * * *8 google-12.gw.opentransit.net (193.251.255.82) 18.843 ms 209.85.148.18 (209.85.148.18) 18.754 ms 72.14.211.234 (72.14.211.234) 18.663 ms9 * * *10 142.251.49.134 (142.251.49.134) 18.318 ms 72.14.237.92 (72.14.237.92) 18.218 ms 142.251.253.34 (142.251.253.34) 18.072 ms11 216.239.35.208 (216.239.35.208) 31.553 ms 37.013 ms 216.239.35.206 (216.239.35.206) 31.380 ms12 192.178.85.28 (192.178.85.28) 31.354 ...
Affiche le chemin emprunté par les paquets pour atteindre google.com.
nslookup (Name Server Lookup)
La commande nslookup est un outil utilisé pour interroger les serveurs DNS
afin dâobtenir des informations sur les enregistrements DNS pour un domaine ou
une adresse IP spécifique.
-
Usage typique : Câest un outil essentiel pour le diagnostic des problĂšmes de DNS.
Exemple :
Terminal window nslookup google.com 09:08:16Server: 127.0.0.53Address: 127.0.0.53#53Non-authoritative answer:Name: google.comAddress: 142.250.179.110Name: google.comAddress: 2a00:1450:4007:81a::200e
Diagnostic : Machine distante injoignable
- Si vous nâarrivez pas Ă vous connecter Ă une machine distante en particulier.
Dans un premier temps, commencez par vérifier si elle est atteignable avec la
commande
ping:
ping [adresse IP ou domaine]Si vous obtenez un message dâerreur, cela ne veut pas dire quâelle est KO. En effet, le traffic ICMP est peut-ĂȘtre bloquĂ© par une rĂšgle de firewall.
Il faut vous connecter sur la console dâadministration de la machine.
- Examiner la configuration IP de lâhĂŽte, y compris les adresses IP, les
masques de sous-réseau et les états des interfaces. Pour cela utilisez soit
la commande
ifconfigsoitip addr:
ifconfig
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10<host> loop txqueuelen 1000 (Boucle locale) RX packets 3719987 bytes 2857636865 (2.8 GB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 3719987 bytes 2857636865 (2.8 GB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
vnet0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet6 fe80::fc54:ff:fed6:a313 prefixlen 64 scopeid 0x20<link> ether fe:54:00:d6:a3:13 txqueuelen 1000 (Ethernet) RX packets 25579 bytes 9403512 (9.4 MB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 323807 bytes 177442958 (177.4 MB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
wlo1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.1.54 netmask 255.255.255.0 broadcast 192.168.1.255 inet6 fe80::5db0:4c3c:fe86:be3e prefixlen 64 scopeid 0x20<link> ether a8:93:4a:cb:e1:63 txqueuelen 1000 (Ethernet) RX packets 35202917 bytes 28665334400 (28.6 GB) RX errors 0 dropped 82942 overruns 0 frame 0 TX packets 24732680 bytes 42163143166 (42.1 GB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0Dans notre cas, lâinterface eth0 possĂšde une adresse IP, un masque rĂ©seau et
une passerelle correctement configurée.
-
Si un lien est dĂ©tectĂ©, envoyez une requĂȘte
pingĂ une source externe pour voir si vous obtenez une rĂ©ponse. Si cela Ă©choue, cela peut indiquer un problĂšme de routage ou un possible problĂšme DNS si un nom dâhĂŽte est utilisĂ©. -
Si le lien nâest pas dĂ©tectĂ© alors, il y a un problĂšme de configuration. Il faudra vĂ©rifier les paramĂštres ou jouer des commandes
ifup,ifdownpour activer lâinterface.
Les commandes réseaux avancées
Cette section couvre des outils plus sophistiqués qui offrent une analyse détaillée et des fonctionnalités étendues pour le diagnostic réseau.
dig (Domain Information Groper)
La commande dig est un outil de requĂȘte DNS qui peut ĂȘtre utilisĂ© pour
interroger les serveurs DNS et obtenir des informations détaillées sur les
enregistrements DNS quâavec la commande nslookup.
-
Usage typique : Pour interroger des informations DNS spécifiques et dépanner les problÚmes de résolution DNS.
Exemple :
Terminal window ; <<>> DiG 9.18.18-0ubuntu0.22.04.1-Ubuntu <<>> google.com;; global options: +cmd;; Got answer:;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 1346;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1;; OPT PSEUDOSECTION:; EDNS: version: 0, flags:; udp: 65494;; QUESTION SECTION:;google.com. IN A;; ANSWER SECTION:google.com. 0 IN A 142.250.178.142;; Query time: 60 msec;; SERVER: 127.0.0.53#53(127.0.0.53) (UDP);; WHEN: Wed Nov 15 09:20:08 CET 2023;; MSG SIZE rcvd: 55Fournit un rapport dĂ©taillĂ© sur lâenregistrement DNS pour google.com.
Les principales options Ă connaĂźtre :
-
SpĂ©cifier le Type dâEnregistrement :
- Syntaxe :
dig [domaine] [type] - Types courants : A (adresse IP), MX (serveurs de messagerie), NS (serveurs de noms), TXT (enregistrements textuels), CNAME (alias de nom), AAAA (adresses IPv6).
- Exemple :
dig google.com MX
- Syntaxe :
-
RequĂȘte Inverse :
- Syntaxe :
dig -x [adresse IP] - Usage : Effectue une recherche inverse pour trouver le nom dâhĂŽte associĂ© Ă une adresse IP.
- Exemple :
dig -x 8.8.8.8
- Syntaxe :
-
Spécifier un Serveur DNS :
- Syntaxe :
dig @[serveur-dns] [domaine] - Usage : Effectue une requĂȘte pour un domaine en utilisant un serveur DNS spĂ©cifique.
- Exemple :
dig @1.1.1.1 google.com
- Syntaxe :
-
Afficher des Statistiques Détaillées :
- Syntaxe :
dig +stats [domaine] - Usage : Fournit des informations dĂ©taillĂ©es sur la requĂȘte et la rĂ©ponse.
- Syntaxe :
-
Affichage Court :
- Syntaxe :
dig +short [domaine] - Usage : Affiche uniquement la réponse, sans informations supplémentaires.
- Syntaxe :
-
RequĂȘtes Multiples :
- Syntaxe :
dig [domaine1] [domaine2] [...] [type] - Usage : Effectue des requĂȘtes simultanĂ©es pour plusieurs domaines.
- Exemple :
dig google.com yahoo.com MX
- Syntaxe :
-
Affichage du Trace de RequĂȘte :
- Syntaxe :
dig +trace [domaine] - Usage : Affiche le chemin de la requĂȘte Ă travers les serveurs DNS, utile pour diagnostiquer les problĂšmes de rĂ©solution DNS.
- Syntaxe :
-
RequĂȘte DNSSEC :
- Syntaxe :
dig +dnssec [domaine] - Usage : Effectue une requĂȘte qui inclut les enregistrements DNSSEC pour la vĂ©rification de la sĂ©curitĂ©.
- Syntaxe :
-
Enregistrement Spécifique :
- Syntaxe :
dig [domaine] [type] +noall +answer - Usage : Affiche seulement la section de rĂ©ponse pour un type dâenregistrement spĂ©cifique.
- Syntaxe :
netcat
netcat (souvent abrĂ©gĂ© en nc) est un outil extrĂȘmement polyvalent connu
comme le âcouteau suisseâ des rĂ©seaux TCP/IP. Il
est utilisé pour tout, de la création de connexions réseau basiques à des
opérations plus avancées comme le port scanning, le transfert de fichiers et
mĂȘme comme serveur ou client simple.
Les principales options Ă connaĂźtre :
- Connexion Client :
nc [adresse hĂŽte] [port]- Connecte
netcatà un hÎte et un port spécifiés. La commande à connaitre pour tester une connexion.
- Mode Ăcoute :
-lnc -l [port]- Met
netcaten mode écoute sur le port spécifié, en attente de connexions entrantes.
- TCP (par défaut) : Utilisé automatiquement pour les connexions.
- UDP :
-unc -u [adresse hĂŽte] [port]- Utilise le protocole UDP au lieu de TCP.
- Envoyer un Fichier :
< [fichier]nc [adresse hÎte] [port] < [fichier]- Envoie un fichier à un hÎte connecté.
- Recevoir un Fichier :
> [fichier]nc -l [port] > [fichier]- Reçoit un fichier dâun hĂŽte connectĂ©.
- Scan de Ports :
nc -z [adresse hĂŽte] [plage de ports]- Teste lâĂ©coute des ports dans la plage spĂ©cifiĂ©e sur lâhĂŽte cible.
- Timeout :
-w [secondes]- Définit un timeout pour la connexion.
- Verbose :
-v- Fournit des informations dĂ©taillĂ©es pendant lâexĂ©cution.
- Mode Keep-Alive :
-o- Garde la connexion ouverte aprÚs la fin de la transmission des données.
- Serveur Simple :
nc -l [port] -e /bin/sh- Lance un serveur simple qui exécute un shell (à utiliser avec prudence pour des raisons de sécurité).
- Client Simple :
nc [adresse hĂŽte] [port] -e /bin/bash- Connecte un shell local Ă un serveur netcat distant.
netcat est un outil incroyablement puissant, mais avec cette puissance vient
la responsabilitĂ©. Il est important de lâutiliser de maniĂšre Ă©thique et lĂ©gale,
car il peut facilement ĂȘtre utilisĂ© pour des activitĂ©s malveillantes comme
lâaccĂšs non autorisĂ© aux systĂšmes et rĂ©seaux.
Plus dâinfos sur netcat.
ss (socket statistics)
La commande ss est une commande utilisée pour obtenir des statistiques sur les
sockets. Elle est souvent utilisée comme remplacement plus rapide et plus riche
en fonctionnalitĂ©s pour lâancienne commande netstat.
Les principales options Ă connaĂźtre :
- Lister toutes les connexions :
ss - Lister les sockets dâĂ©coute :
ss -l - Sockets TCP :
ss -t - Sockets UDP :
ss -u - Sockets RAW :
ss -w - Sockets UNIX :
ss -x - Afficher les Processus :
ss -p - Afficher les Adresses de Ports Numériques :
ss -n - Afficher les Statistiques Détaillées :
ss -i - Sockets en état particulier :
ss state [état]- Par exemple,
ss state establishedpour voir les connexions établies.
- Par exemple,
- Filtrer par adresse ou port :
ss [options] 'sport == :[port]'- Par exemple,
ss -t 'sport == :22'pour filtrer les sockets TCP avec un port source de 22.
- Par exemple,
- Sockets associés à une adresse IP spécifique :
ss [options] dst [adresse IP]- Par exemple,
ss dst 192.168.1.1
- Par exemple,
Vous pouvez combiner plusieurs filtres pour affiner votre recherche.
Par exemple :
ss -tln 'sport == :22'State Recv-Q Send-Q Local Address:Port Peer Address:Port ProcessLISTEN 0 128 0.0.0.0:22 0.0.0.0:*LISTEN 0 128 [::]:22 [::]:*mtr (My Traceroute)
mtr est un outil de diagnostic réseau qui combine les fonctionnalités de
ping et traceroute. Il fournit un rapport en temps réel sur la route que les
paquets prennent pour atteindre une destination réseau.
Les principales options Ă connaĂźtre :
- Lancement Basique :
mtr [destination] - Mode Rapport :
mtr -r [destination]: Fournit un rapport unique aprÚs avoir exécuté les tests pendant un certain temps. - Nombre de Cycles de Rapport :
mtr -c [nombre] [destination]: Spécifie le nombre de cycles de ping pour le rapport. - Mode Split :
mtr -t [destination]- Affiche
mtrdans un mode texte basé sur le terminal.
- Affiche
- Afficher les Adresses IP :
mtr -n [destination]- Affiche les adresses IP au lieu des noms dâhĂŽte.
- Mode Verbose :
mtr -v- Affiche des informations détaillées lors du démarrage.
Par exemple :
mtr -r www.google.com 11:40:51Start: 2023-11-15T11:41:21+0100HOST: internal Loss% Snt Last Avg Best Wrst StDev 1.|-- W16866.mshome.net 0.0% 10 0.9 0.8 0.5 1.2 0.2 2.|-- lan.home 0.0% 10 3.7 4.9 3.6 8.7 1.5 3.|-- 80.10.234.25 0.0% 10 6.8 7.2 5.0 11.6 2.2 4.|-- lag-10.newsq00z.rbci.oran 0.0% 10 9.0 6.4 4.8 9.2 1.5 5.|-- ae101-0.nclil101.rbci.ora 0.0% 10 5.1 6.4 5.1 9.9 1.5 6.|-- ae41-0.nilil101.rbci.oran 0.0% 10 6.1 6.6 5.0 8.8 1.3 7.|-- ??? 100.0 10 0.0 0.0 0.0 0.0 0.0 8.|-- google-11.gw.opentransit. 0.0% 10 14.3 11.6 9.2 16.2 2.2 9.|-- 216.239.40.73 0.0% 10 12.4 10.5 9.2 12.4 1.2 10.|-- 216.239.48.45 0.0% 10 9.7 11.2 9.5 15.0 1.5 11.|-- par10s41-in-f4.1e100.net 0.0% 10 13.0 10.5 9.2 13.0 1.0iptables
La commande iptables est un outil de filtrage de paquets qui permet de
configurer les rĂšgles de pare-feu.
-
Usage typique : Pour gérer les rÚgles de pare-feu qui contrÎlent le trafic entrant et sortant.
Exemple :
Terminal window iptables -L 09:59:29Chain INPUT (policy ACCEPT)target prot opt source destinationLIBVIRT_INP all -- anywhere anywhereChain FORWARD (policy ACCEPT)target prot opt source destinationDOCKER-USER all -- anywhere anywhereDOCKER-ISOLATION-STAGE-1 all -- anywhere anywhereACCEPT all -- anywhere anywhere ctstate RELATED,ESTABLISHEDDOCKER all -- anywhere anywhereACCEPT all -- anywhere anywhereACCEPT all -- anywhere anywhereLIBVIRT_FWX all -- anywhere anywhereLIBVIRT_FWI all -- anywhere anywhereLIBVIRT_FWO all -- anywhere anywhereChain OUTPUT (policy ACCEPT)target prot opt source destinationLIBVIRT_OUT all -- anywhere anywhere...Affiche toutes les rÚgles de filtrage actuelles. La commande à connaitre pour savoir si un flux réseau est autorisé ou pas.
nmap (Network Mapper)
La commande nmap est un outil puissant et polyvalent pour lâexploration de
rĂ©seau et lâaudit de sĂ©curitĂ©. Il est utilisĂ© pour dĂ©couvrir des hĂŽtes et
services sur un réseau informatique, ainsi que pour effectuer une variété
dâanalyses et de diagnostics de rĂ©seau.
Les principales options Ă connaĂźtre :
- Scan Basique :
nmap [adresse IP ou nom d'hÎte]- Lance un scan basique sur la cible spécifiée.
- Scan dâune Plage dâAdresses IP :
nmap [plage IP]- Par exemple,
nmap 192.168.1.1-100pour scanner les adresses de 192.168.1.1 Ă 192.168.1.100.
- Par exemple,
- Ping Scan (sans Scan de Ports) :
nmap -sn [cible]- Détecte les hÎtes actifs sans ouvrir de connexions aux ports de service.
- Liste des HĂŽtes sans Scan :
nmap -sL [cible]- Liste les hĂŽtes dans la plage cible sans les scanner.
- Scan Rapide :
nmap -F [cible]- Scanne uniquement les ports les plus courants.
- Scan de Tous les Ports :
nmap -p- [cible]- Scanne tous les ports (1-65535).
- Spécifier des Ports Spécifiques :
nmap -p [port(s)] [cible]- Par exemple,
nmap -p 80,443 [cible]pour scanner seulement les ports 80 et 443.
- Par exemple,
- Détection de Version de Service :
nmap -sV [cible]- Tente de déterminer les versions des services exécutés sur les ports ouverts.
- DĂ©tection du SystĂšme dâExploitation :
nmap -O [cible]- Tente dâidentifier le systĂšme dâexploitation de la cible.
- Scan Aggressif :
nmap -A [cible]- Active la dĂ©tection dâOS, de version, de script et de traceroute.
- Utiliser des Scripts NSE :
nmap --script=[script] [cible]- Permet dâutiliser des scripts Nmap Scripting Engine pour des diagnostics avancĂ©s.
- Scan SYN Furtif :
nmap -sS [cible]- Utilise des paquets SYN pour un scan furtif (moins susceptible dâĂȘtre enregistrĂ© dans les journaux du serveur).
- Scan UDP :
nmap -sU [cible]- Scanne les ports UDP.
- Définir le Niveau de Verbosité :
nmap -v [niveau] [cible]- Augmente la quantitĂ© dâinformations fournies pendant le scan.
- Enregistrer la Sortie dans un Fichier :
nmap -oN [fichier] [cible]- Enregistre la sortie du scan dans un fichier.
Exemple pour identifier les versions des services sur une hote :
nmap -sV 192.168.1.15 11:51:27Starting Nmap 7.80 ( https://nmap.org ) at 2023-11-15 11:52 CETNmap scan report for re300.home (192.168.1.15)Host is up (0.0081s latency).Not shown: 996 closed portsPORT STATE SERVICE VERSION22/tcp open ssh Dropbear sshd 2011.54 (protocol 2.0)80/tcp open httpPlus dâinfos sur nmap ici
iftop (Interface Top)
iftop est un outil en ligne de commande utilisé pour surveiller le trafic
rĂ©seau en temps rĂ©el. Il fournit une vue dâensemble du trafic entrant et sortant
sur une interface réseau spécifique, avec une mise à jour continue des paires de
sources et de destinations, ainsi que le taux de transfert de données.
Les principales options Ă connaĂźtre :
- Lancer iftop :
iftop- Lance
iftopsur lâinterface par dĂ©faut.
- Lance
- Spécifier une Interface :
iftop -i [interface]- Par exemple,
iftop -i eth0pour surveiller lâinterfaceeth0.
- Par exemple,
- Afficher les Ports :
iftop -P- Affiche les numéros de port pour les connexions.
- Mode de Lignes de Paires de Connexion :
iftop -F [filtre de réseau]- Affiche seulement le trafic de et vers les adresses dans le réseau spécifié.
- Masquer les Noms dâHĂŽtes :
iftop -n- Affiche les adresses IP au lieu des noms dâhĂŽte.
- Masquer les Ports :
iftop -N- Cache les numĂ©ros de port dans lâaffichage.
- Trier par Source :
iftop -o 2s - Trier par Destination :
iftop -o 2d - Trier par Total :
iftop -o 2t- Trie les connexions par source, destination ou le total de trafic.
iftop est un outil pratique pour surveiller lâutilisation de la bande passante
en temps réel, offrant une vue instantanée des connexions les plus actives. Il
est particuliĂšrement utile pour identifier les applications ou services qui
utilisent une quantité disproportionnée de ressources réseau.
iperf
iperf est un outil populaire utilisé pour mesurer la performance du réseau,
principalement la bande passante maximale que votre réseau peut fournir. Il peut
ĂȘtre utilisĂ© pour crĂ©er des flux de donnĂ©es TCP et UDP entre deux hĂŽtes,
permettant ainsi de tester la performance du réseau entre ces points.
Les principales options Ă connaĂźtre :
- Mode Serveur :
iperf -s- Lance
iperfen mode serveur. Cela permet Ă lâordinateur dâĂ©couter les connexions entrantes dâun clientiperf.
- Lance
- Mode Client :
iperf -c [adresse serveur]- Lance
iperfen mode client pour se connecter à un serveuriperfspécifique.
- Lance
- TCP : Par défaut,
iperfutilise le protocole TCP. - UDP :
iperf -u- Utilise le protocole UDP au lieu de TCP pour le test.
- Durée du Test :
iperf -t [secondes]- Spécifie la durée du test en secondes.
- Intervalle de Rapport :
iperf -i [secondes]- Détermine à quelle fréquence les rapports de performance seront générés.
- Taille du Buffer :
iperf -l [taille]- Définit la taille du buffer (ou taille des paquets) pour le test.
- Bande Passante Ă Tester :
iperf -b [bande passante]- Pour UDP, définit la bande passante cible pour le test.
- Nombre de Connexions/Flux ParallĂšles :
iperf -P [nombre]- Lance plusieurs flux de données en parallÚle.
- Mode Bidirectionnel :
iperf -d- Effectue un test bidirectionnel simultané.
- Numéro de Port :
iperf -p [numéro]- Spécifie le numéro de port à utiliser.
- Version de lâinterface de ligne de commande :
iperf --version- Affiche la version dâ
iperfen cours dâutilisation.
- Affiche la version dâ
- Aide :
iperf --help- Affiche les options dâaide pour
iperf.
- Affiche les options dâaide pour
Exemple dâUtilisation :
-
Serveur : Sur une machine, lancez
iperfen mode serveur aveciperf -s. -
Client : Sur une autre machine, connectez-vous au serveur avec la commande suivante :
iperf -c 172.26.164.12------------------------------------------------------------Client connecting to 172.26.164.12, TCP port 5001TCP window size: 2.50 MByte (default)------------------------------------------------------------[ 1] local 172.26.164.12 port 47502 connected with 172.26.164.12 port 5001[ ID] Interval Transfer Bandwidth[ 1] 0.0000-10.0113 sec 88.9 GBytes 76.3 Gbits/secDiagnotic sur un problÚme de port qui ne répond pas
-
Si un service ne répond pas sur une machine distante tester le port avec la commande
nc:Terminal window nc 192.168.1.15 80Si la commande rend la main directe, câest que le port ne rĂ©pond pas.
-
il faut se rendre sur la machine distante et vérifier que le port est en écoute avec la commande
sspar exemple :Terminal window ss -ltStateRecv-Q Send-Q Local Address:Port Peer Address:Port ProcessLISTEN 0 128 0.0.0.0:ssh 0.0.0.0:*LISTEN 0 256 0.0.0.0:http 0.0.0.0:*Si aucune ligne dans le retour, câest que le service nâest pas dĂ©marrĂ©.
Sinon câest que certainement un firewall nâautorise pas le flux. Le firewall de la machine ? VĂ©rifier avec la commande
ipttable.
Des commandes plus complexes
Je vous invite aussi Ă consulter mes documentations sur :
- Nmap, un outil de scan de réseau trÚs complet
- Tcpdump, un outil de capture de trafic réseau.
- Dâautres vont suivre comme wireshark, etc.
Mais avant, je vous conseille de lire mes rappels Ă la loi
Bonnes pratiques
ContrĂŽle de connaissances
Pourquoi ce contrĂŽle ?
Cet contrÎle va vous permettre de valider vos connaissances sur le sujet abordé dans le guide. Il comporte des QCM, des questions vrai/faux et des réponses ouvertes à un mot.
đ Le chronomĂštre commence dĂšs que vous cliquez sur DĂ©marrer le test. Vous devrez terminer lâexamen avant la fin du temps imparti.
đŻ Pour rĂ©ussir, vous devez obtenir au moins 80% de bonnes rĂ©ponses.
đĄ Je ne fournis pas directement les rĂ©ponses aux questions. Cependant, si certaines sont complexes, des pistes dâexplication pourront ĂȘtre proposĂ©es dans le guide ou aprĂšs lâexamen.
Bonne chanceâŻ! đ
Conclusion
Les commandes réseaux sont des outils essentiels pour diagnostiquer et résoudre
les problÚmes de connectivité et de performance réseau. En combinant des outils
comme ping, traceroute, nslookup, dig, netcat, ss, iftop et
iperf, vous pouvez obtenir une vue dâensemble de lâĂ©tat de votre rĂ©seau et
identifier les problĂšmes potentiels. Il est important de maĂźtriser ces outils
pour assurer une gestion efficace de votre rĂ©seau et dâoptimiser les
performances de vos systĂšmes.