Le Simple Network Ma­na­ge­ment Protocol (SNMP) fait partie des pro­to­coles de com­mu­ni­ca­tion établis dans les réseaux d’or­di­na­teurs. Dif­fé­rents outils de gestion ont recours à ce protocole client/serveur publié en 1990, per­met­tant ainsi à l’uti­li­sa­teur de sur­veil­ler et d’ad­mi­nis­trer de façon cen­tra­li­sée l’ensemble des appareils réseau tels que les routeurs, les com­mu­ta­teurs ou les systèmes NAS. Les outils snmpwalk et snmpget per­met­tent de consulter des ensembles de données issus de bases MIB (Ma­na­ge­ment In­for­ma­tion Bases) d’une sélection d’agents SNMP installés par défaut sur la plupart des appareils fonc­tion­nant sous Windows et Linux. Dans ce tutoriel SNMP, vous dé­cou­vri­rez de quoi ces deux ap­pli­ca­tions sont capables et comment elles fonc­tion­nent.

À 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 per­met­tant d’im­plé­men­ter et d’utiliser SNMP dans les réseaux IPv4 et IPv6. Cette suite d’outils est dis­po­nible sur la plupart des systèmes fonc­tion­nant sous UNIX et Linux (dans la gestion de paquets) ainsi que sous Microsoft Windows. La fonc­tion­na­lité des dif­fé­rentes ap­pli­ca­tions peut différer lé­gè­re­ment d'un système à un autre. snmpwalk et snmpget font ainsi partie des solutions intégrées per­met­tant à des appareils com­pa­tibles SNMP de consulter des in­for­ma­tions à travers des requêtes simples GET (snmpget) ou multiples GETNEXT (snmpwalk).

snmpget : in­ter­ro­ga­tions SNMP simples

L’ap­pli­ca­tion snmpget permet de consulter les in­for­ma­tions d’un par­ti­ci­pant au réseau à l’aide du Simple Network Ma­na­ge­ment Protocol. Cette con­sul­ta­tion est effectuée à l’aide du type de messages SNMP « GET » qui exige un ensemble de données spé­ci­fique sur le système cible. Pour ce faire, il est né­ces­saire d’indiquer comme arguments l’hôte (nom ou adresse IP), le nom de com­mu­nauté (SNMPv1 ou SNMPv2) ou les in­for­ma­tions d’au­then­ti­fi­ca­tion (SNMPv3) et le numéro d’iden­ti­fi­ca­tion approprié (Object Iden­ti­fier, OID).

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

snmpwalk : in­ter­ro­ga­tions SNMP de bases MIB complètes

L’outil snmpwalk vous permet non seulement de consulter un ensemble de données spé­ci­fique sur un appareil cible com­pa­tible SNMP, mais aussi les ensembles de données sub­sé­quents (pertinent notamment dans le cas de tableaux). Afin d’in­ter­ro­ger un arbre d’in­for­ma­tions complet de ce type – c’est-à-dire une base MIB complète, snmpwalk utilise des messages de type « GETNEXT » qui demandent des in­for­ma­tions aux agents jusqu’à ce que la base MIB concernée ait été atteinte. Du point de vue de la syntaxe, l’uti­li­sa­tion de snmpwalk ne diffère pas des in­ter­ro­ga­tions 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 : prin­ci­pales commandes snmpget et snmpwalk

snmpwalk et snmpget sont des outils de lignes de commande et peuvent donc être utilisés en toute sim­pli­cité via le terminal ou l’invite de commandes. Par con­sé­quent, si la suite Net-SNMP est installée sur votre système, vous pouvez im­mé­dia­te­ment commencer à in­ter­ro­ger les in­for­ma­tions de réseau sou­hai­tées en ouvrant les lignes de commande con­cer­nées. Dans ce tutoriel SNMP, nous avons résumé pour vous les prin­ci­pales commandes de ces deux pro­grammes.

Note

vous trouverez les paquets d’ins­tal­la­tion de la suite Net-SNMP dans l’espace de té­lé­char­ge­ment du site Internet officiel. Toutefois, comme les fichiers binaires pour Windows s’appuient sur la version OpenSSL 0.9.8r, pour des raisons de com­pa­ti­bi­lité, l’ins­tal­la­tion ne fonc­tionne pas sur les systèmes ayant installé la version 1.0 ou une version su­pé­rieure.

Fonc­tion­ne­ment de l’in­ter­ro­ga­tion de données avec snmpget

Pour faciliter vos débuts avec les pos­si­bi­li­tés de snmpget, vous pouvez commencer par consulter le menu d’aide de l’outil. Ce menu liste les pa­ra­mètres dis­po­nibles et donne de brèves ex­pli­ca­tions. Vous pouvez l’ouvrir à l’aide de la commande suivante :

