Outils pour utilisateurs

Outils du site


Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
215snmp:40_les_mibs [le 10/07/2010 à 14:20] prof215snmp:40_les_mibs [le 30/06/2018 à 15:42] (Version actuelle) prof
Ligne 22: Ligne 22:
 Tout constructeur d'un matériel spécifique peut développer une MIB pour ce matériel, cette MIB devra prendre sa place dans l'arbre, sans piétiner celle des voisins, et c'est le rôle de l'IETF ou de l'IANA d'attribuer un point de branchement pour le matériel de ce constructeur. Tout constructeur d'un matériel spécifique peut développer une MIB pour ce matériel, cette MIB devra prendre sa place dans l'arbre, sans piétiner celle des voisins, et c'est le rôle de l'IETF ou de l'IANA d'attribuer un point de branchement pour le matériel de ce constructeur.
  
-Une MIB ,'étant finalement qu'une branche, elle peut nécessiter l'usage de d'autres MIBS pour se rattacher à l'arbre. Prenons un exemple. HP peut développer une MIB générique à tous ses matériels qui viendrait se greffer sur la branche ''private.enterprise'', puis des MIBs spécifiques à chaque matériel qui viendraient elles-mêmes se développer dans la MIB générique de HP.+Une MIB n'étant finalement qu'une branche, elle peut nécessiter l'usage de d'autres MIBS pour se rattacher à l'arbre. Prenons un exemple. HP peut développer une MIB générique à tous ses matériels qui viendrait se greffer sur la branche ''private.enterprise'', puis des MIBs spécifiques à chaque matériel qui viendraient elles-mêmes se développer dans la MIB générique de HP.
 ==== Illustration ==== ==== Illustration ====
 Sur l'arborescence en illustration, nous constatons que le sommet est représenté par un point originel, puisque chaque embranchement dispose d'un nom (iso, org, internet...) et aussi d'un numéro (1, 3, 6, 1...). Sur l'arborescence en illustration, nous constatons que le sommet est représenté par un point originel, puisque chaque embranchement dispose d'un nom (iso, org, internet...) et aussi d'un numéro (1, 3, 6, 1...).
Ligne 93: Ligne 93:
 Un switch est tout de même un objet un peu particulier et ce que nous avons vu jusqu'ici va atteindre ses limites. Un switch est tout de même un objet un peu particulier et ce que nous avons vu jusqu'ici va atteindre ses limites.
  
-Ainsi, au bout de la branche ''.1.3.6.1.2.1.17.1.2'', nous devons normalement trouver le nombre de ports dont dispose le switch (il faut être in initié pour le savoir). Le bout de la branche devant obligatoirement se terminer par un ''0'', nous l'avons remarqué lors des démonstrations précédentes, posons la question avec cette fois-ci un ''snmpget'', qui ne sait extraire qu'une seule information, et qui doit donc être obligatoirement posée en indiquant le bout de la branche :+Ainsi, au bout de la branche ''.1.3.6.1.2.1.17.1.2'', nous devons normalement trouver le nombre de ports dont dispose le switch (il faut être un initié pour le savoir). Le bout de la branche devant obligatoirement se terminer par un ''0'', nous l'avons remarqué lors des démonstrations précédentes, posons la question avec cette fois-ci un ''snmpget'', qui ne sait extraire qu'une seule information, et qui doit donc être obligatoirement posée en indiquant le bout de la branche :
   $ snmpget -Of -c public -v 2c 172.16.252.2 .1.3.6.1.2.1.17.1.2.0   $ snmpget -Of -c public -v 2c 172.16.252.2 .1.3.6.1.2.1.17.1.2.0
   .iso.org.dod.internet.mgmt.mib-2.17.1.2.0 = INTEGER: 50   .iso.org.dod.internet.mgmt.mib-2.17.1.2.0 = INTEGER: 50
Ligne 109: Ligne 109:
 autrement dit, il manque des pages dans le dictionnaire, ''snmpget'' sait traduire dans la suite ''.1.3.6.1.2.1.17.1.2.0'' la seule partie ''.1.3.6.1.2.1'' et pas la suite ''17.1.2'', c'est pourquoi cette suite reste numérique dans la réponse. La bonne nouvelle dans la mauvaise nouvelle, c'est qu'il reste possible d'interroger un agent SNMP sur une information, même si l'on ne dispose pas des pages manquantes relatives à la définition de cette information, du moment que l'on connait le chemin numérique pour y accéder. autrement dit, il manque des pages dans le dictionnaire, ''snmpget'' sait traduire dans la suite ''.1.3.6.1.2.1.17.1.2.0'' la seule partie ''.1.3.6.1.2.1'' et pas la suite ''17.1.2'', c'est pourquoi cette suite reste numérique dans la réponse. La bonne nouvelle dans la mauvaise nouvelle, c'est qu'il reste possible d'interroger un agent SNMP sur une information, même si l'on ne dispose pas des pages manquantes relatives à la définition de cette information, du moment que l'on connait le chemin numérique pour y accéder.
  
