Les commandes réseau utiles de Linux

Après l’article Les commandes réseau utiles de Windows, autour de GNU/Linux.
On retrouve d’ailleurs des commandes réseaux similaires aux deux systèmes d’exploitation

linux-reseau

Commandes basiques

Ping

Assez similaire à Windows.
La différence est que la commande ping se lance en continue, vous devez appuyer sur CTRL+C pour l’arrêter.
Les paramètres de la commande diffère.
L’option -c permet de limiter le nombre de ping effectué, par exemple :

ping -c 10 www.google.fr

ping_linux

Traceroute

De même traceroute permet d’obtenir le chemin vers une destination avec tous les routeurs et noeuds intermédiaires.
La commande est assez similaire à celle de Windows.

ping_linux

Host

La commande host permet d’effectuer des résolutions DNS

host www.google.fr
www.google.fr has address 216.58.213.131
www.google.fr has IPv6 address 2a00:1450:4007:80f::2003

Celle-ci est assez utile pour tester une résolution DNS rapide.

Commandes avancées

Il s’agit de commandes qui ne sont, en général, pas natif et qu’il faut installer.
Certaines commandes se lancent « en continue » en se mettant à jour pour suivre les connexions établies (mtr, iftop etc).
Il est bien entendu possible des lancer en batch, dans le cadre d’un script par exemple. Rendez-vous dans le man pour trouver l’option.

Dig

Dig est un couteau suisse complet des résolutions DNS.
Dig interroge le serveur DNS présent dans /etc/resolv.conf mais il est tout à fait possible d’interroger un autre serveur, avec l’option @ipduserveur

dig_linux

dig_linux_2

dig affiche aussi le temps de la résolution DNS. On remarquera que la résolution avec Google est plus longue.

l’option -t permet de choisir le type, par exemple pour obtenir les MX d’un domaine :

dig -t mx +short google.fr
10 aspmx.l.google.com.
50 alt4.aspmx.l.google.com.
30 alt2.aspmx.l.google.com.
20 alt1.aspmx.l.google.com.
40 alt3.aspmx.l.google.com.

On peut aussi tracer la résolution DNS avec l’option +trace
etc etc etc

mtr

mtr est un outil qui permet de lancer un traceroute en continue et ainsi de visualiser sur quel noeud, les pertes se font.
C’est un très bon outil de diagnostique.

mtr_linux

iftop

iftop fait partie des commandes « top » mais pour le réseau qui permet de visualiser en temps réel le débit par adresses contactées.
Vous pouvez visualiser le débit en octet mais aussi par nombre de paquets envoyés/reçus, trier par débit, host etc.
C’est un outil idéal si vous souhaitez surveiller le débit par application.

iftop_linux

Programme similaire : pkstatdarkstat ou dstat

iptraf

iptraf est un équivalent plus ancien de iftop.
On retrouve les mêmes options.

iptraf_linux

Programme similaire : bwm-ng (Bandwidth Monitor NG)

netcat / nc

netcat est un outil complet d’utilitaire réseau qui permet d’effectuer pas mal d’opération.
Vous pouvez créer un socket ou vous pouvez y envoyer ce que vous voulez… des fichiers, du son n’importe quoi… il est ensuite possible de rediriger ce dernier sur des périphériques /dev/
Si c’est du son et que vous envoyez sur le périphérique de son, les données seront lues et jouées…
Si vous rediriger vers /bin/bash, on obtient un remote shell …

On peut aussi effectuer des scans de ports.

Pour tester la vitesse entre deux machines

Sur la machine A, on ouvtre un socket sur le port 2222

nc -l -n -p 20000 > /dev/null

et sur la machine B, on s’y connecte de cette manière :

dd if=/dev/zero bs=100M count=1 | nc -q 1 192.168.1.4 20000
 1+0 enregistrements lus
 1+0 enregistrements écrits
 104857600 octets (105 MB) copiés, 8,82765 s, 11,9 MB/s

ou encore…

Sur la machine A :

nc -v -v -l -n -p 2222 >/dev/null

Sur la machine B :

time yes|nc -v -v -n 192.168.1.4 2222 >/dev/null

Laisser tourner quelques secondes et couper avec CTRL+C

On obtient sur la machine B, on obtient le temps

real 0m15.616s
user 0m1.044s
sys 0m0.164s
netcat_tester_vitesse_entre_deux_serveurs_2

et sur la machine A, la connexion avec la quantité de données en octet :

connect to [192.168.1.4] from (UNKNOWN) [192.168.1.10] 54948
 sent 0, rcvd 185842872
netcat_tester_vitesse_entre_deux_serveurs

On divise la quantité en octet par le nombre de second real : 185842872 /15.616 / 1024 / 1024
=> 11,3 Mo/s

Pour mesurer le débit entre deux machines, voir aussi du côté de netperf.

Scan de ports

Pour vérifier si un port est ouvert :

root@Mak-tux:/tmp# nc -vvv -w 10 -z www.malekal.com 80
DNS fwd/rev mismatch: ns206195.ovh.net != telecharger.malekal.com
ns206195.ovh.net [94.23.44.69] 80 (http) open
 sent 0, rcvd 0

On peut alors donner plusieurs ports ou une plage de ports, par exemple : 1024-5000

Nmap

Nmap est un port scan qui permet d’obtenir des informations sur la version de Windows et des applications serveurs qui peuvent tourner.
En autre les versions.
Nmap bien entendu d’autres options

nmap_port_scan_linux

tcpdump

tcpdump permet d’effectuer des captures d’interface, vous pouvez donc capturer les paquets qui passe d’interface.
Avec tout le contenu ou simplement la liste des paquets et appliquer divers filtres, comme par exemple n’avoir que les paquets TCP avec certains flag (SYN, ACK etc).

Pour une utilisation basique et écouter par exemple une interface :

tcpdump -i eth0

ngrep

ngrep fonctionne comme tcpdump à la seul différence qu’il ne va afficher que les strings des paquets.
ngrep est très intéressant pour récupérer le contenu non chiffré.

Print Friendly, PDF & Email
(Visité 1 322 fois, 1 visites ce jour)
Noter cet article

Add Comment