Übersicht über Python-Module auf Geräten, auf denen Junos OS ausgeführt wird
Der Python-Interpreter ist als Teil des Junos-Betriebssystems (Junos OS) enthalten. Junos OS und Junos OS Evolved umfassen viele Python-Module, die in Python-Anwendungen verwendet werden können, einschließlich Commit-, Ereignis-, Op- und SNMP-Automatisierungsskripten. Juniper Extension Toolkit (JET)-Anwendungen; und YANG-Handlungs- und Übersetzungsskripte. Die Verwendung eines bestimmten Moduls hängt von den Berechtigungen des Benutzers ab, der es ausführt.
In Tabelle 1 werden die allgemeinen Updates und die betroffenen Plattformen für jede Gruppe von Modulen-Upgrades in einer bestimmten Version erläutert. Um die erste Version zu bestimmen, in der eine bestimmte Plattform eine bestimmte Python-Version (2.7 oder 3) für einen bestimmten Skripttyp unterstützt, wenden Sie sich an das Feature Explorer-Tool .
Release |
Beschreibung der Änderungen |
Unterstützte Plattformen |
---|---|---|
Junos OS Version 18.1R1 |
Modul-Upgrades für Python 2.7 |
MX240-, MX480-, MX960- und vMX-Router |
Junos OS Version 19.2R1 |
Modul-Upgrades für Python 2.7 |
Router der MX-Serie und Switches der QFX-Serie |
Junos OS Version 19.4R1 |
Modul-Upgrades für Python 2.7 Modulerweiterungen für Python 3.x (nur Commit-, Ereignis-, Op- und SNMP-Skripte) |
Router der ACX-, MX- und PTX-Serie Switches der EX- und QFX-Serie Services Gateways der SRX-Serie |
Junos OS-Version 20.2R1 |
Modulerweiterungen für Python 3.x |
Router der ACX-, MX- und PTX-Serie Switches der EX- und QFX-Serie Services Gateways der SRX-Serie |
Junos OS Evolved Version 21.2R1 |
Modulerweiterungen für Python 3.x |
Router der PTX-Serie |
Tabelle 2 zeigt die Python-Module, die in Junos OS und Junos OS Evolved für Python 2.7 und Python 3 verfügbar sind.
Paket/Modul |
Beschreibung |
Unterstützung |
Unterstützung |
||
---|---|---|---|---|---|
2.7 |
3,x |
2.7 |
3,x |
||
|
Bestimmt den Pfad zu den entsprechenden plattformspezifischen Verzeichnissen für anwendungsspezifische Benutzerdaten. |
Y |
Y |
Y |
Y |
|
Bibliothek zum Analysieren und Serialisieren von Abstract Syntax Notation One (ASN.1)-Strukturen. |
Y |
Y |
Y |
Y |
|
Python-Paket, mit dem Sie Klassen schreiben können, ohne den gesamten Kesselcode zu schreiben. |
– |
– |
– |
Y |
|
Python-Ausdruck von Finite-State-Maschinen. |
– |
– |
– |
Y |
|
Bibliothek für Kennworthashing und -speicherung. |
– |
– |
– |
Y |
|
C Foreign Function Interface für Python, mit dem Python-Anwendungen mit C-Code interagieren können. |
Y |
Y |
Y |
Y |
|
Universal Character Encoding Detector für Python 2 und 3. |
Y |
Y |
Y |
Y |
|
Bibliothek, die symbolische konstante Unterstützung bietet. |
– |
– |
– |
Y |
|
Sammlung von Python-Modulen im PyCrypto-Paket , die Kryptographiealgorithmen und Protokolle implementieren. Die Module bieten verschiedene sichere Hash- und Verschlüsselungsfunktionen. |
Y |
Y |
Y |
Y |
|
Bietet Kryptographierezepte und Primitive in Python. |
Y |
Y |
Y |
Y |
|
Bietet eine Schnittstelle für asynchrone Ausführung von Anrufbaren. Python 3 enthält dieses Paket als Teil der Standardbibliothek. |
Y |
Y |
Y |
Y |
|
Bietet eine Implementierung von ECDSA-Verschlüsselung, die zum Erstellen von Schlüsselpaaren, Signnachrichten und Zur Überprüfung von Signaturen verwendet werden kann. |
Y |
Y |
Y |
Y |
|
Python 3 umfasst diese Funktionalität als Teil der Standardbibliothek. |
Y |
Y |
Y |
Y |
|
Neue Version des nativen RPC-Protokolls von Twisted. |
– |
– |
– |
Y |
|
Python 2- und Python 3-Kompatibilitätsbibliothek. |
– |
– |
– |
Y |
|
Bietet Unterstützung für die Arbeit mit Protokollpuffern (protobuf). |
Y |
Y |
Y |
Y |
|
Python gRPC-Tools. |
Y |
Y |
Y |
Y |
|
Reine Python-Implementierung von unveränderlichen URLs. |
– |
– |
– |
Y |
|
Bietet Unterstützung für das Internationalized Domain Names in Applications (IDNA)-Protokoll, wie in RFC 5891 definiert, Internationalized Domain Names in Applications (IDNA): Protocol. |
Y |
Y |
Y |
Y |
|
Bibliothek für die Versionierung von Python-Projekten. |
– |
– |
– |
Y |
|
Bietet Funktionen zum Erstellen, Bearbeiten und Betreiben von IPv4- und IPv6-Adressen. Python 3 umfasst dieses Modul als Teil der Standardbibliothek.
Hinweis:
Geräte mit Junos OS mit aktualisierter FreeBSD-Unterstützung mit IPv6 in Python-Skripten ab Junos OS Version 19.3R1. |
Y |
Y |
Y |
Y |
|
Schnelle, sichere, designerfreundliche Vorlagensprache für Python. Weitere Informationen zu Jinja2 finden Sie unter http://jinja.pocoo.org/docs/dev/. |
Y |
Y |
Y |
Y |
|
Microframework für Python, mit dem Sie Geräte mit Junos OS automatisieren können. Junos PyEZ bietet die Funktionen, die ein Benutzer auf der Befehlszeilenschnittstelle (CLI) von Junos OS in einer Für Automatisierungsaufgaben entwickelten Umgebung haben würde. Weitere Informationen finden Sie unter Junos PyEZ. |
Y |
Y |
Y |
Y |
|
Python-Modul für die Konvertierung von XML in Python-Datenstrukturen und die Konvertierung von Python-Datenstrukturen in XML. Weitere Informationen finden Sie unter https://jxmlease.readthedocs.io/. |
Y |
Y |
Y |
Y |
|
XML-Verarbeitungsbibliothek, die die Geschwindigkeit und XML-Funktionserfüllung der C-Bibliotheken libxml2 und libxslt mit der Einfachheit einer nativen Python-API kombiniert. Weitere Informationen finden Sie unter http://lxml.de. |
Y |
Y |
Y |
Y |
|
Bietet die Möglichkeit, eine sichere XML-, HTML- oder XHTML-Markup-Zeichenfolge zu entkommen und zu formatieren. |
Y |
Y |
Y |
Y |
|
Erleichtert die Clientskripterstellung und Anwendungsentwicklung über das NETCONF-Protokoll. Weitere Informationen, |
Y |
Y |
Y |
Y |
|
Bibliothek zur Manipulation von Netzwerkadressen, die die Verarbeitung von Layer 2- und Layer 3-Netzwerkadressen ermöglicht. |
Y |
Y |
Y |
Y |
|
Core-Dienstprogramme für Python-Pakete. |
Y |
Y |
Y |
Y |
|
Dient als Client-Klasse, mit der Anwendungen eine Verbindung zu einem MQTT-Broker (Message Queue Telemetry Transport) herstellen können, um Nachrichten zu veröffentlichen und Themen zu abonnieren und veröffentlichte Nachrichten zu erhalten. |
Y |
Y |
Y |
Y |
|
SSH2-Protokollbibliothek, die die Möglichkeit bietet, SSH2-protokollbasierte Verbindungen herzustellen. Dieses Modul unterstützt alle wichtigen Verschlüsselungs- und Hash-Methoden sowohl für den Client- als auch für den Servermodus.
Hinweis:
|
Y |
Y |
Y |
Y |
|
Bietet APIs für das Suchen und Verwalten von Python-Paket- und Versionsabhängigkeiten und den Zugriff auf gebündelte Dateien und Ressourcen. |
Y |
Y |
Y |
Y |
|
Bibliothek zum Abrufen von Informationen über laufende Prozesse und Systemauslastung (CPU, Speicher, Festplatten und Prozesse).
Hinweis:
|
Y |
Y |
Y |
Y |
|
Erweiterbarer YANG-Validator und -Konverter, der die Verarbeitung, Validierung und Konvertierung von YANG-Modulen ermöglicht. Junos OS fügt Unterstützung für |
Y |
Y |
Y |
– |
|
Python-Implementierung von ASN.1-Typen (Abstract Syntax Notation One) und BER/CER/DER-Codecs (X.208). |
Y |
Y |
Y |
Y |
|
Sammlung von ASN.1-Datenstrukturen, die als Python-Klassen ausgedrückt werden. |
– |
– |
– |
Y |
|
Parser für die C-Sprache, die in reinem Python geschrieben wurde. Das Modul kann in Anwendungen integriert werden, die C-Quellcode analysieren müssen. |
Y |
Y |
Y |
Y |
|
Python-Bindung an die Netzwerk- und Kryptographiebibliothek (NaCl). |
– |
– |
– |
Y |
|
Python-Wrapper-Modul um eine Teilmenge der OpenSSL-Bibliothek. |
– |
– |
– |
Y |
|
Bietet einen alternativen Ansatz für das Erstellen und Ausführen einfacher Grammatiken. |
Y |
Y |
Y |
Y |
|
Bietet Erweiterungen des Datetime-Moduls. |
– |
– |
– |
Y |
|
Bibliothek, die das Senden von HTTP/1.1-Anfragen mit Python ermöglicht. |
Y |
Y |
Y |
Y |
|
Implementierung des SCP-Protokolls für Paramiko, das Paramiko-Transport verwendet, um Dateien über das SCP-Protokoll zu senden und zu empfangen. |
Y |
Y |
Y |
Y |
|
Modul im pySerial-Paket , das den Zugriff für serielle Ports verkapselt. |
Y |
Y |
Y |
Y |
|
Serviceidentifizierung für PyOpenSSL und Kryptographie. |
– |
– |
– |
Y |
|
Bibliothek, die das Verpacken von Python-Projekten erleichtert. |
– |
Y |
– |
Y |
|
Python 2- und Python 3-Kompatibilitätsbibliothek. |
Y |
Y |
Y |
Y |
|
Bietet Python-Bindungen für das Apache Thrift-Framework.
|
Y |
– |
– |
– |
|
Objektorientierte Zustandsmaschinenimplementierung. |
– |
– |
– |
Y |
|
Ereignisbasiertes Framework für Internetanwendungen. |
– |
– |
– |
Y |
|
HTTP-Client für Python. |
Y |
Y |
Y |
Y |
|
Modul im PyYAML-Paket , das zur Serialisierung und Deserialisierung von Daten im YAML-Format verwendet wird. |
Y |
Y |
Y |
Y |
|
YAML-Loader und Dumper für PyYAML, die Objekte verwenden |
– |
– |
– |
Y |
|
Paket, mit dem Sie Schnittstellen für Python angeben können. |
– |
– |
– |
Y |