SNMP (Simple Network Management Protocol)

SNMP est un protocole de communication qui permet aux administrateurs réseau de gérer les équipements du réseau, de superviser et de diagnostiquer des problèmes réseaux et matériels à distance.

1.Les différents composants et leurs fonctionnalités

SNMP Network Management Systems :

Une sorte de console au travers de laquelle les administrateurs peuvent réaliser des tâches d’administration.

C’est une entité qui communique avec les agents SNMP qui sont implémentés dans les différents périphériques du réseau. Les communications SNMP se font via les ports UDP 161 et 162.

Les principales fonctions :

  • Envoyer des requêtes vers les agents.
  • Recevoir des réponses de la part des agents
  • Invoquer un changement de variable d’un agent.
  • Acquitte les notifications asynchrones envoyées par les agents.

NMS

Managed devices :

Ce sont des équipements de réseau qui présentent des objets configurables.

Exemples : Switchs, hubs, routeurs et serveurs.

Ces objets configurables peuvent être des informations matérielles, des paramètres de configuration, des statistiques de performance et autres objets qui sont directement liés au comportement en cours de l’équipement en question. Ces objets sont classés dans une sorte de base de données appelée MIB (« Management Information Base« ). SNMP permet le dialogue entre le superviseur et les agents afin de recueillir les objets souhaités dans la MIB. Il stocke la carte de traduction des OID numériques en une forme lisible pour humains.

Les agents :

C’est-à-dire une application de gestion de réseau résidant dans un périphérique et chargé de transmettre les données locales de gestion du périphérique au format SNMP ; L’agent SNMP fournit un grand nombre d’identifiant d’objets (Object Identifiers ou OID) qui sont sotckés dans le MIB. Un OID est une paire clé-valeur unique. L’agent SNMP remplit ces valeurs et fait en sorte qu’elles soient disponibles. Un manager SNMP (ou client SNMP) peut effectuer des requêtes aux agents avec ces paires clé-valeur à propos d’informations spécifiques. Les OID SNMP peuvent être lus ou écrits. Il est rès similaire à une adresse IPv6 et les différents fabriquants ont différents préfixes, chaque fabriquant a sa gamme de produit (un autre préfixe) et ainsi de suite.

le MIB présente une structure d’arbre. Les OID y sont stockés de manière hiérarchique.

Exemple :

MIB

L’OID de la varibale sysDescr est 1.3.6.1.2.1.1.1

Techniques de supervision avec SNMP

SNMP peut être utilisé de deux manières distinctes : le polling et les traps.

Le polling consiste simplement à envoyer une requête à intervalles réguliers pour obtenir une valeur particulière. Cette technique est appelée « vérification active ». Vous pouvez, par programme ou script, vérifier si les valeurs sont correctes. Si la requête échoue, il est possible qu’il y ait un problème avec le périphérique. Cependant, vu que le SNMP s’appuie sur UDP, il est conseillé de réitérer la requête pour confirmer le problème (surtout dans le cas d’une vérification au travers d’Internet).

Les traps consistent à faire de la vérification passive ; en gros, on configure l’agent SNMP pour qu’il contacte un autre agent SNMP en cas de problème. C’est-à-dire que l’on peut configurer un périphérique réseau (comme un routeur) pour qu’il envoie un trap SNMP lors de certains événements. Par exemple, le routeur peut envoyer un trap lorsqu’il détecte que la ligne est coupée (down). Quand un événement trap apparait, l’agent sur le périphérique va envoyer le trap vers une destination pré-configurée communément appelé trap host. Le trap host possède son propre agent SNMP qui va accepter et traiter les traps lorsqu’ils arrivent. Le traitement des traps est effectué par des trap handlers. Le handler peut faire ce qui est approprié pour répondre au trap, comme envoyer un courriel d’alerte ou faire ce qu’on veut.

Par exemple, le processus snmptrapd est lancé dans la machine M1, puis écoute le message SNMP Trap sur le port UDP 1162. Dés qu’elle a reçu un Trap, snmptrapd imprime le message reçu dans un fichier texte local. La machine M2 simule l’équipement qui envoie le message SNMP Trap par lancé la commande snmptrap.

trap

Diagramme de communication :

manager

2.Exemple :

SNMPget permet de récupérer la valeur d’un OID feuille. SNMPget, permet de récupérez une et une seule valeur : la valeur de l’OID demandée. Si cet OID n’est pas une feuille, la requête n’aura  pas de réponse.

SNMPwalk permet de récupérer toutes les valeurs associées à un noeud (toutes les valeurs disponibles contenues dans le sous arbre).

L’utilisation des commandes SNMPget et SNMPwalk est exactement la même, leur syntaxe est identique. Seul l’OID interrogé va différer, selon que vous souhaitez interroger un sous-arbre ou un OID feuille. Pour faire une requête, il vous suffit de taper pour SNMPwalk:

snmpwalk -v <laversion> -c <lacommunaute> <adresseip> <oid>

Exemple :

snmpwalk -v 2c -c public 192.168.1.13 1.3.6.1.2.1.2.2.1.10

Voici un exemple d”une réponse à la requête snmpwalk envoyée par l’agent d’un routeur. La réponse contient les inforamtions suivantes :

  • Le temps de disponibilité d’un équipement (sysUpTimeInstance)
  • Liste des versions du système d’exploitation (sysDescr)
  • Des informations générales (ifName, ifDescr, ifSpeed, ifType, ifPhysAddr)
  • Le débit d’une interface réseau (ifInOctets, ifOutOctets)
  • La cache ARP (ipNetToMedia)

 

exemple

Si vous savez utiliser la commande SNMPwalk, vous sauriez utiliser SNMPget. C’est exactement la même syntaxe :

snmpget -v <laversion> -c <lacommunaute> <adresseip> <oid>
snmpget -v 2c -c public 192.168.1.13 1.3.6.1.2.1.2.2.1.10.1

terminal

Get value of a single OID:

snmpget -v1 -c public <device IP> OID

Example : snmpget -v1 -c public 192.168.1.1 1.3.6.1.2.1.43.5.1.1.1.1.0

Références:

https://fr.wikipedia.org/wiki/Simple_Network_Management_Protocol

http://www.commentcamarche.net/contents/537-le-protocole-snmp

https://doc.ubuntu-fr.org/snmp

https://blog.cedrictemple.net/239-faire-des-requetes-snmp-en-ligne-de-commande-sous-linux

https://www.ibm.com/developerworks/cn/linux/l-cn-snmp/

https://www.manageengine.com/network-monitoring/what-is-snmp.html

Zelong CHEN

Yiqiao CHEN

Shuting WANG

Morsi ABDELGHANI

Ce contenu a été publié dans Non classé. Vous pouvez le mettre en favoris avec ce permalien.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *