Befehl "clsnmp"

Zweck

Der BefehlAIX® clsnmp stellt die SNMP-Managerfunktion der AIX -Shell bereit, um SNMP-Agenten nach Netzmanagementinformationen abzufragen.

Syntax

clsnmp [ -d DebugLevel ] [ -h TargetHost ] [ -c Community ] [ -t TimeOutValue ] [ -r RetryNumber ] [ -n NonRepeaters ] [ -m MaxRepetitions ] [ -p PortNumber ] [ -v ] [ -f ConfigurationFile ] [ -? ] Funktion [ MIBVariable [ VariableType ] [ Value ] [ ... ] ]

Beschreibung

Mit dem Befehl clsnmp können Sie SNMP-Anforderungen an Agenten absetzen und die von Agenten zurückgegebenen SNMP-Antworten verarbeiten. Die AIX -Befehle clsnmp unterstützen die Ausgabe von Anforderungen von SNMPv1, SNMPv2cund SNMPv3 .

SNMP-Anforderungstypen

findname
Sendet eine Anforderung zum Suchen des Textnamens für eine angegebene MIB-Variable ab, deren interner ASN.1-Wert am besten mit dem eingegebenen ASN.1-Wert übereinstimmt. Bei der Suche wird zuerst die Datei /etc/mib.defs überprüft. Wenn kein entsprechender Textname gefunden wird, wird die Suche mit der kompilierten MIB fortgesetzt. Es ist nur eine einzige MIB-Variable pro Aufruf von clsnmp findname- zulässig.
abrufen
Sendet eine Anforderung zur Abfrage einer bestimmten MIB-Variablen (Management Information Base) an einen SNMP-Agenten. clsnmp wartet dann bis zum Ablauf des Zeitlimits auf eine Antwort.
getbulk
Ruft den Wert der Variablen in der mit dem OID- oder MIB-Variablennamen angegebenen MIB-Struktur ab. Eine einzige getbulk-Anforderung hat dieselbe Funktion wie eine Serie von getnext-Anforderungen, allerdings mit weniger Datenaustauschoperationen zwischen dem Befehl clsnmp und dem SNMP-Agenten.
getnext
Sendet eine Anforderung für die nächste MIB-Variable, die der angegebenen MIB-Variablenlexikografisch folgt, an einen SNMP-Agenten. clsnmp wartet dann bis zum Ablauf des Zeitlimits auf eine Antwort.
set
Sendet eine Anforderung zum Setzen einer bestimmten MIB-Variablen an einen SNMP-Agenten. clsnmp wartet dann bis zum Ablauf des Zeitlimits auf eine Antwort.
trap
Ist für SNMP-Traps empfangsbereit und zeigt Trap -Informationen an, wenn sie auftreten. Verwendet den Standardport 162 oder die mit der Option "-p" angegebene Portnummer. Die clsnmp-Option -trap setzt die Überwachung des Datenverkehrs auf Traps fort, bis der Prozess beendet oder abgebrochen wird.
walk
Setzt eine getnext-Anforderung für ein angegebenes Präfix ab und setzt dann so lange weitere getnext-Anforderungen ab, wie es Variablen gibt, die dem angegebenen Präfix entsprechen. Bei einem Präfix kann es sich um den führende Teil der vollständigen Objekt-ID handeln.

Verwendung

Die Option set Operation wird nicht für alle MIB-Objekte unterstützt. Die set-Operation kann zurückgewiesen werden, wenn der Agent oder die Subagenten, die das MIB-Objekt verwalten, SET nicht unterstützen.

getbulk ist eine SNMPv2-Funktion. Wenn der Zielagent nur SNMPv1 unterstützt, ignoriert der Zielagent Ihre Anforderung. Infolgedessen überschreitet Ihre Anforderung das zulässige Zeitlimit.

Bei den Funktionsschlüsselwörter muss die Groß-/Kleinschreibung nicht beachtet werden. Bei den Flags, Variablennamen und Werten hingegen muss die Groß-/Kleinschreibung beachtet werden.