snmpget -h

La forme de la commande pour l’in­ter­ro­ga­tion standard d’un ensemble de données sé­lec­tionné dépend prin­ci­pa­le­ment de la version du protocole sous-jacente. Cette dernière est indiquée dans les pa­ra­mètres et détermine si l’in­ter­ro­ga­tion suit le principe du nom de com­mu­nauté (pour les versions SNMPv1 et SNMPv2c) ou la méthode d’au­then­ti­fi­ca­tion (auth­No­Priv, authPriv, noAuth­No­Priv) avec les in­for­ma­tions de connexion cor­res­pon­dantes (pour la version SNMPv3). Vous pouvez par exemple taper l’une des cinq commandes suivantes spé­ci­fiques à la version du protocole afin de demander si une mise à jour du mi­cro­lo­gi­ciel ou du système d’ex­ploi­ta­tion est dis­po­nible :

In­ter­ro­ga­tion snmpget via SNMPv1 :

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

In­ter­ro­ga­tion snmpget via SNMPv2 :

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

In­ter­ro­ga­tion snmpget via SNMPv3 (avec au­then­ti­fi­ca­tion 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]

In­ter­ro­ga­tion snmpget via SNMPv3 (avec au­then­ti­fi­ca­tion 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]

In­ter­ro­ga­tion snmpget via SNMPv3 (sans au­then­ti­fi­ca­tion 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 in­ter­ro­ga­tion sera une valeur numérique vous informant du statut de mise à jour. La valeur « 1 » indique par exemple qu’une mise à jour est dis­po­nible alors que la valeur « 2 » s’affiche lorsque le mi­cro­lo­gi­ciel ou le système d’ex­ploi­ta­tion est à jour. Afin de mieux lire et in­ter­pré­ter les valeurs obtenues, chargez sur l’or­di­na­teur la base MIB avec laquelle vous avez effectué l’in­ter­ro­ga­tion SNMP et copiez le fichier cor­res­pon­dant dans le registre /usr/share/snmp/mibs. Sous Linux/UNIX, vous pouvez installer à cette fin un programme de té­lé­char­ge­ment de MIB qui vous assistera dans cette tâche.

sudo apt install snmp-mibs-downloader

Fonc­tion­ne­ment de l’in­ter­ro­ga­tion de bases MIB complètes avec snmpwalk

snmpwalk vous offre également la pos­si­bi­lité de consulter un aperçu des pa­ra­mètres né­ces­saires et dis­po­nibles. 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’in­ter­ro­ga­tion des données. La dif­fé­rence réside prin­ci­pa­le­ment dans l’exécution des commandes : alors que snmpget renvoie uni­que­ment une valeur con­cer­nant l’Obect-ID demandé ou affiche un message d’erreur lorsqu’aucun objet n’est dis­po­nible pour le numéro d’iden­ti­fi­ca­tion, snmpwalk passe également par l’ensemble des sous-nœuds. Ceci permet notamment d’afficher une liste détaillée des in­for­ma­tions système per­ti­nentes lorsque le numéro d’iden­ti­fi­ca­tion est connu de la base MIB cor­res­pon­dante. Comme pour les requêtes GET simples, l’aspect des commandes né­ces­saires dépend de la version du protocole choisie :

In­ter­ro­ga­tion snmpwalk via SNMPv1 :

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

In­ter­ro­ga­tion snmpwalk via SNMPv2 :

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

In­ter­ro­ga­tion snmpwalk via SNMPv3 (avec au­then­ti­fi­ca­tion 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]

In­ter­ro­ga­tion snmpwalk via SNMPv3 (avec au­then­ti­fi­ca­tion 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]

In­ter­ro­ga­tion snmpwalk via SNMPv3 (sans au­then­ti­fi­ca­tion 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 in­ter­ro­ga­tions SNMP simples

snmpwalk et snmpget vous per­met­tent d’in­ter­ro­ger les données du réseau sou­hai­tées à l’aide du Simple Network Ma­na­ge­ment Protocol. Comme ces deux outils de lignes de commande font partie de la suite Net-SNMP, ils peuvent être ra­pi­de­ment installés sur le système de l’uti­li­sa­teur et utilisés en toute sim­pli­cité. Ce tutoriel SNMP montre à quel point il était facile d’in­ter­ro­ger une in­for­ma­tion spé­ci­fique ou un bloc d’in­for­ma­tions complet si vous con­nais­sez l’adresse IP de l’agent SNMP et l’Object Iden­ti­fier cor­res­pon­dant.

Aller au menu principal