Comment vérifier si un protocole réseau est activé sous Linux

LinuxLinuxBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce laboratoire, vous apprendrez à vérifier si un protocole réseau est activé et utilisé activement sous Linux. Nous allons explorer trois méthodes différentes pour y parvenir.

Tout d'abord, vous utiliserez la commande netstat -s pour afficher des statistiques détaillées pour divers protocoles réseau tels que TCP, UDP et ICMP, ce qui vous permettra d'obtenir des informations sur leur activité. Ensuite, vous examinerez le répertoire /proc/net, qui expose les informations réseau du noyau, pour vérifier la présence et l'état des protocoles. Enfin, vous utiliserez la commande ss -s, une alternative moderne à netstat, pour examiner l'utilisation et les statistiques des protocoles. À la fin de ce laboratoire, vous disposerez des compétences pratiques nécessaires pour diagnostiquer l'activité des protocoles réseau sur votre système Linux.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/BasicFileOperationsGroup(["Basic File Operations"]) linux(("Linux")) -.-> linux/RemoteAccessandNetworkingGroup(["Remote Access and Networking"]) linux/BasicFileOperationsGroup -.-> linux/ls("Content Listing") linux/BasicFileOperationsGroup -.-> linux/cat("File Concatenating") linux/RemoteAccessandNetworkingGroup -.-> linux/netstat("Network Monitoring") subgraph Lab Skills linux/ls -.-> lab-558740{{"Comment vérifier si un protocole réseau est activé sous Linux"}} linux/cat -.-> lab-558740{{"Comment vérifier si un protocole réseau est activé sous Linux"}} linux/netstat -.-> lab-558740{{"Comment vérifier si un protocole réseau est activé sous Linux"}} end

Vérifier les statistiques des protocoles avec netstat -s

Dans cette étape, nous allons explorer comment vérifier les statistiques des protocoles réseau à l'aide de la commande netstat. netstat est un utilitaire en ligne de commande qui affiche les connexions réseau, les tables de routage, les statistiques des interfaces, les connexions de masquage et les appartenances multicast.

L'option -s avec netstat affiche les statistiques par protocole. Cela peut être très utile pour comprendre l'activité réseau sur votre système et diagnostiquer les éventuels problèmes réseau.

Ouvrez votre terminal s'il n'est pas déjà ouvert. Vous pouvez le faire en cliquant sur l'icône Xfce Terminal sur le côté gauche de votre bureau.

Maintenant, tapez la commande suivante et appuyez sur Entrée :

netstat -s

