Tutoriel SNMP : fonctionnement de snmpwalk et snmpget

Le Simple Network Management Protocol (SNMP) fait partie des protocoles de communication établis dans les réseaux d’ordinateurs. Différents outils de gestion ont recours à ce protocole client/serveur publié en 1990, permettant ainsi à l’utilisateur de surveiller et d’administrer de façon centralisée l’ensemble des appareils réseau tels que les routeurs, les commutateurs ou les systèmes NAS. Les outils snmpwalk et snmpget permettent de consulter des ensembles de données issus de bases MIB (Management Information Bases) d’une sélection d’agents SNMP installés par défaut sur la plupart des appareils fonctionnant sous Windows et Linux. Dans ce tutoriel SNMP, vous découvrirez de quoi ces deux applications sont capables et comment elles fonctionnent.

À quoi servent les outils snmpwalk et snmpget ?

Les outils de lignes de commande snmpwalk et snmpget sont des éléments de la suite Net-SNMP permettant d’implémenter et d’utiliser SNMP dans les réseaux IPv4 et IPv6. Cette suite d’outils est disponible sur la plupart des systèmes fonctionnant sous UNIX et Linux (dans la gestion de paquets) ainsi que sous Microsoft Windows. La fonctionnalité des différentes applications peut différer légèrement d'un système à un autre. snmpwalk et snmpget font ainsi partie des solutions intégrées permettant à des appareils compatibles SNMP de consulter des informations à travers des requêtes simples GET (snmpget) ou multiples GETNEXT (snmpwalk).

Pour afficher cette vidéo, des cookies de tiers sont nécessaires. Vous pouvez consulter et modifier vos paramètres de cookies ici.

snmpget : interrogations SNMP simples

L’application snmpget permet de consulter les informations d’un participant au réseau à l’aide du Simple Network Management Protocol. Cette consultation est effectuée à l’aide du type de messages SNMP « GET » qui exige un ensemble de données spécifique sur le système cible. Pour ce faire, il est nécessaire d’indiquer comme arguments l’hôte (nom ou adresse IP), le nom de communauté (SNMPv1 ou SNMPv2) ou les informations d’authentification (SNMPv3) et le numéro d’identification approprié (Object Identifier, OID).

snmpget [Options] [Community-String/Informations d’authentification] [Nom de l’hôte /Adresse de l’hôte] [Object Identifier]

snmpwalk : interrogations SNMP de bases MIB complètes

L’outil snmpwalk vous permet non seulement de consulter un ensemble de données spécifique sur un appareil cible compatible SNMP, mais aussi les ensembles de données subséquents (pertinent notamment dans le cas de tableaux). Afin d’interroger un arbre d’informations complet de ce type – c’est-à-dire une base MIB complète, snmpwalk utilise des messages de type « GETNEXT » qui demandent des informations aux agents jusqu’à ce que la base MIB concernée ait été atteinte. Du point de vue de la syntaxe, l’utilisation de snmpwalk ne diffère pas des interrogations simples réalisées avec snmpget.

snmpwalk [Options] [Community-String/Informations d’authentification] [Nom de l’hôte/Nom de l’adresse] [Object Identifier]

Tutoriel SNMP : principales commandes snmpget et snmpwalk

snmpwalk et snmpget sont des outils de lignes de commande et peuvent donc être utilisés en toute simplicité via le terminal ou l’invite de commandes. Par conséquent, si la suite Net-SNMP est installée sur votre système, vous pouvez immédiatement commencer à interroger les informations de réseau souhaitées en ouvrant les lignes de commande concernées. Dans ce tutoriel SNMP, nous avons résumé pour vous les principales commandes de ces deux programmes.

Note

vous trouverez les paquets d’installation de la suite Net-SNMP dans l’espace de téléchargement du site Internet officiel. Toutefois, comme les fichiers binaires pour Windows s’appuient sur la version OpenSSL 0.9.8r, pour des raisons de compatibilité, l’installation ne fonctionne pas sur les systèmes ayant installé la version 1.0 ou une version supérieure.

Fonctionnement de l’interrogation de données avec snmpget

Pour faciliter vos débuts avec les possibilités de snmpget, vous pouvez commencer par consulter le menu d’aide de l’outil. Ce menu liste les paramètres disponibles et donne de brèves explications. Vous pouvez l’ouvrir à l’aide de la commande suivante :

snmpget -h

