Cafuro, un logiciel de test pour environnement SNMP

ram-0000

La configuration d'une architecture SNMP et la mise en place d'un outil NMS (Network management system) sont toujours délicates. En effet, cette opération nécessite de nombreux tests à chaque fois que l'on désire ajouter un équipement SNMP dans une architecture existante : "quels sont les paramètres SNMP de l'équipement ?", "quelles sont les informations que cet équipement met à disposition ?", "quelles sont les informations utiles à analyser pour superviser correctement cet équipement ?" sont autant de questions qu'il faut se poser à un moment ou un autre.

Ce document a pour but de présenter le programme Cafuro, un outil de test dans un environnement SNMP. Votre avis, vos idées et vos suggestions concernant ce logiciel m'intéressent ! Alors, après votre lecture ou après avoir essayé, n'hésitez pas : Commentez ♪

- Titre : Cafuro, un logiciel de test pour environnement SNMP

- Auteur : ram-0000

- Parution : 2 janvier 2012

- Licence : Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright ® 2008-2012 ram-0000. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.

Sommaire

- 1. Introduction

- 1-1. Les principales fonctionnalités de Cafuro

- 1-2. Téléchargement de Cafuro

- 1-3. Licence de Cafuro

- 2. L'écran principal

- 3. La vue de l'explorateur de MIB

- 3-1. Les fichiers MIB

- 3-2. Les répertoires des fichiers MIB

- 3-3. La vue "Browser"

- 3-4. Le chargement d'un fichier MIB

- 4. La vue des requêtes SNMP

- 5. La vue des traps SNMP

- 6. La vue des simulateurs SNMP

- 6-1. Qu'est-ce qu'un simulateur ?

- 6-2. Les emplacements des simulateurs

- 6-3. Comportement d'un simulateur vu du réseau

- 6-4. La vue "Simuler"

- 6-5. Création d'un simulateur

- 6-6. Ajouter des objets SMI à un simulateur

- 6-7. Limitations des simulateurs

- 7. La vue des messages de logs

- 8. Conclusions

- 8-1. Remerciements

1 - Introduction

1-1 - Les principales fonctionnalités de Cafuro

Les principales fonctionnalités de Cafuro sont :

- simulateur SNMP. Cafuro est capable de simuler un équipement SNMP quelconque. Il suffit pour cela de lui indiquer les instances MIB à implémenter, d'activer le simulateur et vous avez un nouvel équipement SNMP qui peut être interrogé par votre architecture SNMP ;

- interrogateur SNMP. Cafuro permet d'interroger un équipement SNMP quelconque afin d'obtenir la liste des variables MIB instanciées, leur type et leur valeur ;

- requêteur SNMP. Cafuro est capable de redemander et rafraichir la valeur d'un OID quelconque. Il est aussi capable de positionner la valeur d'un OID sur cet équipement pour les variables dont l'écriture est permise ;

- récepteur de traps. Cafuro est capable de recevoir et de décoder les traps SNMP envoyés par un équipement SNMP quelconque ;

- analyseur de fichiers MIB. Cafuro est capable d'analyser et d'afficher de manière graphique le contenu des fichiers MIB respectant la syntaxe SMI V1 ou V2 ;

- fichiers MIB. Cafuro est livré avec de nombreux fichiers MIB. Au fur et à mesure des évolutions du programme, de nouveaux fichiers MIB sont ajoutés. La version 1.4 est livrée avec 1 534 fichiers MIB ;