Um Traps von NetView SNMP und AIX clsnmp gleichzeitig abzuhören, verwenden Sie den Parameter -p PortNumber für den Befehl clsnmp. Ein Port kann jeweils nur von einer Managementanwendung überwacht werden. Mit dem Flag -p für den Befehl "clsnmp trap" können Sie einen anderen Port als den Standardport 162 verwenden. Beide Ports müssen als Agententrapziele konfiguriert sein.

Ein clsnmp-Befehl, der nicht (mit einem gültigen Community-Namen oder Benutzernamen) authentifiziert wurde, überschreitet das zulässige Zeitlimit.

Der Befehl clsnmp verwendet zwei Konfigurationsdateien: /etc/mib.defs und clsnmp.conf. Beispieldateien werden im Verzeichnis /usr/samples/snmpdv3 bereitgestellt.

Der Befehl "clsnmp" unterstützt das Senden von SNMPv1-, SNMPv2c- und SNMPv3-Anforderungen. Bei der Datei, die clsnmp verwendet, um zu bestimmen, ob er eine SNMPv1-, SNMPv2c- oder SNMPv3-Anforderung senden muss, handelt es sich um die Datei clsnmp.conf. Wenn das mit dem Parameter "-h" angegebene Ziel mit einem winSNMP-Namen in der Datei clsnmp.conf übereinstimmt, sendet clsnmp die Anforderung unter Verwendung der im Eintrag angegebenen Parameter. Wenn Sie den Parameter -h nicht angeben, wird die Anforderung als SNMPv1-Anforderung gesendet.

Flags

Element Beschreibung
-c Gemeinschaft Gibt den Community-Namen an, der für den Zugriff auf die angegebenen Variablen im SNMP-Zielagenten verwendet wird. Wenn Sie keinen Community-Namen angeben, wird standardmäßig der Name "public" verwendet. Community-Namen sind nicht erforderlich, wenn das benutzerbasierte Sicherheitsmodell verwendet wird.
Hinweis: Bei Community-Namen muss die Groß-/Kleinschreibung beachtet werden.
-d DebugLevel Gibt die Debugstufe an. Die Standardebene ist 0, d. h., es wird kein Debugging durchgeführt. Je höher die Debugstufe ist, desto mehr Nachrichten werden angezeigt. Die gültigen Debugstufen sind 0-4.
-f ConfigurationFile Gibt den vollständigen Pfad und Dateinamen der Konfigurationsdatei an.
-h TargetHost Gibt den Zielhost an, an den Sie eine Anforderung senden möchten. Der Host kann eine IPv4-Adresse, eine IPv6-Adresse, ein Hostname oder ein winSNMP-Name in der Konfigurationsdatei clsnmp.conf sein. Wenn Sie keinen Host angeben, wird standardmäßig Ihr lokaler Host verwendet.
-m MaxRepetitions Gilt nur für getbulk. Dieses Flag wird ignoriert, wenn die Funktionsanforderung keine getbulk-Anforderung ist. Die Variable "Max_Wiederholungen" gibt die Anzahl der lexikographischen Nachfolger an, die nach den ersten mit "-n- Anzahl" angegebenen Nachfolgern für jedes Variablenbindungspaar zurückgegeben werden sollen. Ab Nachfolger "-n Anzahl"+1 werden beispielsweise "-m Anzahl" Nachfolger für jedes Variablenbindungspaar zurückgegeben. Der Standardwert ist 10.
-n NonRepeaters Gilt nur für getbulk-Anforderungen. Dieses Flag wird ignoriert, wenn die Funktionsanforderung keine getbulk-Anforderung ist. Anzahl_ohne_Wiederholungen gibt die Anzahl der Variablenbindungspaare (Name/Wert) nach dem ersten an, für die nur ein einziger Nachfolger zurückgegeben wird. Der Standardwert ist 0.
-p PortNumber Gibt die Nummer des Ports an, der auf Traps überwacht werden soll. Wenn Sie keine Portnummer angeben, überwacht die Funktion clsnmp trap Port 162, den Standardport für clsnmp-Traps.
-r RetryNumber Gibt an, wie oft der Befehl nach der Überschreitung des zulässigen Zeitlimits maximale wiederholt werden soll. Der Standardwert ist 2.
-t TimeOutValue Gibt die Anzahl der Sekunden an, die der Befehl clsnmp auf eine Antwort vom SNMP-Agenten wartet. Der Standardwert ist 3.
-v Gibt an, dass die Ausgabe einer Anforderung im ausführlichen Modus angezeigt werden soll, z. B. mit dem Textnamen anstelle der MIB-Objekt-ID.
-? Zeigt Hilfeinformationen an.

