Version du 08/01/2004

Vigor 2600We

Bewan 6104W

Configuration de l'agent SNMP et utilisation avec MRTG sous linux


Ce petit tutoriel est une synthèse des petites recherches que j'ai du effectuer pour utiliser le daemon snmp de mon routeur bewan 6104W.
Il s'agit donc seulement d'une manière possible de procéder. Ce document a simplement pour vocation d'aider les heureux possesseurs de ce routeur pour qu'ils profitent d'une focntionnalité quelques peu délaissée mais tellement utile et interessante.

Principes et définitions

  • SNMP: signifie Simple Network Management Protocol (traduisez protocole simple de gestion de réseau).
    Il s'agit d'un protocole qui permet aux administrateurs réseau de gérer les équipements du réseau.
  • MRTG: Multi Router Traffic Grapher
    Le but de ce logiciel est de construire des pages HTML avec des jolis graphes, représentant diverses choses que l'on extrait généralement d'une machine via SNMP.
  • Si vous n'êtes pas familié avec ces bébêtes, je vous propose un site très bien fait qui explique rapidement et surtout de manière très claire les principes de base: ici

    Mise en oeuvre au niveau du routeur

    Dans le menu principal, cliquez sur Contrôle d'administration et agent SNMP dans Administration système...

    Sur la partie basse du tableau auquel vous accédez, vous pouvez configurer le daemon SNMP. Par défaut, celui-ci est désactivé: Activer l'agent SNMP non coché.
    Pour activer le serveur, cochez cette option.

    Laisser les valeurs par défaut des champs: Domaine d'obtention (Get), Domaine de paramétrage (Set), Domaine de capture et Temps d'inactivité de la capture.

  • Dans le champs: Adresse IP de l'hôte d'administration, saisissez l'adresse IP de la machine linux sur laquelle sera installé MRTG. ("192.168.13.3" dans mon cas).
  • Dans le champs: Adresse IP de notification, saisissez l'adresse IP de la machine linux sur laquelle sera installé MRTG. ("192.168.13.3" dans mon cas).
  • Enfin, valider les modifications: le routeur va redemarrer.

    Mise en oeuvre sous linux

    1. Tout d'abord, il faut se procurer MRTG. Le serveur web Apache doit bien évidemment être installé.
      - Sous débian, l'installation se passe de la manière suivante:
      apt-get install mrtg
      - Sinon, procurez vous MRTG: Site officiel de MRTG
      Suivez la procédure d'installation prévue.
      A la fin de l'installation il faut choisir si l'on veut que les stats soient accessibles à tous les utilisateurs.
      Je vous conseille de répondre oui à cette question, sans quoi les stats ne seront pas consultables par tout le monde.
      Il faut aussi veiller à ce que les paquets libfreetype6 libgd1 libjpeg62 libsnmp-session-perl xfree86-common et xlibs soient installés sur le système.

    2. Ensuite il faut configurer mrtg à partir du fichier de configuration /etc/mrtg.cfg
      Pour cela, on utilise la commande cfgmaker qui permet de le générer automatiquement en allant interroger l'agent snmp du routeur:
      cfgmaker --global 'WorkDir: /var/www/mrtg' --global 'Language: French' --output /etc/mrtg.cfg public@192.168.13.2

      ATTENTION: l'adresse ip saisie après la communauté "public" doit être celle de votre routeur. Ici c'est "192.168.13.2"
      Pour plus de détails, se reporter à l'aide de la fonction.

    3. Ensuite, il faut s'assurer que le répertoire /var/www/mrtg/ est créé:
      mkdir /var/www/mrtg
      Enfin on peut générer une première fois le(les) fichier(s) html qui permettra(ont) de visualiser les statistiques:
      indexmaker /etc/mrtg.cfg --columns=1 --output /var/www/mrtg/index.html

    NB: la commande mrtg permet de regénérer le fichier index.html en cas de modification du fichier /etc/mrtg.cfg

    Voilà, dans l'état actuel des choses vous devriez obtenir ceci, à l'adresse http://pclinux/mrtg/: (sans graphe affiché puisque mrtg vient juste d'être lancé).


    Ma modeste connexion Tele2 ADSL ...

    Ce qui est marrant, c'est que les graphes sont exactement opposés au niveau émission réception étant donné que l'ethernet n'échange des informations qu'avec le modem puisque mon wifi était désactivé.

    Par contre n'ayant pas active le wifi sur mon routeur au moment de l'installation, le monitoring de ce dernier n'apparait pas.
    Je vais me pencher sur le monitoring de connexion VPN. J'espère que cela peut se faire et vous tiendrai au courant le cas échéant.

    Pour info, le fait de cliquer sur l'un des graphes affiche une page détaillée de ce dernier. Ainsi, on peut notamment visualiser:

  • - Le graphique quotidien,
  • - Le graphique hebdomadaire,
  • -Le graphique annuel,
  • - les relevés max, moyen, actuel...
  • Pour aller plus loin...

    Il est possible d'ajouter de nombreux graphique permettant de visualiser différents états tels que l'évolution du temps de latence (ping) au cours du temps, voulume transmis, reçu, etc...


    Ma modeste connexion Tele2 ADSL ... Et oui, c'est encore elle!

    Pour ce faire, je vous propose un script sympatique issu du site http://www.linux-sottises.net: ici qui effectue 3 ping vers votre FAI et retourne les MIN et MAX. Il faudra bien entendu modifier l'adresse IP pour mettre celle de votre FAI ou du site de votre choix dans le script.

    Il faudra ensuite rajouter les lignes suivantes au fichier /etc/mrtg.cfg et rejénérer le fichier index.html pour prendre en compte la modification:
    #---------Ping Nerim--------------------
    Target[ping_nerim]: `/webnew/mrtg/ping-nerim`
    Options[ping_nerim]: nopercent,growright,gauge,noinfo, nobanner
    MaxBytes[ping_nerim]: 10000
    AbsMax[ping_nerim]: 10000
    YLegend[ping_nerim]: Latence
    ShortLegend[ping_nerim]: ms
    Legend1[ping_nerim]: Latence max en ms
    Legend2[ping_nerim]: Latence min en ms
    LegendI[ping_nerim]: Latence Max:
    LegendO[ping_nerim]: Latence Min:
    Title[ping_nerim]: Ping sur loopback1-lns101-tip-telehouse.nerim.net
    PageTop[ping_nerim]: Latence loopback1-lns101-tip-telehouse.nerim.net
    WithPeak[ping_nerim]:wmy
    Legend4[ping_nerim]: Max de la latence min
    Legend3[ping_nerim]: Max de la latence max
    #--------end ping-----------------------------

    Il est aussi possible d'administrer des interfaces ne faisant pas parti du routeur telles ques les interfaces ethernet d'un serveur linux, son taux d'occupation processeur / ram, erreurs, disponibilité, sollicitations d'un serveur Apache, etc...
    Pour cela, il est nécessaire d'installer un daemon snmp sur les machines à surveiller.
    Sous Debian:
    apt-get install snmpd

    Les paquets libsnmp-base et libsnmp4.2 seront aussi installés. Ensuite aller dans le fichier de configuration /etc/snmp/snmpd.conf et ajouter cette ligne:
    com2sec readonly default public
    Vous devrez sûrement commenter cette ligne:
    #com2sec paranoia default public

    Nous pourrons éventuellement détailler ces manipulations dans une future révision du présent document...
    Des scripts en tout genre se trouvant à profusion sur le net, je vous laisse la joie des les implémenter ;-)

    NB: Il faudra tout de même penser à modifier le fichier /etc/mrtg.cfg afin de prendre en compte les modifications. Pour cela, suivre la démarche énoncée en début.

    Conclusion

    Il y a une foule d'informations qui intéressent les administrateurs et dont ils aimeraient disposer à distance via le réseau.
    Il est clair que dès que le parc commence à contienir plusieurs machines, c'est tout de même plus agréable de disposer de toutes les informations en temps réel et de façon centralisée.

    De plus, l'administrateur peut apprécier de pouvoir régler tel ou tel paramètre sans avoir à se déplacer sur le site de la machine concernée.

    SNMP est exactement conçu pour répondre à tous ces besoins.


    © Neo17 pour WlanFr - janvier 2004