Les outils de la couche Accès Réseau
I. Outil arp
On en a déjà parlé précédemment, mais le premier outil pour analyser le réseau sur la couche ACCES RESEAU s’appelle arp. Il permet, à partir d’une adresse MAC (ou adresse Ethernet) de récupérer la correspondance d’adresse IP et de visualiser, le cas échant la table de routage.
Ainsi, pour faire afficher toutes les tables en cours d’utilisation au sein du cache ARP, au niveau de toutes les interfaces, on peut interroger l’outil de la façon suivante :
# arp -a
Si on souhaite visualiser les entrées du cache ARP pour une adresse IP spécifique, il suffit de passer celle-ci en paramètre à la commande :
# arp -a 192.168.1.5
Si, au lieu d’une seule adresse IP, on souhaite visualiser les entrées du cache ARP pour une interface réseau particulier, on peut également passer celle-ci en paramètre, au lieu d’une adresse IP :
# arp –a –N eth0
Il est également possible de modifier la table ARP, en ajoutant une nouvelle entrée grâce à l’option –s :
# arp –s 192.168.1.7 00:17:BC:56:4F :25 eth2
La mention de l’interface est une option. On peut ne pas le préciser et la première interface applicable sera alors utilisée. Enfin, il est possible de supprimer une entrée de la table ARP en utilisant l’option –d :
# arp –d 192.168.1.7
REMARQUE : là aussi, on peut préciser de façon optionnelle l’interface que l’on souhaite voir appliquée.
II. Outils d’analyse de paquets
Parmi la panoplie d’outils mis à notre disposition pour analyser le trafic, il en existe deux qu’il faut toujours avoir à disposition :
- tcpdump
- wireshark
Le premier, travaille en temps réel, en moyennant le temps de traitement utilisé par le programme. On peut ainsi facilement surveiller l’activité réseau d’une machine. De plus, en redirigeant les captures vers un fichier en sortie, les informations ainsi récupérées des paquets capturés, sont alors conservées et utilisables ensuite, par d’autres outils, compatibles avec le format libcap. Le format d’utilisation est le suivant :
# tcpdump –w <Fichier Out> -i <Interface> -s <Fenêtre> -n <Filtre>
La notion de fenêtre permet de limiter l taille des traces capturées. C’est généralement utilisé avec la valeur 0 (pas de limite). L’option –n permet de ne pas remplacer les valeurs numériques par des expressions littérales. Ce genre de filtre permet aussi de déterminer le trafic à capturer. On peut alors utiliser les mots-clés host, port, src ou dst afin de spécifier le filtrage de la capture à réaliser.
Exemple : capture vers un fichier au format libcap des requêtes HTTP d’un serveur 192.168.25.24 :
# tcpdump –w fichier.cap –i eth0 –s0 –n port 80 and host 192.168.25.24
L’outil Wireshark (anciennement appelé Ethereal) est une application de capture de trames, multiplateformes, disponible sur les environnements Windows et/ou Linux. Cet outil s’appuie, lui aussi sur le format libcap. Ainsi, on peut sauvegarder les données capturées par cet outil ou exploiter des captures provenant d’un autre logiciel.
Pour l’initialiser, il faut en premier lieu lancer le programme wireshark et ouvrir le menu Capture afin de sélectionner l’interface sur laquelle on souhaite effectuer ces captures. Lorsque la carte réseau a été repérée (celle à laquelle l’adresse IP est associée), on peut alors déclencher les premières captures en cliquant sur le bouton Start. Pour arrêter la prise de captures, il suffit simplement d’appuyer sur le bouton Stop.
Là où tcpdump s’intéresse vraiment à l’aspect paquets des trames circulant sur le réseau, wireshark est beaucoup plus orienté trafic et qualité de service. L’un n’est pas un clone de l’autre et tous deux ont des fonctions bien spécifiques qui les rendent indispensables.
III. Outils d’analyse d’interface
Au niveau le plus bas du réseau, on peut tout à fait récupérer de l’information concernant l’interface à configurer : connaître la vitesse de l’interface, savoir quel type de négociation (half ou full duplex) ou encore si l’option wake-on-lan est active ou non, on dispose pour cela de l’utilitaire ethtool.
L’outil permet de visualiser les informations disponibles ou activées pour une interface particulière. Mais, on peut aussi modifier ses propriétés de façon interactive.
REMARQUE : l’outil n’est pas nécessairement installé. Si ce n’est pas le cas, on peut l’installer en exécutant l’instruction suivante :
# yum install –y ethtool
Si par exemple, on interroge l’interface enp0s3 (caractéristique des distributions CentOS7), on obtient alors :
Parmi les nombreuses options de l’outil, on remarquera la possibilité de modifier les propriétés suivantes grâce à l’option -s :
- vitesse
- type de négociation :{half, full}
- port type
- auto négociation
Exemple : modifier l’auto négociation pour l’activer sur l’interface
# ethtool –s enp0s3 autoneg on
Ou, on peut également demander à activer l’option Wake-On-Lan dès la détection d’activité sur l’interface :
# ethtool –s enp0s3 wol p
ATTENTION : dans toutes les requêtes passées à la commande ethtool, le nom de l’interface doit toujours suivre l’option concernée : -s pour la modification, ou autres.