Management Information Base: Unterschied zwischen den Versionen

Aus Foxwiki
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 2: Zeile 2:


== Beschreibung ==
== Beschreibung ==
Eine '''Management Information Base''' ('''MIB'''; deutsch ''Verwaltungsinformationsbasis'') ist eine Beschreibung, die Definitionen von Management-Informationen enthält, die dazu benutzt werden können, ein an ein [[Computernetzwerk|Netzwerk]] angeschlossenes Gerät von ferne zu überwachen, zu konfigurieren und steuern.
Eine '''Management Information Base''' ('''MIB'''; deutsch ''Verwaltungsinformationsbasis'') ist eine Beschreibung, die Definitionen von Management-Informationen enthält, die dazu benutzt werden können, ein an ein [[Computernetzwerk|Netzwerk]] angeschlossenes Gerät von ferne zu überwachen, zu konfigurieren und steuern
* Für diese Funktionen wird ein Netzwerk-Management-Protokoll (zum Beispiel [[SNMP]]) benutzt.
* Für diese Funktionen wird ein Netzwerk-Management-Protokoll (zum Beispiel [[SNMP]]) benutzt
* Die Informationen werden ''Managed Objects'' (''verwaltete Objekte'') genannt.
* Die Informationen werden ''Managed Objects'' (''verwaltete Objekte'') genannt