- résolution des OID. Cafuro est livrée avec une base de données statique des OID (sous forme d'une DLL) de manière à pouvoir résoudre rapidement un OID quelconque. En version 1.4, cette base de données ne contient pas moins de 108 990 entrées ;

- versions SNMP supportées. Cafuro supporte les versions 1 et 2c du protocole SNMP ;

- plateformes supportées. Cafuro fonctionne de manière native dans les environnements Microsoft Windows XP SP3, Vista, Seven et aussi sur les serveurs version 2003 et 2008. Il supporte les architectures 32 et 64 bits ;

- logiciel freeware. Ce logiciel est un logiciel gratuit qui peut même être utilisé de manière professionnelle. Attention, freeware ne veut pas dire sans droits, ce logiciel possède un copyright.

1-2 - Téléchargement de Cafuro

Le site Web officiel de Cafuro est ici.

Le programme d'installation (setup) peut être téléchargé ici.

La documentation complète (en anglais) peut être vue ici. Cette documentation est aussi copiée localement par le programme d'installation.

1-3 - Licence de Cafuro

Sauf mention contraire, la documentation et les binaires inclus dans le logiciel d'installation de Cafuro sont protégés par Circitor.

Copyright © 2007-2012 - Circitor. Tous droits réservés.

Ce logiciel est fourni "en l'état", sans aucune garantie ni implicite ni explicite. En aucune manière, les auteurs ne pourraient être tenus pour responsables des dommages causés par l'usage de ce logiciel.

Tout le monde a la permission d'utiliser ce logiciel pour quelque usage que ce soit même commercial, de le modifier et de le redistribuer pourvu que les conditions suivantes soient remplies :

- toute redistribution des codes sources doit conserver, sans modification, la mention de copyright présente ;

- toute redistribution sous forme binaire doit conserver, sans modification, la mention de copyright actuelle ainsi que les adresses de sites web déjà en place (dans la boîte de dialogue "À propos de…", par exemple) ;

- l'origine de ce logiciel ne doit pas être cachée ; vous ne pouvez pas dire que vous avez écrit ce logiciel. Si vous utilisez ce logiciel pour distribuer un produit, un remerciement dans la documentation du produit serait apprécié mais n'est pas obligatoire ;

- toute version modifiée des sources ou des binaires doit être clairement identifiée et ne doit pas être présentée comme étant le logiciel original.

circitor@circitor.fr

2 - L'écran principal

L'application Cafuro est une application classique Windows et à ce titre, elle reprend les standards de présentation avec une fenêtre principale, une barre de menu principal, une barre d'outils et une barre de statut :

L'écran principal

Les autres fenêtres de l'application sont accessibles par un sélecteur de vues. Ces autres fenêtres sont :

- la vue "Browser" qui permet d'analyse les fichiers MIB ;

- la vue "Walker" qui permet d'interroger un équipement SNMP ;

- la vue "Trapper" qui permet d'afficher les traps SNMP reçus ;

- la vue "Simuler" qui permet de gérer les simulateurs SNMP ;

- la vue "Logger" qui permet d'afficher les messages d'erreur et de débogage de l'application.

Chacune des différentes vues de l'application dispose d'un menu contextuel accessible classiquement par un clic droit dans cette fenêtre. Les options de ce menu peuvent être grisées ou non en fonction du contexte de l'application et des choix possibles.

3 - La vue de l'explorateur de MIB

Cette vue permet de charger et d'analyser un ou plusieurs fichiers MIB. Cafuro est livré avec environ 1 500 fichiers MIB différents et est enrichi au fur et à mesure des nouvelles versions du programme.

3-1 - Les fichiers MIB

La MIB est un ensemble structuré d'informations organisé sous la forme d'un arbre hiérarchisé de la même manière que l'arborescence des domaines Internet. Chaque information dans cette hiérarchie est identifiée par son OID (Object Identifier). Par exemple, l'objet ifDescr est identifié par son OID 1.3.6.1.2.1.2.2.1.2.

Un fichier MIB est un fichier texte respectant la syntaxe SMI qui permet de décrire une partie de cet arbre. La syntaxe SMI est un sous-ensemble de la syntaxe ASN.1 (Abstract Syntax Number 1).

Bien que la syntaxe SMI (et ASN.1 aussi) le permette, il n'est pas possible de soumettre à Cafuro un fichier MIB qui décrive plusieurs modules dans le même fichier. La règle pour Cafuro est "Un seul module SMI pour un seul fichier SMI". Dans la pratique, cette possibilité est rarement employée. De plus, le nom du fichier SMI doit être le nom du module SMI avec l'extension ".mib".

Ainsi par exemple, le module SMI "RFC1213-MIB" doit être décrit dans un fichier dont le nom est "RFC1213-MIB.mib".

3-2 - Les répertoires des fichiers MIB

Les fichiers MIB sont stockés dans trois répertoires différents :

- le répertoire "Personal". Dans ce répertoire (C:\Users\<utilisateur>\Cafuro\Mibs par défaut), l'utilisateur peut y stocker ses propres fichiers MIB. Ces fichiers ne sont accessibles qu'à cet utilisateur. Ce répertoire est vide par défaut ;

- le répertoire "Common". Dans ce répertoire (C:\ProgramData\cafuro\Mibs par défaut), sont stockés les fichiers MIB accessibles par tous les utilisateurs de la machine. Ce répertoire est vide par défaut. Ce répertoire n'existe pas sous Windows XP ;

- le répertoire "Legacy". Ce répertoire (C:\Program Files\Circitor\Cafuro\Mibs par défaut) contient les différents fichiers MIB "officiels" livrés avec Cafuro. C'est ce répertoire qui est enrichi au fur et à mesure des nouvelles versions de Cafuro.

Dans l'entête d'un module SMI, on peut y trouver des clauses "IMPORT" qui permettent d'importer des objets, des définitions ou des macros définis dans un autre module SMI. Ce fonctionnement est similaire à la notion d'include dans les programmes C et C++.

Exemple d'entête SMI avec des clauses "IMPORT"

RFC1213-MIB DEFINITIONS ::= BEGIN
IMPORTS
mgmt, NetworkAddress, IpAddress, Counter, Gauge, TimeTicks FROM RFC1155-SMI
OBJECT-TYPE FROM RFC-1212
;
...
END

Cafuro va automatiquement lire et interpréter ces clauses "IMPORT" afin d'ouvrir et de charger les fichiers MIB correspondants pour permettre l'interprétation totale du fichier désiré.

Dans l'exemple précédent, Cafuro va automatiquement charger et analyser les fichiers RFC1155-SMI.mib et RFC-1212.mib afin de résoudre les symboles "mgmt", "NetworkAddress", "IpAddress", "Counter", "Gauge", "TimeTicks" et "OBJECT-TYPE".

Ces fichiers seront d'abord recherchés dans le répertoire "Personal" puis dans le répertoire "Common" et enfin dans le répertoire "Legacy". Cet ordre de recherche permet à un utilisateur de modifier un fichier MIB quelconque et que ce fichier soit utilisé en priorité par rapport aux fichiers "standards".

3-3 - La vue "Browser"

La vue "Browser" permet d'afficher sous forme d'un arbre hiérarchisé les informations issues des fichiers MIB chargés :

La vue Browser

Sur la partie gauche de la vue, on retrouve l'arbre hiérarchisé, sur la partie droite, on trouve les détails concernant l'élément sélectionné dans la partie gauche de l'arbre. Les icônes utilisées dans la partie gauche de l'arbre sont les suivantes :

Icône

Signification

Cette icône est utilisée pour représenter un objet MIB dont le type est inconnu. Si vous voyez cette icône, n'hésitez pas à nous transmettre le fichier MIB analysé afin de faire évoluer le programme.

Cette icône est utilisée pour afficher des objets SMI dont le type est "Object Identifier".

Cette icône est utilisée pour afficher des objets SMI dont le type est "Integer".

Cette icône est utilisée pour afficher des objets SMI dont le type est "Octet String".

Cette icône est utilisée pour afficher des objets SMI dont le type est "Boolean".

Cette icône est utilisée pour afficher des objets SMI dont le type est "Bit String".

Cette icône est utilisée pour afficher des objets SMI dont le type est "Sequence of". Le type "Sequence of" est un type, semblable à une déclaration de structure, qui permet de déclarer des types composés.

Cette icône est utilisée pour afficher des objets SMI dont le type est "Sequence". Le type "Sequence" est un type qui permet de déclarer des tableaux.

Cette icône est utilisée pour afficher des objets SMI dont le type est "TRAP-TYPE". En fait, il s'agit des traps SNMP décrits en version 1.

Cette icône est utilisée pour afficher des objets SMI dont le type est "NOTIFICATION-TYPE". En fait, il s'agit des traps SNMP décrits en version 2.

Cette icône est utilisée pour afficher des objets SMI dont le type est "MODULE-IDENTITY". Voir la RFC 2578 pour plus d'information au sujet de ce type.

Cette icône est utilisée pour afficher des objets SMI dont le type est "OBJECT-IDENTITY". Voir la RFC 2578 pour plus d'information au sujet de ce type.

Cette icône est utilisée pour afficher des objets SMI dont le type est "OBJECT-GROUP". Voir la RFC 2580 pour plus d'information au sujet de ce type.

Cette icône est utilisée pour afficher des objets SMI dont le type est "NOTIFICATION-GROUP". Voir la RFC 2580 pour plus d'information au sujet de ce type.

Cette icône est utilisée pour afficher des objets SMI dont le type est "MODULE-COMPLIANCE". Voir la RFC 2580 pour plus d'information au sujet de ce type.

Cette icône est utilisée pour afficher des objets SMI dont le type est "AGENT-CAPABILITIES". Voir la RFC 2580 pour plus d'information au sujet de ce type.

Les champs affichés dans la partie droite de la fenêtre sont :

- champ "File" : c'est le nom du fichier MIB qui définit l'objet sélectionné dans l'arbre de gauche ;

- champ "Line" : c'est le numéro de ligne du fichier MIB qui définit l'objet sélectionné dans l'arbre de gauche. Si vous cliquez sur le bouton "Edit", le fichier MIB sera alors ouvert et affiché dans un éditeur de texte (Notepad par défaut) ;

- champ "Name" : c'est le nom de l'objet sélectionné ;

- champ "OID" : c'est l'OID complet de l'objet sélectionné ;

- champ "Status" : c'est le statut de l'objet sélectionné. Ce champ peut ne pas être affiché s'il n'a pas de sens pour l'objet en cours ;

- champ "Access" : c'est le mode d'accès de l'objet sélectionné. Ce champ peut ne pas être affiché s'il n'a pas de sens pour l'objet en cours ;

- champ "Type" : c'est le type de l'objet sélectionné ;

- champ "Sub-Type" : c'est le sous-type de l'objet sélectionné. Ce champ peut ne pas être affiché s'il n'a pas de sens pour l'objet en cours ;

- champ "Basic Type" : c'est le type de base de l'objet sélectionné. Quand un sous-type est dérivé d'un type de base, ce champ affiche le type de base de l'objet. Ce champ peut ne pas être affiché s'il n'a pas de sens pour l'objet en cours ;

- champ "Description" : il s'agit d'une courte description de l'objet sélectionné.

3-4 - Le chargement d'un fichier MIB

Pour charger un (ou plusieurs) fichier MIB, il suffit de faire un clic droit dans la fenêtre de gauche et de sélectionner l'option "Load". Cette action ouvre le dialogue suivant :

Le chargement d'un fichier MIB

Ce dialogue permet de choisir le ou les fichiers MIB à charger, une fois que le choix est fait, il suffit de cliquer sur le bouton "Load" pour chercher le ou les fichiers sélectionnés.

Le bouton radio "All modules" / "Selected modules" permet d'afficher tous les modules chargés même ceux qui sont chargés implicitement par les clauses IMPORT ou bien alors uniquement les modules sélectionnés par l'utilisateur.

4 - La vue des requêtes SNMP

La vue "Walker" est la vue des requêtes SNMP. Cette vue permet d'interroger un agent SNMP quelconque afin de connaitre toutes les instances des objets MIB qu'il implémente ainsi que le type et la valeur courante de ces objets. Les requêtes SNMP exécutées lors de cette interrogation sont des requêtes SNMP GET-NEXT.

La vue des requêtes SNMP

Pour effectuer cette interrogation, il suffit de faire un clic droit dans la fenêtre et de choisir l'option "Start". Ce choix affiche le dialogue suivant :

Les paramètres SNMP

Ce dialogue permet de saisir l'adresse IP de l'agent SNMP à interroger, le numéro de port utilisé par cet agent, la valeur du timeout (en millisecondes) et le nombre de tentatives suite à un timeout. Ce dialogue permet aussi de saisir la version SNMP (version 1 ou 2c) et le nom de communauté de lecture SNMP à utiliser pour interroger l'agent.

Normalement, une telle interrogation récupère tous les OID de l'agent distant. Il est toutefois possible de réduire ce champ en saisissant le premier OID et le dernier OID à récupérer. Si le premier OID est laissé vide, la recherche démarre depuis le début, si le dernier OID est laissé vide, la recherche se poursuit jusqu'au dernier OID.

Il est aussi possible de rafraichir une valeur déjà lue en faisant un clic droit dans la fenêtre et en choisissant l'option "SNMP requests" / "GET" (ou Ctrl + G). Cette action va exécuter une requête SNMP GET de lecture pour rafraichir la valeur actuellement sélectionnée.

De même, il est aussi possible de positionner une valeur en faisant un clic droit dans la fenêtre et en choisissant l'option "SNMP requests" / "SET" (ou Ctrl + S). Cette action va exécuter une requête SNMP SET d'écriture pour positionner une nouvelle valeur à l'objet actuellement sélectionné.

Écrire une valeur SNMP

Pour cela, un nouveau dialogue s'affiche permettant de saisir le nom de communauté d'écriture (ce nom de communauté est souvent différent du nom de communauté de lecture) ainsi que la valeur à écrire. Les autres paramètres SNMP utilisés lors de cette requête sont les mêmes que ceux utilisés lors de l'interrogation de l'objet.

5 - La vue des traps SNMP

Cafuro est aussi capable de recevoir des traps SNMP. Un trap est un message SNMP envoyé de manière asynchrone par un équipement SNMP de manière à informer son superviseur qu'un événement particulier est arrivé.

Suite à des besoins d'évolution, il existe deux formats de traps différents, les traps version 1 et version 2. Cafuro est capable d'analyser et d'afficher les traps dans ces deux versions.

En général, un trap, en plus de son OID qui permet de l'identifier, est accompagné d'attributs (on parle plutôt de "variable binding" ou encore "varbind" dans la littérature SNMP) qui permettent de qualifier l'événement. Ces attributs sont aussi des OID (donc définis dans un fichier SMI) avec un type et une valeur. Cafuro est capable d'afficher les OID, types et valeurs de ces varbinds, il suffit pour cela de double cliquer sur le trap pour le "dérouler". Un nouveau double clic sur le trap ou un de ses varbinds aura pour effet de "replier" le trap.

La vue des traps SNMP

Par défaut, le récepteur de trap n'est pas actif et une action manuelle est nécessaire pour le démarrer. Il suffit de faire un clic droit dans la fenêtre et choisir l'option "Start". Cette option affiche le dialogue suivant :

La configuration de la réception des traps SNMP

Ce dialogue permet de saisir le numéro de port UDP utilisé par le récepteur de traps et aussi d'indiquer si l'on souhaite un redémarrage automatique du récepteur de traps lors du lancement de l'application.

6 - La vue des simulateurs SNMP

6-1 - Qu'est-ce qu'un simulateur ?

Un simulateur est l'exécution d'un agent SNMP émulée par Cafuro. Comme tout agent SNMP, un simulateur instancie des OID et des valeurs pour ces OID. Vous pouvez ajouter, modifier ou supprimer ces OID, les types de ces OID ainsi que leurs valeurs.

6-2 - Les emplacements des simulateurs

Les données d'un simulateur sont stockées dans un fichier externe. Ce fichier peut se situer à trois emplacements différents :

- emplacement "Legacy". Le chemin d'accès par défaut à ce répertoire est "C:\Program Files\Circitor\Cafuro\Simulators". Du fait de la sécurité particulière mise en place par Windows Vista, Windows Seven et Windows 2008 dans le répertoire "C:\Program Files", il peut être nécessaire de lancer le programme Cafuro en tant qu'administrateur pour pouvoir manipuler les simulateurs dans ce répertoire ;

- emplacement "Common". Le chemin d'accès par défaut à ce répertoire est "C:\ProgramData\Cafuro\Simulators". Ce répertoire est accessible à tous les utilisateurs connectés sur la machine. Ce répertoire n'existe pas en environnement Windows XP ;

- emplacement "Personal". Le chemin d'accès par défaut à ce répertoire est "C:\Users\<Username>\Cafuro\Simulators". Cet emplacement peut uniquement être utilisé par l'utilisateur courant.

Afin de faciliter l'organisation des simulateurs, il est possible de créer des répertoires spécifiques et de classer les différents simulateurs dans ces différents répertoires.

Toutes les données appartenant à un simulateur étant stockées dans un seul fichier externe, il est tout à fait possible de préparer un simulateur sur une machine, de copier ailleurs le fichier de ce simulateur et de lancer une instance de ce simulateur sur une autre machine. Le fichier de données d'un simulateur est un format binaire propriétaire.

6-3 - Comportement d'un simulateur vu du réseau

Un simulateur peut être interrogé avec les outils SNMP classiques (snmpwalk, snmpget, snmptable…). Une instance de simulateur, quand elle est activée, est visible depuis le réseau. Ses principales caractéristiques sont :

- un simulateur se lie (bind) à toutes les interfaces réseau de la machine hôte ;

- un simulateur utilise un numéro de port UDP spécifique sur lequel on peut l'interroger ;

- un simulateur peut accepter les versions 1 et/ou 2c du protocole SNMP. Si une requête n'utilise pas la version attendue, elle est silencieusement ignorée ;

- un simulateur possède sa propre communauté SNMP. C'est la même communauté qui est utilisée aussi bien en lecture qu'en écriture. Si une requête SNMP ne possède pas la bonne communauté, elle est silencieusement ignorée.

Tous les objets instanciés peuvent être lus et écrits (même si cette écriture n'a pas trop de sens au niveau SMI).

6-4 - La vue "Simuler"

La vue des simulateurs est organisée en trois fenêtres distinctes :

- un panneau de gauche qui montre l'arborescence des répertoires et les différents simulateurs existants dans cette arborescence ;

- un panneau en haut à droite qui rappelle les paramètres principaux du simulateur sélectionné dans l'arbre de gauche. Il est tout à fait possible de modifier les paramètres de ce simulateur à partir de cette fenêtre, les modifications apportées sont immédiatement enregistrées ;

- un panneau en bas à droite qui contient la liste des objets instanciés, leur OID, leur type ainsi que leur valeur. Les icônes utilisées dans ce panneau servent à représenter le type des objets instanciés. Ce sont les mêmes icônes que dans la vue "Walker".

La vue des simulateurs SNMP

Les icônes utilisées dans le panneau de gauche sont :

Icône

Signification

Cette icône est utilisée pour afficher un répertoire.

Cette icône est utilisée pour afficher un simulateur inactif.

Cette icône est utilisée pour afficher un simulateur actif.

Le démarrage et l'arrêt d'un simulateur se font par le menu contextuel du panneau de gauche.

6-5 - Création d'un simulateur

La création d'un simulateur se fait de la manière suivante. Il faut d'abord sélectionner le répertoire dans lequel va être créé ce simulateur, ensuite, il faut faire un clic droit et sélectionner l'option "Simulator" / "Create". Cela exécute le dialogue en trois étapes suivant :

- Étape 1 : la saisie du nom du simulateur ainsi que sa description.

Création d'un simulateur SNMP, étape 1

- Étape 2 : la saisie des paramètres réseau du simulateur à savoir : le numéro de port UDP sur lequel le simulateur est joignable, la ou les versions SNMP supportées par ce simulateur et enfin la communauté de lecture écriture de ce simulateur.

Création d'un simulateur SNMP, étape 2

- Étape 3 : la saisie des paramètres de génération des traps du simulateur à savoir l'adresse IP vers laquelle envoyer le trap, le numéro de port destination du récepteur de traps et enfin la communauté SNMP. La case à cocher "Send to last requester" permet de ne pas spécifier l'adresse IP et d'envoyer les traps à destination de la machine qui a fait la dernière requête SNMP à destination de ce simulateur.

Création d'un simulateur SNMP, étape 3

6-6 - Ajouter des objets SMI à un simulateur

À la fin de la création du simulateur, celui-ci existe mais il est vide, c'est-à-dire qu'il ne possède pas d'objet instancié. D'ailleurs, il n'est pas possible de l'activer du fait qu'il ne possède pas d'objet à instancier.

Pour rendre ce simulateur "utile", il convient de lui ajouter des objets SMI à instancier. Cela peut se faire de deux manières différentes : par spécification manuelle ou par recopie d'objets.

Pour créer un objet SMI de manière manuelle, il faut faire un clic droit dans le panneau des objets instanciés et choisir l'option "Value" / "Add". Ce choix ouvre le dialogue suivant qui permet de créer entièrement l'objet SMI en saisissant son OID, son type et sa valeur :

Ajout d'une valeur manuellement

L'autre manière plus rapide de créer des objets SMI dans un simulateur est de la faire à partir de la vue "Walker". Il suffit d'interroger un équipement, de sélectionner un ou plusieurs OID que l'on souhaite simuler, de faire un clic droit et de sélectionner l'option "Simulate". Cela va ouvrir le dialogue suivant permettant de choisir le simulateur dans lequel on souhaite rajouter les OID actuellement sélectionnés.

Ajout d'une valeur par recopie

Une fois que le simulateur possède des valeurs, il est possible de le lancer par le menu contextuel ou bien par un double clic sur son nom.

6-7 - Limitations des simulateurs

Les limitations internes des simulateurs sont les suivantes :

- un seul simulateur peut être actif à un instant donné. Démarrer un simulateur alors qu'un autre est actif va automatiquement arrêter le premier simulateur ;

- un simulateur peut instancier un maximum de 100 objets ;

- seuls cinq simulateurs (actifs ou inactifs) peuvent être gérés par Cafuro ;

- pour l'instant, un simulateur ne sait pas envoyer de trap SNMP.

Toutes ces limitations seront levées au fur et à mesure dans de prochaines versions du programme.

7 - La vue des messages de logs

Cette vue permet d'afficher les différents messages générés par l'application Cafuro. Ces messages peuvent être aussi bien des messages d'erreur que des messages de débogage afin de diagnostiquer l'origine d'un problème.

La vue des messages de log

Les icônes associées aux différents messages ont la signification suivante :

Icône

Signification

Il s'agit d'un message d'information.

Il s'agit d'un message d'erreur utilisateur comme par exemple saisir une chaine de caractères alors que c'est un nombre qui est demandé.

Il s'agit d'un message d'avertissement. L'erreur détectée n'est pas très importante et en général, le programme peut continuer sans problème.

Il s'agit d'un message d'erreur. Le programme a détecté une condition d'erreur, il ne peut pas prendre une décision correcte et demande à l'utilisateur ce qu'il doit faire.

Il s'agit d'un message fatal. Le programme ne peut pas continuer et va s'arrêter (ou se crasher) bientôt.

Il s'agit d'un message de dump utilisé pour afficher par exemple le contenu d'une structure du programme ou alors d'un paquet reçu par le réseau.

Il est possible de modifier le niveau de journalisation en activant ou en désactivant les logs par fonctionnalité. Pour cela, il faut faire un clic droit dans la fenêtre et choisir l'option "Configure". Ce choix ouvre le dialogue suivant qui permet de sélectionner les sous-systèmes qui peuvent générer des messages.

Configuration de la journalisation

8 - Conclusions

Ce document ne présente pas toutes les fonctionnalités du logiciel, il présente seulement les plus importantes, ne pas hésiter à consulter le manuel de référence pour plus d'informations.

Les "grosses" fonctionnalités attendues dans les versions à venir sont :

- support des traps dans les simulateurs ;

- programmation des simulateurs afin de rendre les variables du simulateur plus "dynamiques" et plus proches de la réalité ;

- support de la version 3 de SNMP (chiffrement et authentification) ;

- ajout d'un scanner SNMP afin de rechercher plus facilement les équipements SNMP ;

- ajout d'un filtrage dans le récepteur de traps ;

- support multilangue de l'interface graphique ;

- ajout de nouveaux fichiers MIB ;

- ajout de nouveaux OID dans la base de données statique des OID.

Cette présentation du programme Cafuro est maintenant terminée. Votre avis, vos idées et vos suggestions concernant ce logiciel m'intéressent ! Alors, après votre lecture ou après avoir essayé, n'hésitez pas : Commentez

8-1 - Remerciements

Je tiens à remercier ClaudeLELOUP pour son aide précieuse lors de la relecture de cet article.