Table of Contents
Configuration traps SNMP sur les commutateurs HPE
Les traps SNMP sont des informations envoyées en utilisant le protocole SNMP depuis un équipement supervisé vers un serveur de supervision (satellite). Ces informations contiennent plusieurs attributs dont :
- Adresse de l’équipement qui a envoyé l’information.
- L’OID racine (Object Identifier) correspond à l’identifiant du message reçu.
- Le message envoyé au travers du trap SNMP qui correspond à un ensemble de paramètres (1 à N).
Afin de pouvoir interpréter l’évènement reçu, le serveur de supervision doit posséder dans sa configuration le nécessaire pour traduire l’évènement. Pour cela, il doit disposer d’une base de données contenant les OID ainsi que leurs descriptions, c’est ce qu’on appelle les fichiers MIB. Il existe deux types de MIB :
- Les MIB standards qui utilisent des OID standardisés et qui sont implémentés par de nombreux constructeurs sur leurs équipements.
- Les MIB constructeurs qui sont propres à chacun et souvent à chaque modèle d’équipement.
Les MIB constructeurs sont à récupérer auprès des constructeurs de matériels. Centreon permet de stocker la définition des traps SNMP dans sa base de données MySQL. Les traps peuvent ensuite être reliés à des services passifs via l’onglet Relations de la définition d’un service.
Configuration des traps
Activation des traps SNMP
Il est possible d'activer globalement la fonction de trap avec la commande snmp-agent trap enable ou pour un module spécifique avec la commande snmp-agent trap enable [nom-module]. Par exemple pour activer les notifications SNMP pour BGP.
<Sysname> system-view [Sysname] snmp-agent trap enable bgp
La façon dont module génère des traps dépend également de la manière de configurer le module. Par exemple pour générer des traps linkUp ou linkDown lorsque l'état du lien d'une interface change, on peut activer la fonction d'interruption linkUp ou linkDownen en utilisant la commande snmp-agent trap enable [standard[linkdown|linkup]*] ou globalement en utilisant la commande enable snmp trap updown
Liste des modules
| module | libellé |
|---|---|
| acfp1) | active les traps SNMP pour le module ACFP. * client: traps du client ACFP. * policy: pièges de politique ACFP. * rule: traps de règle ACFP. * server: traps du serveur ACFP. |
| arp rate-limit | active les traps de limite de débit ARP, qui sont envoyées lorsque le débit des paquets ARP dépasse la limite de débit. |
| bgp | active les traps SNMP pour le module BGP. |
| configuration | active les traps de configuration. |
| default-route | active les traps qui sont envoyées lorsque les routes par défaut sont supprimées. |
| flash | active les traps SNMP liées à Flash. |
| mpls2) | active les traps SNMP pour le module MPLS. |
| ospf | active les traps SNMP pour le module OSPF. * process-id: ID de processus OSPF, compris entre 1 et 65535. * ifauthfail: traps d'échec d'authentification d'interface. * ifcfgerror: traps d'erreurs de configuration d'interface. * ifrxbadpkt: traps pour recevoir des paquets incorrects. * ifstatechange: traps de changement d'état de l'interface. * iftxretransmit: traps pour les événements de réception et de transfert de paquets sur les interfaces. * lsdbapproachoverflow: traps pour l'approche du débordement de LSDB. * lsdboverflow: traps de dépassement de capacité LSDB. * maxagelsa: traps pour l'âge max LSA. * nbrstatechange: traps pour le changement d'état du voisin. * originatelsa: traps pour la génération locale de LSA. * vifcfgerror: traps pour l'erreur de configuration de l'interface virtuelle. * virifauthfail: traps pour l'échec de l'authentification de l'interface virtuelle. * virifrxbadpkt: traps pour l'interface virtuelle recevant des paquets d'erreur. * virifstatechange: traps pour les changements d'état de l'interface virtuelle. * viriftxretransmit: traps pour la réception et la transmission de paquets par l'interface virtuelle. * virnbrstatechange: traps pour le changement d'état du voisin de l'interface virtuelle. |
| pim 3) | active les traps SNMP pour le module PIM. * Candidatbsrwinelection: traps pour la victoire d'un routeur candidat-bootstrap (C-BSR) dans l'élection d'un routeur bootstrap (BSR). * selectedbsrlostelection: traps pour avoir perdu l'élection BSR. * interfaceelection: traps pour l'élection d'un nouveau DR ou DF sur une interface. * invalidjoinprune: traps pour recevoir des paquets de jointure ou d'élagage non valides. * invalidregister: traps pour recevoir des paquets d'enregistrement invalides. * Neighbourloss: traps pour la perte d'un voisin. * rpmappingchange: traps pour le changement de l'ensemble RP actuel. * nexthop-uneachable: envoie des traps lorsque le prochain saut est inaccessible. |
| standard | traps standard. * authentication: permet d'envoyer des traps d'échec d'authentification en cas d'échec d'authentification. * coldstart: envoie des traps de démarrage à froid lorsque l'appareil redémarre. * linkdown: permet globalement d'envoyer des traps linkDown lorsque le lien d'un port tombe en panne. * linkup: permet globalement d'envoyer des traps linkUp lorsque le lien d'un port monte. * warmstart: envoie des traps de démarrage à chaud lorsque le SNMP redémarre. |
| system | Active les traps d'événement système (MIB privé). |
| vrrp | active les traps pour le module VRRP. * authfailure: traps d'échec d'authentification VRRP. * newmaster: les traps VRRP newmaster, qui sont envoyées lorsque l'appareil devient le maître. |
Configuration SNMPv1/SNMPv2c
Prérequis
- Le NMS se connecte à l'agent via un réseau Ethernet.
- L'adresse IP du NMS est le 1.1.1.2/24.
- L'adresse IP de l'agent est le 1.1.1.1/24.
- Le NMS surveille et gère l'agent à l'aide de SNMPv1 ou SNMPv2c. L'agent signale les erreurs ou les défauts au NMS.
Configuration de l'agent SNMP.
- Configurer l'adresse IP de l'agent et s'assurer que l'agent et le NMS peuvent se joindre.
- Spécifier SNMPv1 et SNMPv2c, créer une communauté en lecture seule publique et une communauté en lecture et en écriture privée.
<Agent> system-view [Agent] snmp-agent sys-info version v1 v2c [Agent] snmp-agent community read public [Agent] snmp-agent community write private
- Configurer les informations de contact et d'emplacement physique de l'agent.
[Agent] snmp-agent sys-info contact Mr.Wang-Tel:3306 [Agent] snmp-agent sys-info location telephone-closet,3rd-floor - Activer les traps SNMP, définir le NMS sur 1.1.1.2/24 comme destination des trap SNMP et utiliser public comme nom de communauté. (Pour être sûr que le NMS peut recevoir des traps, spécifier la même version SNMP dans la commande snmp-agent target-host que sur le NMS.)
[Agent] snmp-agent trap enable [Agent] snmp-agent target-host trap address udp-domain 1.1.1.2 params securityname public v1 [Agent] quit
Configuration du NMS SNMP
Les paramètres SNMP de l'agent et du NMS doivent correspondre. Spécifier la communauté en lecture seule, la communauté en lecture et en écriture, le délai d'expiration et le nombre de tentatives.
Vérification de la configuration.
- Essayer d'obtenir le nombre de traps envoyées par l'agent et la tentative réussit.
Send request to 1.1.1.1/161 ... Protocol version: SNMPv1 Operation: Get Request binding: 1: 1.3.6.1.2.1.11.29.0 Response binding: 1: Oid=snmpOutTraps.0 Syntax=CNTR32 Value=18 Get finished
- Utiliser un nom de communauté erroné pour obtenir la valeur d'un nœud MIB auprès de l'agent et voir une trap d'échec d'authentification sur le NMS.
1.1.1.1/2934 V1 Trap = authenticationFailure SNMP Version = V1 Community = public Command = Trap Enterprise = 1.3.6.1.4.1.43.1.16.4.3.50 GenericID = 4 SpecificID = 0 Time Stamp = 8:35:25.68
Configuration SNMPv3
Prérequis
- Le NMS se connecte à l'agent via un réseau Ethernet.
- L'adresse IP du NMS est le 1.1.1.2/24.
- L'adresse IP de l'agent est le 1.1.1.1/24.
- Le NMS surveille et gère l'état de l'interface de l'agent à l'aide de SNMPv3. L'agent signale les erreurs ou les défauts au NMS. Le port entrant pour les traps sur le NMS est 5000.
- L'authentification est requise lorsque le NMS et l'agent établissent une connexion SNMP. Le protocole d'authentification est MD5 et la clé d'authentification est authkey. Les paquets transmis entre le NMS et l'agent doivent être chiffrés. Le protocole de confidentialité est DES et le mot de passe de confidentialité est coûteux.
Configuration de l'agent.
- Configurer l'adresse IP de l'agent et assurez-vous que l'agent et le NMS peuvent se joindre.
- Attribuer au NMS (groupe SNMPv3 managev3group) l'accès en lecture et en écriture aux objets sous le nœud snmp (OID 1.3.6.1.2.1.11) et refuser son accès à tout autre objet MIB.
<Agent> system-view [Agent] undo snmp-agent mib-view ViewDefault [Agent] snmp-agent mib-view included test snmp [Agent] snmp-agent group v3 managev3group read-view test write-view test
- Ajouter l'utilisateur managev3user au groupe SNMPv3 managev3group), définir l'algorithme d'authentification sur MD5, la clé d'authentification sur authkey, l'algorithme de cryptage sur DES56 et la clé de confidentialité sur prikey.
[Agent] snmp-agent usm-user v3 managev3user managev3group authentication-mode md5 authkey privacy-mode des56 prikey
- Configurer les informations de contact et d'emplacement physique de l'agent.
[Agent] snmp-agent sys-info contact Mr.Wang-Tel:3306 [Agent] snmp-agent sys-info location telephone-closet,3rd-floor
- Activer les traps, spécifiez le NMS à 1.1.1.2 comme destination des traps et définir le nom d'utilisateur sur managev3user pour les traps.
[Agent] snmp-agent trap enable [Agent] snmp-agent target-host trap address udp-domain 1.1.1.2 params securityname managev3user v3 privacy
Configuration du NMS SNMP
Les paramètres SNMP de l'agent et du NMS doivent correspondre.
- Spécifier SNMPv3.
- Créer l'utilisateur managev3user SNMPv3.
- Activer les fonctions d'authentification et de confidentialité.
- Utiliser MD5 pour l'authentification et DES pour le cryptage.
- Définir la clé d'authentification sur authenkey et la clé de confidentialité sur prikey.
- Définir le délai d'expiration et le nombre maximal de tentatives.
Vérification de la configuration.
- Essayer d'obtenir le nombre de traps envoyées par l'agent et la tentative d'obtention réussit.
Send request to 1.1.1.1/161 ... Protocol version: SNMPv3 Operation: Get Request binding: 1: 1.3.6.1.2.1.11.29.0 Response binding: 1: Oid=snmpOutTraps.0 Syntax=CNTR32 Value=18 Get finished
- Essayer d'obtenir le nom du périphérique auprès de l'agent, mais la tentative d'obtention échoue car le NMS n'a pas de droit d'accès au nœud.
Send request to 1.1.1.1/161 ... Protocol version: SNMPv3 Operation: Get Request binding: 1: 1.3.6.1.2.1.1.5.0 Response binding: 1: Oid=sysName.0 Syntax=noSuchObject Value=NULL Get finished
- Exécuter la commande shutdown ou undo shutdown sur une interface inactive sur l'agent et consulter les traps de changement d'état de l'interface sur le NMS.
1.1.1.1/3374 V3 Trap = linkdown SNMP Version = V3 Community = managev3user Command = Trap 1.1.1.1/3374 V3 Trap = linkup SNMP Version = V3 Community = managev3user Command = Trap
Configuration de journalisation SNMP
Les informations système du centre de documentation peuvent être sorties vers le terminal ou vers la mémoire tampon du journal. Dans cet exemple, les journaux SNMP sont envoyés au terminal.
Prérequis
- Le NMS et l'agent sont connectés via un réseau Ethernet.
- L'adresse IP du NMS est le 1.1.1.2/24.
- L'adresse IP de l'agent est le 1.1.1.1/24.
- Configurer la journalisation SNMP sur l'agent pour enregistrer les opérations effectuées par le NMS sur l'agent.
Procédure de configuration:
- Activer l'affichage des messages de journal sur le terminal de configuration. (Cette fonction est activée par défaut. Ignorer cette étape lorsqu'on utilise la fonction par défaut.)
<Agent> terminal monitor <Agent> terminal logging
- Activer l'info-center pour envoyer les événements système de gravité informationnelle ou supérieure vers le port de console.
<Agent> system-view [Agent] info-center source snmp channel console log level informational
- Activer la journalisation des opérations GET et SET.
[Agent] snmp-agent log all
Vérification:
- Utiliser NMS pour obtenir une variable MIB de l'agent. Voici un exemple de message de journal affiché sur le terminal de configuration:
%Jan 1 02:49:40:566 2011 Sysname SNMP/6/GET: seqNO = <10> srcIP = <1.1.1.2> op = <get> node = <sysName(1.3.6.1.2.1.1.5.0)> value=<>
- Utiliser NMS pour définir une variable MIB sur l'agent. Voici un exemple de message de journal affiché sur le terminal de configuration:
%Jan 1 02:59:42:576 2011 Sysname SNMP/6/SET: seqNO = <11> srcIP = <1.1.1.2> op = <set> errorIndex = <0> errorStatus =<noError> node = <sysName(1.3.6.1.2.1.1.5.0)> value = <Agent>
Description des champs de message de journal SNMP
| Champ | Description |
|---|---|
| Jan 1 02:49:40:566 2011 | L'heure à laquelle le journal SNMP est généré. |
| SeqNO | Numéro de série du journal SNMP (Le système numérote automatiquement les journaux SNMP enregistrés; le numéro de série commence à 0). |
| SrcIP | Adresse IP du NMS. |
| Op | Type d'opération SNMP (GET ou SET). |
| Node | Nom de nœud des opérations SNMP et OID de l'instance. |
| ErrorIndex | Index d'erreur, 0 signifiant aucune erreur. |
| ErrorStatus | Statut d'erreur, avec noError signifiant aucune erreur. |
| Value | Valeur définie par l'opération SET (ce champ est nul pour une opération GET). Si la valeur est une chaîne de caractères qui contient des caractères au-delà de la plage ASCII 0 à 127 ou des caractères invisibles, la chaîne s'affiche au format hexadécimal, par exemple, valeur=<81-43>[hex] |