Parameter

Element Beschreibung
Funktion Gibt die SNMP-Funktion/-Operation an, die ausgeführt werden soll: get, getnext, getbulk, set, walk, trap, findname.
MIB-Variable Gibt das MIB-Objekt (Management Information Base) mit seinem Objektdeskriptor (Textname), seiner Objekt-ID in ASN.1-Notation oder einer Kombination aus beiden an. Bei der Verwendung zusammen mit walk ist dies das MIB-Objektpräfix. Bei einem Präfix kann es sich um den führende Teil der vollständigen Objekt-ID handeln. Bei der Verwendung zusammen findname ist dies die Objekt-ID in der ASN.1-Notation.
Wert Gibt den Wert an, der von der SET-Funktion festgelegt werden soll. Wenn Leerzeichen im Wert erforderlich sind, müssen Sie den Wert in Anführungszeichen (") einschließen. Wenn Sie eine Variable auf einen Wert setzen möchten, der ebenfalls ein Typ ist, müssen Sie den Typ angeben.
VariableType Gibt den Typ des Werts an, der festgelegt wird. Zum Ausführen einer SNMP-SET-Anforderung muss der SMI_type bekannt sein. Wenn Sie keinen Typ angeben, durchsucht clsnmp zuerst die Datei /etc/mib.defs und dann die kompilierte MIB, um den Typ zu bestimmen. Wenn die Variable nicht gefunden wird, wird ein Fehler zurückgegeben. Wenn Sie einen Variablentyp angeben, hat der Variablentyp Vorrang vor einem Typ, der möglicherweise in der MIB zugewiesen wird. Der Variablentyp und der Wert müssen kompatibel sein. Wenn Sie beispielsweise den Typ "number" und den Wert "foo" angeben, wird ein Fehler zurückgegeben, weil "foo" keine Zahl ist. Beim Variablentyp muss die Groß-/Kleinschreibung nicht beachtet werden. Die gültigen Variablentypen sind im Folgenden aufgelistet:
  • bitstring
  • counter
  • counter32
  • counter64
  • display oder displaystring
  • gauge
  • gauge32
  • Integer
  • integer32
  • ipaddress
  • nsapaddress
  • null
  • objectidentifier oder OID
  • octetstring
  • opaque
  • opaqueascii
  • timeticks
  • uinteger

Einschränkung

Wenn der snmpdv3-Dämon während der Verarbeitung einer SNMPv1-Protokollanforderung vom clsnmp-Manager eine MIB mit dem Datentyp SMI-v2 findet, überspringt er die MIB, bis er eine MIB mit dem Datentyp SMI-v1 findet.

Problemumgehung

Der clsnmp-Manager muss für Anforderungen der Typen SNMPv2 und SNMPv3 konfiguriert sein, damit alle MIB-Variablen mit dem snmpdv3-Dämon ausgegeben werden.

Beispiele

  1. MIB-Variable abrufen.
    1. Der folgende Befehl fordert das MIB-Objekt sysName.0 an:
      clsnmp get sysName.0
      Die Ausgabe dieses Befehls gleicht der folgenden:
      1.3.6.1.2.1.1.5.0 = hostname.austin.ibm.com
    2. Der folgende Befehl fordert das MIB-Objekt myName.0 an, wobei myName in der Datei /etc/mib.defs als das mit sysName.0 angegebene Objekt definiert ist:
      clsnmp get myName.0
      Die Ausgabe dieses Befehls gleicht der folgenden:
      1.3.6.1.2.1.1.5.0 = myhostname.austin.ibm.com
    3. Der folgende Befehl fordert das MIB-Objekt sysName.0 über eine IPv6-Adresse an:
      clsnmp -h 2000:1:1:1:209:6bff:feae:6d67 get sysName.0
      Die Ausgabe dieses Befehls gleicht der folgenden:
      1.3.6.1.2.1.1.5.0 = hostname.austin.ibm.com
  2. Nächste MIB-Variable abrufen.
    1. Der folgende Befehl fordert das nächste logische MIB-Objekt an:
      clsnmp getnext udp
      Die Ausgabe dieses Befehls gleicht der folgenden:
      1.3.6.1.2.1.7.1.0 = 653
    2. Der folgende Befehl fordert das nächste logische Objekt an, wobei mit der Option -v angegeben wird, dass der Wert mit dem Textnamen anstelle der Objekt-ID angezeigt werden soll:
      clsnmp -v getnext udp
      Die Ausgabe dieses Befehls gleicht der folgenden:
      udpInDatagrams.0 = 653
  3. MIB-Variable festlegen.
    1. Der folgende Befehl setzt das MIB-Objekt "sysName.0" auf den Wert "hostname.austin.ibm.com":
      clsnmp set sysName.0  "hostname.austin.ibm.com"
      Dieser Befehl erzeugt eine Ausgabe ähnlich der folgenden:
      1.3.6.1.2.1.1.5.0 = hostname.austin.ibm.com
    2. Der Wert des MIB-Objekts "sysName.0" kann wie im folgenden Beispiel gezeigt auch mit dem Parameter Variablentyp festgelegt werden, um den Typ des festzulegenden Werts anzugeben.
      clsnmp set sysName.0 displayname "hostname.austin.ibm.com"
      Dieser Befehl erzeugt eine Ausgabe ähnlich der folgenden:
      1.3.6.1.2.1.1.5.0 = hostname.austin.ibm.com
  4. MIB-Struktur durcharbeiten.
    Der folgende Befehl gibt alle Objekte nach Namen zurück, die mit demselben Objekt-ID-Präfix beginnen, aber es werden jedoch weniger Datenpakete zwischen dem Befehl "clsnmp" und dem SNMP-Agenten ausgetauscht:
    clsnmp -h loopback -v -m 10 bulkwalk udp
    Die Ausgabe des Befehls gleicht der folgenden:
    clsnmp -v walk udp 
    udpInDatagrams.0 = 653 
    udpNoPorts.0 = 22 
    udpInErrors.0 = 0 
    udpOutDatagrams.0 = 678 
    udpLocalAddress.0.0.0.0.7 = 0.0.0.0 
    udpLocalAddress.0.0.0.0.9 = 0.0.0.0 
    udpLocalAddress.0.0.0.0.13 = 0.0.0.0 
    udpLocalAddress.0.0.0.0.19 = 0.0.0.0 
    udpLocalAddress.0.0.0.0.37 = 0.0.0.0 
    udpLocalAddress.0.0.0.0.161 = 0.0.0.0 
    udpLocalAddress.0.0.0.0.5020 = 0.0.0.0 
    udpLocalPort.0.0.0.0.7 = 7 
    udpLocalPort.0.0.0.0.9 = 9 
    udpLocalPort.0.0.0.0.13 = 13 
    udpLocalPort.0.0.0.0.19 = 19 
    udpLocalPort.0.0.0.0.37 = 37 
    udpLocalPort.0.0.0.0.161 = 161 
    udpLocalPort.0.0.0.0.5020 = 5020
  5. Mehrere MIB-Variablen abrufen.
    Der folgende Befehl fordert mehrere MIB-Objekte mit dem Anforderungstyp getbulk an. Der Anforderungstyp getbulk gibt das nächste logische Objekt für ein oder mehrere MIB-Objekte zurück, die im Befehl aufgelistet sind. Im folgenden Beispiel gibt die Option -n an, dass nur ein einziges nächstes logisches Objekt für die ersten beiden Variablen (sysLocation und ifTable) angefordert wird. Für alle anderen Objekte in der Liste (tcp, udp und icmp) gibt die Option -m an, dass 5 Wiederholungen angefordert werden.
    Hinweis: Der Anforderungstyp getbulk ist eine SNMPv2 -Funktion. Der Parameter -h gibt einen Host an, in diesem Fall den Host "loopback", der in der Datei clsnmp.conf als ein Agent definiert ist, der SNMPv2 oder SNMPv3 unterstützt.
    clsnmp -h loopback -v -n 2 -m 5 getbulk sysLocation ifTable tcp udp icmp
    Dieser Befehl erzeugt eine Ausgabe ähnlich der folgenden:
    sysLocation.0 = Research Triangle Park, NC 
    ifIndex.1 = 1 
    tcpRtoAlgorithm.0 = 4 
    udpInDatagrams.0 = 782 
    icmpInMsgs.0 = 22 
    tcpRtoMin.0 = 0 
    udpNoPorts.0 = 22 
    icmpInErrors.0 = 0 
    tcpRtoMax.0 = 120 
    udpInErrors.0 = 0 
    icmpInDestUnreachs.0 = 22 
    tcpMaxConn.0 = -1 
    udpOutDatagrams.0 = 807 
    icmpInTimeExcds.0 = 0 
    tcpActiveOpens.0 = 1 
    udpLocalAddress.0.0.0.0.7 = 0.0.0.0 
    icmpInParmProbs.0 = 0
  6. Namen einer ASN.1-Variablen ermitteln.
    Der folgende Befehl fordert eine Suche zum Abrufen des Textnamens für eine angegebene MIB-Variable an, deren interner ASN.1-Wert am besten mit dem eingegebenen ASN.1-Wert übereinstimmt. Zuerst wird die Datei /etc/mib.defs durchsucht. Wenn kein Textname gefunden wird, wird als Nächstes die kompilierte MIB durchsucht. Es ist nur eine einzige MIB-Variable pro Aufruf von clsnmp findname- zulässig. Hierfür kann beispielsweise ein Befehl wie der folgende verwendet werden:
    clsnmp findname 1.3.6.1.2.1.6.13.1.2
    Dieser Befehl erzeugt eine Ausgabe ähnlich der folgenden:
    1.3.6.1.2.1.6.13.1.2 found as: tcpConnLocalAddress
    Ein ähnliches Beispiel ist das folgende:
    clsnmp findname 1.3.6.1.2.1.6.13.1.2.0
    Dieser Befehl erzeugt eine Ausgabe ähnlich der folgenden:
    1.3.6.1.2.1.6.13.1.2.0 found as: tcpConnLocalAddress.0
    Ein weiteres Beispiel ist das folgende:
    clsnmp findname 1.3.6.1.2.
    Dieser Befehl erzeugt eine Ausgabe ähnlich der folgenden:
    1.3.6.1.2. found as: mgmt
  7. SNMPv3-Anforderung absetzen.
    1. Angenommen, in der Datei /etc/clsnmp.conf auf dem Manager-Host ist ein winSnmpName-Eintrag wie der folgende (in einer einzigen Zeile) konfiguriert:
      target1   9.3.149.26 snmpv3 u1 -          - AuthNoPriv   HMAC-SHA
      76784e5935acd6033a855df1fac42acb187aa867 -   -
      Wenn auf der snmpd-Agentenmaschine 9.3.149.26 der Benutzer u1 ordnungsgemäß konfiguriert ist, können Sie den Befehl auf dem Manager-Host absetzen:
      clsnmp -v -h target1 get sysName.0
      Dieser Befehl erzeugt eine Ausgabe ähnlich der folgenden:
      sysName.0 = somehostname.austin.ibm.com
    2. Es ist einfach, einen Trapbefehl wie folgt abzusetzen:
      clsnmp trap
      Hinweis: Wenn das Sicherheitsmodell des empfangenen Traps SNMPv3ist, stellen Sie sicher, dass auf der Verwaltungsstation, auf der der Trap überwacht wird, die Dateietc/clsnmp.conf ordnungsgemäß konfiguriert ist, um den Trap zu empfangen.

Dateien

Element Beschreibung
/etc/clsnmp.conf Enthält die Konfigurationsdatei für den Befehl clsnmp.
/etc/mib.defs Definiert die MIB-Variablen (Management Information Base), der SNMP-Agent und -Manager erkennen und verarbeiten soll.