La forme de la commande pour l’interrogation standard d’un ensemble de données sélectionné dépend principalement de la version du protocole sous-jacente. Cette dernière est indiquée dans les paramètres et détermine si l’interrogation suit le principe du nom de communauté (pour les versions SNMPv1 et SNMPv2c) ou la méthode d’authentification (authNoPriv, authPriv, noAuthNoPriv) avec les informations de connexion correspondantes (pour la version SNMPv3). Vous pouvez par exemple taper l’une des cinq commandes suivantes spécifiques à la version du protocole afin de demander si une mise à jour du micrologiciel ou du système d’exploitation est disponible :

Interrogation snmpget via SNMPv1 :

snmpget -v1 -c [Community-String] [Adresse IP de l’hôte] [Object-ID for update check]

Interrogation snmpget via SNMPv2 :

snmpget -v2c -c [Community-String] [Adresse IP de l’hôte] [Object-ID for update check]

Interrogation snmpget via SNMPv3 (avec authentification mais sans cryptage) :

snmpget -v3 -l authNoPriv -u [User-Name] -a MD5 -A [MD5-Hash du mot de passe user] [Adresse IP de l’hôte] [Object-ID for update check]

Interrogation snmpget via SNMPv3 (avec authentification et cryptage) :

snmpget -v3 -l authPriv -u [User name] -a MD5 -A [User password] -x DES -X [DES password] [Adresse IP de l’hôte] [Object-ID for update check]

Interrogation snmpget via SNMPv3 (sans authentification et cryptage) :

snmpget -v3 -l noAuthNoPriv -u [User name] [Adresse IP de l’hôte] [Object-ID for update check]

Le résultat de cette interrogation sera une valeur numérique vous informant du statut de mise à jour. La valeur « 1 » indique par exemple qu’une mise à jour est disponible alors que la valeur « 2 » s’affiche lorsque le micrologiciel ou le système d’exploitation est à jour. Afin de mieux lire et interpréter les valeurs obtenues, chargez sur l’ordinateur la base MIB avec laquelle vous avez effectué l’interrogation SNMP et copiez le fichier correspondant dans le registre /usr/share/snmp/mibs. Sous Linux/UNIX, vous pouvez installer à cette fin un programme de téléchargement de MIB qui vous assistera dans cette tâche.

sudo apt install snmp-mibs-downloader

Fonctionnement de l’interrogation de bases MIB complètes avec snmpwalk

snmpwalk vous offre également la possibilité de consulter un aperçu des paramètres nécessaires et disponibles. Ce menu d’aide apparaît après avoir saisi la commande suivante :

snmpwalk -h

snmpwalk ne diffère pas beaucoup de snmpget pour ce qui est de l’interrogation des données. La différence réside principalement dans l’exécution des commandes : alors que snmpget renvoie uniquement une valeur concernant l’Obect-ID demandé ou affiche un message d’erreur lorsqu’aucun objet n’est disponible pour le numéro d’identification, snmpwalk passe également par l’ensemble des sous-nœuds. Ceci permet notamment d’afficher une liste détaillée des informations système pertinentes lorsque le numéro d’identification est connu de la base MIB correspondante. Comme pour les requêtes GET simples, l’aspect des commandes nécessaires dépend de la version du protocole choisie :

Interrogation snmpwalk via SNMPv1 :

snmpwalk -v1 -c [Community-String] [Adresse IP de l’hôte] [Object-ID des systèmes d’informations MIB]

Interrogation snmpwalk via SNMPv2 :

snmpwalk -v2c -c [Community-String] [Adresse IP de l’hôte] [Object-ID des systèmes d’informations MIB]

Interrogation snmpwalk via SNMPv3 (avec authentification mais sans cryptage) :

snmpwalk -v3 -l authNoPriv -u [User name] -a MD5 -A [User password] [Adresse IP de l’hôte] [Object-ID des systèmes d’informations MIB]

Interrogation snmpwalk via SNMPv3 (avec authentification et cryptage) :

snmpwalk -v3 -l authPriv -u [User name] -a MD5 -A [User password] -x DES -X [DES password] [Adresse IP de l’hôte] [Object-ID des systèmes d’informations MIB]

Interrogation snmpwalk via SNMPv3 (sans authentification ni cryptage) :

snmpwalk -v3 -l noAuthNoPriv -u [User name] [Adresse IP de l’hôte] [Object-ID des systèmes d’informations MIB]

En résumé : snmpwalk et snmpget pour des interrogations SNMP simples

snmpwalk et snmpget vous permettent d’interroger les données du réseau souhaitées à l’aide du Simple Network Management Protocol. Comme ces deux outils de lignes de commande font partie de la suite Net-SNMP, ils peuvent être rapidement installés sur le système de l’utilisateur et utilisés en toute simplicité. Ce tutoriel SNMP montre à quel point il était facile d’interroger une information spécifique ou un bloc d’informations complet si vous connaissez l’adresse IP de l’agent SNMP et l’Object Identifier correspondant.