-Nous allons tout de même demander à notre ''snmpget'' d'intégrer ces pages qui manquent (cette MIB) que nous avons récupérée grâce au paquet ''snmp-mibs-downloader'' que nous avons installé avec un ''aptitude install'' des familles et qui nous a mis tout ça dans ''/usr/share/mibs'' :+Nous allons tout de même demander à notre ''snmpget'' d'intégrer ces pages qui manquent (cette MIB((appelée ''BRIDGE-MIB'' et définie dans la [[http://www.faqs.org/rfcs/rfc1493.html|rfc 1493]]))), que nous avons récupérée grâce au paquet ''snmp-mibs-downloader'' que nous avons installé avec un ''aptitude install'' des familles et qui nous a mis tout ça dans ''/usr/share/mibs'' :
 <html><pre class="code"> <html><pre class="code">
-snmpget <span class="bhly">-m /usr/share/mibs/ietf/BRIDGE-MIB</span> -Of -c public -v 2c 172.16.252.2 .1.3.6.1.2.1.17.1.2.0+snmpget <span class="bhly">-m +/usr/share/mibs/ietf/BRIDGE-MIB</span> -Of -c public -v 2c 172.16.252.2 .1.3.6.1.2.1.17.1.2.0
 .iso.org.dod.internet.mgmt.mib-2.<span class="hly">dot1dBridge.dot1dBase.dot1dBaseNumPorts</span>.0 = INTEGER: 50 ports .iso.org.dod.internet.mgmt.mib-2.<span class="hly">dot1dBridge.dot1dBase.dot1dBaseNumPorts</span>.0 = INTEGER: 50 ports
 </pre></html> </pre></html>
Ligne 132: Ligne 132:
 il s'agit d'un switch DGS-3024, modèle notoirement proposé par D-LINK. il s'agit d'un switch DGS-3024, modèle notoirement proposé par D-LINK.
  
-  $ snmpget -m /usr/share/mibs/ietf/BRIDGE-MIB -On -c public -v 2c 172.16.252.4 .iso.org.dod.internet.mgmt.mib-2.dot1dBridge.dot1dBase.dot1dBaseNumPorts.0+  $ snmpget -m +/usr/share/mibs/ietf/BRIDGE-MIB -On -c public -v 2c 172.16.252.4 .iso.org.dod.internet.mgmt.mib-2.dot1dBridge.dot1dBase.dot1dBaseNumPorts.0
   .1.3.6.1.2.1.17.1.2.0 = INTEGER: 24 ports   .1.3.6.1.2.1.17.1.2.0 = INTEGER: 24 ports
  
Ligne 143: Ligne 143:
 Encore une fois, pourquoi se passer d'un peu d'humour ? Encore une fois, pourquoi se passer d'un peu d'humour ?
  
- ~$ snmpwalk -Of -c public -v 1 172.16.252.2 enterprises+  ~$ snmpwalk -Of -c public -v 1 172.16.252.2 enterprises
  
 va nous donner : va nous donner :
Ligne 166: Ligne 166:
  
 Sans les MIBs qui vont avec, il sera quasiment impossible de savoir à quoi correspondent ces informations, car les MIBs, en plus de traduire les chemins numériques en texte, peuvent donner des indications supplémentaires sur la nature de l'information extraite. Sans les MIBs qui vont avec, il sera quasiment impossible de savoir à quoi correspondent ces informations, car les MIBs, en plus de traduire les chemins numériques en texte, peuvent donner des indications supplémentaires sur la nature de l'information extraite.
 +
 ===== Mais encore... ===== ===== Mais encore... =====
 Les MIBs ne se contentent pas de fournir une traduction entre les modes numériques et textuels. Elles fournissent aussi quelques explications sur les paramètres qu'elles prennent en charge. La commande ''snmptranslate'' permet, une fois domestiquée, d'obtenir quelque documentation supplémentaire : Les MIBs ne se contentent pas de fournir une traduction entre les modes numériques et textuels. Elles fournissent aussi quelques explications sur les paramètres qu'elles prennent en charge. La commande ''snmptranslate'' permet, une fois domestiquée, d'obtenir quelque documentation supplémentaire :
Ligne 254: Ligne 255:
 </code> </code>
 Notez également que ceci peut parfois tourner au jeu de piste. Notez également que ceci peut parfois tourner au jeu de piste.
-{{ :215snmp:capture-tkmib.png|TKmib}} 
-===== Et en mode graphique ? ===== 
-Il existe un outil, ''TKmib'' qui, comme son nom l'indique, utilise TK et n'est donc pas des plus esthétiques. Ce genre d'outil, nomme « browser de MIBs » permet de faire de façon graphique, ce que l'on a vu avec ''nsmpwalk'', ''snmpget'' et ''snmptranslate''. 
  
-Ce n'est pas très joli, mais ça fait le travail. +==== Interro surprise ====
- +
-==== Interro surprise ====+
 Est-ce que ceci aurait des chances de fonctionner ? Est-ce que ceci aurait des chances de fonctionner ?
   ~$ snmptranslate -Ot -Td .1.3.6.1.2.1.17.1.2.0   ~$ snmptranslate -Ot -Td .1.3.6.1.2.1.17.1.2.0
 Et ceci : Et ceci :
   ~$ snmptranslate -Ot -Td -m /usr/share/mibs/ietf/BRIDGE-MIB .1.3.6.1.2.1.17.1.2.0   ~$ snmptranslate -Ot -Td -m /usr/share/mibs/ietf/BRIDGE-MIB .1.3.6.1.2.1.17.1.2.0
 +  
 Vous trouverez les réponses à la fin de l'exposé. Vous trouverez les réponses à la fin de l'exposé.
 +
 +===== Et en mode graphique ? =====
 +{{ :215snmp:capture-tkmib.png?300|TKmib}}
 +Il existe un outil, ''TKmib'' qui, comme son nom l'indique, utilise TK et n'est donc pas des plus esthétiques. Ce genre d'outil, nommé « browser de MIBs » permet de faire de façon graphique, ce que l'on a vu avec ''nsmpwalk'', ''snmpget'' et ''snmptranslate''.
 +
 +Ce n'est pas très joli, mais ça fait le travail.
 +
Les MIBs: Dernière modification le: 10/07/2010 à 14:20 par prof