== Definition ==
== Definition ==
Für das auf SNMP basierende Netzwerkmanagement wurde als Rahmenwerk für die Beschreibung dieser MOs (Managed Objects) eine generische [[Structure of Management Information|SMI]] (Structure of Management Information) definiert.
Für das auf SNMP basierende Netzwerkmanagement wurde als Rahmenwerk für die Beschreibung dieser MOs (Managed Objects) eine generische [[Structure of Management Information|SMI]] (Structure of Management Information) definiert
* Dabei handelt es sich um eine in der [[Abstraktion (Informatik)#Spezifikationssprachen|Spezifikationssprache]] [[Abstract Syntax Notation One|ASN.1]] (Abstract Syntax Notation One) geschriebene Regelsammlung zur Beschreibung von Objekten des Netzwerkmanagements.
* Dabei handelt es sich um eine in der [[Abstraktion (Informatik)#Spezifikationssprachen|Spezifikationssprache]] [[Abstract Syntax Notation One|ASN.1]] (Abstract Syntax Notation One) geschriebene Regelsammlung zur Beschreibung von Objekten des Netzwerkmanagements
* Die SMI beschreibt, wie die Informationen angeordnet sind, welche Datenformate und Operationen zugelassen sind und wie die MIB überhaupt spezifiziert wird.
* Die SMI beschreibt, wie die Informationen angeordnet sind, welche Datenformate und Operationen zugelassen sind und wie die MIB überhaupt spezifiziert wird
* Ein Managed Object ist kein wirklicher Datenwert, sondern es stellt die Beschreibungen dieses Datenwertes dar.
* Ein Managed Object ist kein wirklicher Datenwert, sondern es stellt die Beschreibungen dieses Datenwertes dar
* Anders gesagt: „Die MIB enthält keine Daten, sie beschreibt nur, wo diese zu finden sind und wie sie aussehen.“
* Anders gesagt: „Die MIB enthält keine Daten, sie beschreibt nur, wo diese zu finden sind und wie sie aussehen.“


== MIB-Module ==
== MIB-Module ==
[[Bild:SNMP.MIB-Tree.PNG|mini|400px|Der MIB-Baum]]
[[Bild:SNMP.MIB-Tree.PNG|mini|400px|Der MIB-Baum]]
In RFC 1155 wurde eine globale MIB definiert, die sogenannte MIB I, die inzwischen mehrfach erweitert wurde.
In RFC 1155 wurde eine globale MIB definiert, die sogenannte MIB I, die inzwischen mehrfach erweitert wurde
* Diese Erweiterungen sind Verzweigungen von diesem globalen MIB-Baum.
* Diese Erweiterungen sind Verzweigungen von diesem globalen MIB-Baum
* Die Verzweigungen werden ''MIB-Module'' genannt, oft wird aber ''MIB'' als Synonym für ''MIB-Modul'' verwendet.
* Die Verzweigungen werden ''MIB-Module'' genannt, oft wird aber ''MIB'' als Synonym für ''MIB-Modul'' verwendet


Die Managed Objects werden durch einen eindeutigen [[Object Identifier]] (kurz: ''OID'') identifiziert.
Die Managed Objects werden durch einen eindeutigen [[Object Identifier]] (kurz: ''OID'') identifiziert
* Dieser OID kann in zwei Formen dargestellt werden: als eine Zahlenkette (.1.3.6.1.4.1) oder durch eine ASCII-Repräsentation (.iso.org.dod.internet.private.enterprise).
* Dieser OID kann in zwei Formen dargestellt werden: als eine Zahlenkette (.1.3.6.1.4.1) oder durch eine ASCII-Repräsentation (.iso.org.dod.internet.private.enterprise)
* Diese beiden Formen können auch gemischt werden (private.1).
* Diese beiden Formen können auch gemischt werden (private.1)
* Die OID beschreibt den Weg durch die hierarchisch aufgebaute MIB zum Managed Object.
* Die OID beschreibt den Weg durch die hierarchisch aufgebaute MIB zum Managed Object


Verschiedene [[Request for Comments|RFCs]] definieren MIB-Module, z. B. 
Verschiedene [[Request for Comments|RFCs]] definieren MIB-Module, z. B. 
* definiert RFC 1157 ein MIB-Modul für SNMP oder RFC 1213 die MIB-II für TCP/IP.
* definiert RFC 1157 ein MIB-Modul für SNMP oder RFC 1213 die MIB-II für TCP/IP
* Letztere ist in allen Netzwerk/Hardwaren enthalten.
* Letztere ist in allen Netzwerk/Hardwaren enthalten
* Alle Komponenten, die dieses MIB-Modul unterstützen, stellen dieselben Daten an derselben Stelle bereit.
* Alle Komponenten, die dieses MIB-Modul unterstützen, stellen dieselben Daten an derselben Stelle bereit


Unter dem Zweig „.iso.org.dod.internet.private.enterprises“ können Firmen eigene (''private'') MIB-Module anlegen.
Unter dem Zweig „.iso.org.dod.internet.private.enterprises“ können Firmen eigene (''private'') MIB-Module anlegen
* Sie benötigen dafür eine Enterprise ID, die bei der [[IANA]] kostenlos beantragt werden kann.
* Sie benötigen dafür eine Enterprise ID, die bei der [[IANA]] kostenlos beantragt werden kann


== Anwendung ==
== Anwendung ==
Eine MIB wird als ASCII-Datei in der SMI-Syntax geschrieben.
Eine MIB wird als ASCII-Datei in der SMI-Syntax geschrieben
* Hier werden Verzweigungen festgelegt, und für jedes Managed Object werden Angaben über den [[Datentyp]] (SYNTAX), die Zugriffsrechte (ACCESS), den Status (STATUS) und die Position in der MIB gemacht.
* Hier werden Verzweigungen festgelegt, und für jedes Managed Object werden Angaben über den [[Datentyp]] (SYNTAX), die Zugriffsrechte (ACCESS), den Status (STATUS) und die Position in der MIB gemacht
* Außerdem ist eine Beschreibung (DESCRIPTION) des Objektes enthalten.
* Außerdem ist eine Beschreibung (DESCRIPTION) des Objektes enthalten


Diese ASCII-Definition kann durch einen MIB-Compiler aufbereitet und in eine Form gebracht werden, die eine weitere Verwendung ermöglicht.
Diese ASCII-Definition kann durch einen MIB-Compiler aufbereitet und in eine Form gebracht werden, die eine weitere Verwendung ermöglicht
* Beispielsweise kann ein solcher Compiler fertigen Code erzeugen, der bei der Programmierung des [[Software-Agent|Agenten]] benutzt werden kann, der die MIB enthalten soll.
* Beispielsweise kann ein solcher Compiler fertigen Code erzeugen, der bei der Programmierung des [[Software-Agent|Agenten]] benutzt werden kann, der die MIB enthalten soll
* Der Agent stellt dann auf Anfrage unter Angabe einer OID den in der MIB beschriebenen Wert zur Verfügung.
* Der Agent stellt dann auf Anfrage unter Angabe einer OID den in der MIB beschriebenen Wert zur Verfügung


=== Syntaxbeispiel ===
=== Syntaxbeispiel ===
Zeile 45: Zeile 45:


  system  OBJECT IDENTIFIER ::= { mib-2 1 }
  system  OBJECT IDENTIFIER ::= { mib-2 1 }
 
  sysDescr OBJECT-TYPE
  sysDescr OBJECT-TYPE
     SYNTAX  DisplayString (SIZE (0..255))
     SYNTAX  DisplayString (SIZE (0..255))
Zeile 59: Zeile 59:
     ::= { system 1 }
     ::= { system 1 }


Zunächst wird ein Zweig (OBJECT IDENTIFIER) der MIB definiert: ''system'' ist eine Verzweigung von ''mib-2'' mit der Nummer 1.
Zunächst wird ein Zweig (OBJECT IDENTIFIER) der MIB definiert: ''system'' ist eine Verzweigung von ''mib-2'' mit der Nummer 1
* Die vollständige OID für diese Verzweigung würde 1.3.6.1.2.1.1 lauten.
* Die vollständige OID für diese Verzweigung würde 1.3.6.1.2.1.1 lauten
* Danach wird ein Objekt (OBJECT-TYPE) definiert.
* Danach wird ein Objekt (OBJECT-TYPE) definiert
* Dieses ist eine [[Zeichenkette]], die eine Beschreibung der Komponente enthalten soll.
* Dieses ist eine [[Zeichenkette]], die eine Beschreibung der Komponente enthalten soll
* Sie kann nur gelesen werden und ist ein Pflichtfeld bei der Implementierung der MIB.
* Sie kann nur gelesen werden und ist ein Pflichtfeld bei der Implementierung der MIB
* Ihre Position ist die Nummer 1 unter ''system''.
* Ihre Position ist die Nummer 1 unter ''system''
* Die vollständige OID für dieses Objekt würde 1.3.6.1.2.1.1.1 lauten.
* Die vollständige OID für dieses Objekt würde 1.3.6.1.2.1.1.1 lauten


=== Anwendungsbeispiel ===
=== Anwendungsbeispiel ===
Wenn ein [[Netzwerkmanagement|Netzwerkmanager]] wissen möchte, was für Komponenten im Netzwerk vorhanden sind, kann er die oben beschriebene Zeichenkette auslesen.
Wenn ein [[Netzwerkmanagement|Netzwerkmanager]] wissen möchte, was für Komponenten im Netzwerk vorhanden sind, kann er die oben beschriebene Zeichenkette auslesen
* Er kann dazu ein ''SNMP-get'' an alle Komponenten im Netzwerk senden, in dem die OID 1.3.6.1.2.1.1.1.0 enthalten ist.
* Er kann dazu ein ''SNMP-get'' an alle Komponenten im Netzwerk senden, in dem die OID 1.3.6.1.2.1.1.1.0 enthalten ist
* Die Komponenten geben dann in ihrer Antwort die Zeichenkette mit ihrer Beschreibung zurück.
* Die Komponenten geben dann in ihrer Antwort die Zeichenkette mit ihrer Beschreibung zurück


[[Bild:SNMP.Datenabfrage.PNG|framed|center|Die MIB bei der Bearbeitung einer SNMP-Anfrage]]
[[Bild:SNMP.Datenabfrage.PNG|framed|center|Die MIB bei der Bearbeitung einer SNMP-Anfrage]]


Hier wird auch wieder klar, warum die MIB keine Datenbank ist, sondern eher mit einem Adressverzeichnis vergleichbar ist: Die Beschreibung selbst hält jede Komponente im Netzwerk für sich vor, sie ist aber bei allen Komponenten an der gleichen Stelle (der OID) und in der gleichen (in der MIB festgelegten) Form zu finden.
Hier wird auch wieder klar, warum die MIB keine Datenbank ist, sondern eher mit einem Adressverzeichnis vergleichbar ist: Die Beschreibung selbst hält jede Komponente im Netzwerk für sich vor, sie ist aber bei allen Komponenten an der gleichen Stelle (der OID) und in der gleichen (in der MIB festgelegten) Form zu finden


<noinclude>
<noinclude>

Version vom 15. Februar 2024, 11:56 Uhr

topic - Kurzbeschreibung

Beschreibung

Eine Management Information Base (MIB; deutsch Verwaltungsinformationsbasis) ist eine Beschreibung, die Definitionen von Management-Informationen enthält, die dazu benutzt werden können, ein an ein Netzwerk angeschlossenes Gerät von ferne zu überwachen, zu konfigurieren und steuern

  • Für diese Funktionen wird ein Netzwerk-Management-Protokoll (zum Beispiel SNMP) benutzt
  • Die Informationen werden Managed Objects (verwaltete Objekte) genannt

Definition

Für das auf SNMP basierende Netzwerkmanagement wurde als Rahmenwerk für die Beschreibung dieser MOs (Managed Objects) eine generische SMI (Structure of Management Information) definiert

  • Dabei handelt es sich um eine in der Spezifikationssprache ASN.1 (Abstract Syntax Notation One) geschriebene Regelsammlung zur Beschreibung von Objekten des Netzwerkmanagements
  • Die SMI beschreibt, wie die Informationen angeordnet sind, welche Datenformate und Operationen zugelassen sind und wie die MIB überhaupt spezifiziert wird
  • Ein Managed Object ist kein wirklicher Datenwert, sondern es stellt die Beschreibungen dieses Datenwertes dar
  • Anders gesagt: „Die MIB enthält keine Daten, sie beschreibt nur, wo diese zu finden sind und wie sie aussehen.“

MIB-Module

Der MIB-Baum

In RFC 1155 wurde eine globale MIB definiert, die sogenannte MIB I, die inzwischen mehrfach erweitert wurde

  • Diese Erweiterungen sind Verzweigungen von diesem globalen MIB-Baum
  • Die Verzweigungen werden MIB-Module genannt, oft wird aber MIB als Synonym für MIB-Modul verwendet

Die Managed Objects werden durch einen eindeutigen Object Identifier (kurz: OID) identifiziert

  • Dieser OID kann in zwei Formen dargestellt werden: als eine Zahlenkette (.1.3.6.1.4.1) oder durch eine ASCII-Repräsentation (.iso.org.dod.internet.private.enterprise)
  • Diese beiden Formen können auch gemischt werden (private.1)
  • Die OID beschreibt den Weg durch die hierarchisch aufgebaute MIB zum Managed Object

Verschiedene RFCs definieren MIB-Module, z. B. 

  • definiert RFC 1157 ein MIB-Modul für SNMP oder RFC 1213 die MIB-II für TCP/IP
  • Letztere ist in allen Netzwerk/Hardwaren enthalten
  • Alle Komponenten, die dieses MIB-Modul unterstützen, stellen dieselben Daten an derselben Stelle bereit

Unter dem Zweig „.iso.org.dod.internet.private.enterprises“ können Firmen eigene (private) MIB-Module anlegen

  • Sie benötigen dafür eine Enterprise ID, die bei der IANA kostenlos beantragt werden kann

Anwendung

Eine MIB wird als ASCII-Datei in der SMI-Syntax geschrieben

  • Hier werden Verzweigungen festgelegt, und für jedes Managed Object werden Angaben über den Datentyp (SYNTAX), die Zugriffsrechte (ACCESS), den Status (STATUS) und die Position in der MIB gemacht
  • Außerdem ist eine Beschreibung (DESCRIPTION) des Objektes enthalten

Diese ASCII-Definition kann durch einen MIB-Compiler aufbereitet und in eine Form gebracht werden, die eine weitere Verwendung ermöglicht

  • Beispielsweise kann ein solcher Compiler fertigen Code erzeugen, der bei der Programmierung des Agenten benutzt werden kann, der die MIB enthalten soll
  • Der Agent stellt dann auf Anfrage unter Angabe einer OID den in der MIB beschriebenen Wert zur Verfügung

Syntaxbeispiel

Syntaxbeispiel aus der MIB-II, definiert in RFC 1213:

system   OBJECT IDENTIFIER ::= { mib-2 1 }
sysDescr OBJECT-TYPE
   SYNTAX  DisplayString (SIZE (0..255))
   ACCESS  read-only
   STATUS  mandatory
   DESCRIPTION
      "A textual description of the entity.  This value
       should include the full name and version
       identification of the system's hardware type,
       software operating-system, and networking
       software.  It is mandatory that this only contain
       printable ASCII characters."
   ::= { system 1 }

Zunächst wird ein Zweig (OBJECT IDENTIFIER) der MIB definiert: system ist eine Verzweigung von mib-2 mit der Nummer 1

  • Die vollständige OID für diese Verzweigung würde 1.3.6.1.2.1.1 lauten
  • Danach wird ein Objekt (OBJECT-TYPE) definiert
  • Dieses ist eine Zeichenkette, die eine Beschreibung der Komponente enthalten soll
  • Sie kann nur gelesen werden und ist ein Pflichtfeld bei der Implementierung der MIB
  • Ihre Position ist die Nummer 1 unter system
  • Die vollständige OID für dieses Objekt würde 1.3.6.1.2.1.1.1 lauten

Anwendungsbeispiel

Wenn ein Netzwerkmanager wissen möchte, was für Komponenten im Netzwerk vorhanden sind, kann er die oben beschriebene Zeichenkette auslesen

  • Er kann dazu ein SNMP-get an alle Komponenten im Netzwerk senden, in dem die OID 1.3.6.1.2.1.1.1.0 enthalten ist
  • Die Komponenten geben dann in ihrer Antwort die Zeichenkette mit ihrer Beschreibung zurück
Die MIB bei der Bearbeitung einer SNMP-Anfrage

Hier wird auch wieder klar, warum die MIB keine Datenbank ist, sondern eher mit einem Adressverzeichnis vergleichbar ist: Die Beschreibung selbst hält jede Komponente im Netzwerk für sich vor, sie ist aber bei allen Komponenten an der gleichen Stelle (der OID) und in der gleichen (in der MIB festgelegten) Form zu finden


Anhang

Siehe auch

Links

Weblinks
  1. https://de.wikipedia.org/wiki/Management_Information_Base