Vous verrez une sortie similaire à celle-ci (les nombres exacts et les protocoles peuvent varier en fonction de l'activité de votre système) :

Ip:
    Forwarding: 1
    ... (diverses statistiques IP)
Icmp:
    ... (diverses statistiques ICMP)
IcmpMsg:
    ... (diverses statistiques de messages ICMP)
Tcp:
    Active connections openings: 123
    Passive connection openings: 45
    ... (diverses statistiques TCP)
Udp:
    InDatagrams: 678
    OutDatagrams: 901
    ... (diverses statistiques UDP)
UdpLite:
    ... (diverses statistiques UDPLite)

Cette sortie fournit un résumé des statistiques pour divers protocoles réseau tels que IP, ICMP, TCP et UDP. Par exemple, dans la section Tcp:, vous pouvez voir le nombre d'ouvertures de connexions actives et passives. Dans la section Udp:, vous pouvez voir le nombre de datagrammes entrants et sortants.

Comprendre ces statistiques peut vous aider à identifier si un protocole particulier connaît un trafic élevé ou des erreurs.

Prenez un moment pour examiner la sortie et voir quels protocoles sont répertoriés et quelles sortes de statistiques sont fournies pour chacun.

Cliquez sur Continuer pour passer à l'étape suivante.

Vérifier les protocoles dans /proc/net

Dans l'étape précédente, nous avons utilisé netstat -s pour afficher les statistiques des protocoles. Maintenant, regardons d'où provient une partie de ces informations dans le système de fichiers Linux.

Linux propose un système de fichiers virtuel appelé /proc qui contient des informations sur les processus et des détails de configuration du système. À l'intérieur de /proc, le répertoire /proc/net contient des informations sur la pile réseau.

Nous pouvons utiliser la commande ls pour lister le contenu du répertoire /proc/net. Tapez la commande suivante dans votre terminal et appuyez sur Entrée :

ls /proc/net

Vous verrez une liste de fichiers et de répertoires, qui représentent diverses informations liées au réseau. La sortie ressemblera à ceci :

arp         dev_mcast  ip_mr_vif  netlink  psched  tcp6   udp6
dev         if_inet6   ip_tables  netstat  rpc     udplite  unix
dev_snmp6   ip_mr_cache  ipv6_route  packet   route   udplite6

Beaucoup de ces fichiers contiennent des informations détaillées sur les protocoles et les connexions réseau. Par exemple :

  • tcp : Contient des informations sur les connexions TCP actives.
  • udp : Contient des informations sur les connexions UDP actives.
  • netstat : Contient diverses statistiques réseau, similaires à celles affichées par netstat -s.

Voyons le contenu du fichier netstat dans /proc/net. Nous pouvons utiliser la commande cat pour afficher le contenu d'un fichier.

Tapez la commande suivante et appuyez sur Entrée :

cat /proc/net/netstat

La sortie sera un dump brut de statistiques réseau. Cela peut sembler un peu déroutant au premier abord, car il n'est pas formaté pour être facilement lisible par un humain comme la sortie de netstat -s.

TcpExt: SyncookiesSent SyncookiesRecv SyncookiesFailed EmbryonicRsts PruneCalled RcvPruned OfoPruned ...
IpExt: InNoRoutes InTruncatedPkts InEZHeadroomOutMcasts InBcastPktsOutBcastPkts InOctets OutOctets ...

Ce fichier contient les données sous-jacentes que des outils comme netstat -s traitent et formatent. Explorer les fichiers dans /proc/net peut être utile pour la résolution avancée de problèmes réseau et pour comprendre l'état du réseau du noyau.

Pour l'instant, simplement observer la présence et le contenu de ces fichiers suffit pour comprendre que les statistiques réseau sont exposées via le système de fichiers /proc.

Cliquez sur Continuer pour passer à l'étape suivante.

Inspecter l'utilisation des protocoles avec ss -s

Dans cette étape, nous allons utiliser la commande ss, qui est un utilitaire pour examiner les sockets. Elle est souvent considérée comme un remplacement de netstat car elle peut afficher plus d'informations sur TCP et sur l'état des connexions.

De même que netstat, la commande ss dispose également d'une option -s pour afficher des statistiques sommaires pour différents types de sockets. Cela vous permet d'obtenir rapidement un aperçu du nombre de connexions ouvertes et de sockets pour différents protocoles.

Ouvrez votre terminal s'il n'est pas déjà ouvert.

Tapez la commande suivante et appuyez sur Entrée :

ss -s

Vous verrez une sortie qui résume le nombre de sockets dans différents états et pour différents protocoles. La sortie pourrait ressembler à ceci :

Total: 1234 (kernel 5678)
TCP:   90 (estab 50, closed 20, orphaned 5, synrecv 3, timewait 10, ...)
UDP:   15
RAW:   0
UNK:   0

TCP:
ESTAB      50
TIME-WAIT  10
... (autres états TCP)

Analysons la sortie :

  • Total : Affiche le nombre total de sockets.
  • TCP : Fournit un résumé des sockets TCP, y compris le nombre total et le décompte pour différents états tels que estab (établi), closed (fermé), timewait (en attente de temps), etc.
  • UDP : Affiche le nombre total de sockets UDP.
  • RAW : Affiche le nombre total de sockets bruts (raw sockets).
  • UNK : Affiche le nombre de types de sockets inconnus.

En dessous des lignes de résumé, ss -s fournit souvent un détail plus précis des états TCP.

En comparant les sorties de netstat -s et ss -s, vous pourriez remarquer que ss -s se concentre plus sur les états des sockets, ce qui peut être très utile pour diagnostiquer les problèmes de connexion. Par exemple, un grand nombre de sockets dans l'état TIME-WAIT pourrait indiquer un problème d'efficacité lors de la fermeture des connexions.

L'utilisation de ss -s offre une autre perspective sur l'activité réseau par rapport à netstat -s. Les deux commandes sont des outils précieux pour la surveillance et la résolution de problèmes réseau sous Linux.

Vous avez maintenant appris à utiliser netstat -s, à explorer /proc/net et à utiliser ss -s pour inspecter les statistiques des protocoles réseau. Ce sont des compétences fondamentales pour comprendre l'activité réseau sur un système Linux.

Cliquez sur Continuer pour terminer ce laboratoire.

Résumé

Dans ce laboratoire, nous avons appris à vérifier si un protocole réseau est activé sous Linux en examinant les statistiques réseau et les fichiers système. Nous avons commencé par utiliser la commande netstat -s pour afficher les statistiques par protocole pour divers protocoles réseau tels que IP, ICMP, TCP et UDP, ce qui aide à comprendre l'activité réseau et à diagnostiquer les problèmes. Nous avons ensuite exploré comment vérifier les informations sur les protocoles en inspectant les fichiers dans le répertoire /proc/net, qui offre un aperçu de l'état du réseau du noyau. Enfin, nous avons utilisé la commande ss -s pour inspecter l'utilisation des protocoles, offrant une autre façon d'afficher les statistiques sommaires pour différents protocoles. Ces méthodes fournissent des informations précieuses sur les protocoles réseau actifs sur un système Linux.