Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Beispiel: Verarbeiten nicht mehr unterstützter OIDs mit einem SNMP-Skript

Dieses Beispielskript zeigt, wie Objektkennungen (OIDs) verarbeitet werden, die auf Geräten mit Junos OS nicht unterstützt werden.

Anforderungen

Junos OS Version 15.1 oder höher bei der Verwendung von SLAX SNMP-Skripten.

Junos OS Version 16.1R3 oder höher bei Verwendung von Python SNMP-Skripten auf Switches der QFX-Serie oder Routern der MX-Serie, PTX-Serie oder T-Serie.

Junos OS Version 17.1R1 oder höher bei der Verwendung von Python SNMP-Skripten auf Switches der EX-Serie.

Junos OS Version 17.3R1 oder höher bei der Verwendung von Python SNMP-Skripten auf Services Gateways der SRX-Serie.

SNMP ist auf dem Gerät konfiguriert.

Übersicht und SNMP-Skript

In diesem Beispiel werden zwei äquivalente SNMP-Skripte in SLAX und Python dargestellt, die mehrere nicht mehr unterstützte OIDs verarbeiten. Das Skript gibt den Wert für das angeforderte Objekt zurück, indem es das <snmp-script-results> Element im SLAX-Skript und die jcs.emit_snmp_attributes() Funktion im entsprechenden Python-Skript verwendet. Die Erweiterungsfunktion syslog() wird zum Protokollieren der angeforderten SNMP-Aktion und OID in der Systemprotokolldatei aufgerufen. Weitere Informationen zur syslog() Funktion finden Sie unter syslog() Function (Python, SLAX und XSLT).

SLAX-Syntax

Python-Syntax

Konfiguration

Verfahren

Schritt-für-Schritt-Verfahren

Zum Herunterladen und Aktivieren des Skripts:

Hinweis:

Sie können SNMP-Skripte in Python, SLAX oder XSLT erstellen. Sie können die Befehlsbefehlskonvertieren sie zwischen SLAX und XSLT verwenden.

  1. Kopieren Sie das Skript in eine Textdatei, benennen Sie die Datei sample_snmp.slax oder sample_snmp.py, und laden Sie es in das Verzeichnis /var/db/scripts/snmp auf dem Gerät herunter.

    Hinweis:

    Nicht signierte Python-Skripte müssen entweder im Besitz eines Root-Benutzers oder eines Benutzers in der Anmeldungsklasse von Junos OS super-user sein, und nur der Dateibesitzer kann über Schreibberechtigungen für die Datei verfügen.

  2. Aktivieren Sie das SNMP-Skript und konfigurieren Sie die OID.

    Konfigurieren Sie im Konfigurationsmodus die file filename Anweisung mit dem entsprechenden Dateinamen und der Erweiterung für Ihre Skriptsprache auf Hierarchieebene [edit system scripts snmp] und konfigurieren Sie die OID, die das Skript auslöst.

  3. Wenn das Skript in Python geschrieben ist, konfigurieren Sie die language python Anweisung entsprechend language python3 .

  4. Wenn das Skript in Python geschrieben ist, konfigurieren Sie den Benutzer, unter dessen Zugriffsrechte das Skript ausgeführt wird.

    Hinweis:

    Wenn Sie die python-script-user Anweisung nicht konfigurieren, führt Junos OS standardmäßig Python SNMP-Skripte unter den Zugriffsrechten des Benutzers und der Gruppe nobodyaus.

  5. Geben Sie den commit Befehl aus, um die Konfiguration zu bestätigen.

Ergebnisse

Bestätigen Sie im Konfigurationsmodus Ihre Konfiguration, indem Sie den show system scripts snmp Befehl eingeben.

Wenn die Ausgabe die beabsichtigte Konfiguration nicht anzeigt, wiederholen Sie die Konfigurationsanweisungen in diesem Beispiel, um sie zu korrigieren.

Um sicherzustellen, dass sich die aktivierten Dateien auf dem Gerät befinden, listen Sie den Inhalt des Verzeichnisses /var/run/scripts/snmp mit dem Befehl im file list /var/run/scripts/snmp Betriebsmodus auf.

Überprüfung

Überprüfung der Skriptausführung

Zweck

Überprüfen Sie, ob das SNMP-Skript wie erwartet funktioniert.

Aktion

Geben Sie den show snmp mib getBefehl , show snmp mib get-nextoder show snmp mib walk den Befehl aus, um eine SNMP-Anforderung zu generieren.

Die Systemprotokolldatei enthält die folgenden Nachrichten nach der Skriptausführung: