= Observations trace de "TRAP" SNMP = Sur cette trace, nous pouvons visualiser 4 messages Trap SNMP, envoyé par l'agent SNMP sur le port 162 de serveur1. == Qu'est ce qu'un message "TRAP"? == Une fois défini, si un certain évènement se produit, comme par exemple le dépassement d'un seuil, l'agent envoie un paquet UDP à un serveur. Ce processus d'alerte est utilisé dans les cas où il est possible de définir simplement un seuil d'alerte. Les traps SNMP sont envoyés en UDP/162. Au niveau du switch, nous avons entré les receveurs potentiels de messages TRAP {{{ #!rst configure snmp add trapreceiver 10.40.3.2 }}} Il est même possible d'entrer un suffixe, si l'on souhaite qu'un sous-reseau reçoive le message! Mais dans ce cas la commande serait un peu différente car elle utiliserait la version 3 du protocole SNMP. == Comment provoquer ces messages? == J'ai débranché le cable se trouvant sur le port 1 du switch. 1 seconde plus tard, je pouvais déjà visualiser deux messages TRAP arriver au serveur1. Chacun des messages à une valeur de request-id différente, ce qui montre qu'il ne s'agit pas un message dupliqué. Puis quand j'ai rebrancher le port, 2 autres messages SNMP sont arrivés. == Quels sont ces messages "TRAP" == On visualise 5 objets par message envoyé: * L'objet sysuptime.0 (1.3.6.1.2.1.1.3.0) qui indique depuis combien de temps le switch est allumé. Celui permettera de comparer 2 messages TRAP ou bien de déterminer à quel moment un message TRAP a été envoyé. On apprend que les 2 premiers messages ont été envoyé en même temps et les 2 derniers également. Comme SNMP repose sur UDP cela doit être pour maximiser la probabilité de ce reception du message. * L'objet snmpTrapOID.0 détermine la raison du message TRAP: dans les 2 premiers TRAP les messages signalent que un port est deconnecté (linkDown), dans les 2 autres, qu'un port est connecté (link up): On peut alors déduire quand un port à été déconnecté puis reconnecté. (Il s'agit d'un très bon anti-vol! je vous laisse deviner comment le mettre en place) * Tous les objets suivants sont identiques ifIndex, IfAdminStatus et IfOperStatus. "If" est une abbréviation qui signifie Interface. {{{ #!rst IfIndex est une nombre unique (plus grand que 0) qui identifie chaque interface pour avoir une identification de cette interface avec SNMP. IfAdminStatus indique l'état désiré d'un port: 1 pour Actif, 2 pour désactivé. IfOperStatus indique l'etat actuel d'un port: 1 Pour inactif, 2 pour actif. }}} * Ainsi, on comprend que le port 1 est concerné par chacun des messages, qu'il devrait être activé mais qu'il ne l'ai pas dans les 2 premiers messages! (On confirme ainsi le but de ces messages) * Dans les 2 derniers messages, on apercoit que le port est connecté :-)