Descripción general de módulos Python en dispositivos que ejecutan Junos OS
El intérprete de Python se incluye como parte del sistema operativo Junos (Junos OS). Junos OS y Junos OS Evolved incluyen muchos módulos Python que se pueden usar en aplicaciones de Python, incluyendo scripts de automatización commit, event, op y SNMP; Aplicaciones de Juniper Extension Toolkit (JET); y secuencias de comandos de traducción y acción de YANG. El uso de un módulo específico depende de los permisos del usuario que lo está ejecutando.
La Tabla 1 describe las actualizaciones generales y las plataformas afectadas para cada conjunto de actualizaciones de módulos en una versión específica. Para determinar la versión inicial en la que una determinada plataforma admite una versión específica de Python (2.7 o 3) para un tipo determinado de secuencia de comandos, consulte la herramienta Explorador de funciones .
Lanzamiento |
Descripción de los cambios |
Plataformas compatibles |
---|---|---|
Junos OS versión 18.1R1 |
Actualizaciones de módulos para Python 2.7 |
Enrutadores MX240, MX480, MX960 y vMX |
Junos OS versión 19.2R1 |
Actualizaciones de módulos para Python 2.7 |
Enrutadores serie MX y conmutadores serie QFX |
Junos OS versión 19.4R1 |
Actualizaciones de módulos para Python 2.7 Adiciones de módulos para Python 3.x (solo scripts commit, event, op y SNMP) |
Enrutadores serie ACX, MX y PTX Conmutadores serie EX y QFX Puertas de enlace de servicios serie SRX |
Junos OS versión 20.2R1 |
Adiciones de módulos para Python 3.x |
Enrutadores serie ACX, MX y PTX Conmutadores serie EX y QFX Puertas de enlace de servicios serie SRX |
Versión 21.2R1 de Junos OS Evolved |
Adiciones de módulos para Python 3.x |
Enrutadores serie PTX |
La tabla 2 describe los módulos python disponibles en Junos OS y Junos OS Evolved para Python 2.7 y Python 3.
Paquete/módulo |
Descripción |
Apoyo |
Apoyo |
||
---|---|---|---|---|---|
2.7 |
3.x |
2.7 |
3.x |
||
|
Determina la ruta a los directorios específicos de la plataforma adecuados para los datos de usuario específicos de la aplicación. |
Y |
Y |
Y |
Y |
|
Biblioteca para analizar y serializar estructuras de notación de sintaxis abstracta uno (ASN.1). |
Y |
Y |
Y |
Y |
|
Paquete python que le permite escribir clases sin escribir todo el código reutilizable. |
– |
– |
– |
Y |
|
Expresión de Python de máquinas de estado finito. |
– |
– |
– |
Y |
|
Biblioteca para hash de contraseñas y almacenamiento. |
– |
– |
– |
Y |
|
Interfaz de función externa de C para Python, que permite que las aplicaciones de Python interactúen con código C. |
Y |
Y |
Y |
Y |
|
Detector universal de codificación de caracteres para Python 2 y 3. |
Y |
Y |
Y |
Y |
|
Biblioteca que proporciona soporte constante simbólico. |
– |
– |
– |
Y |
|
Colección de módulos Python en el paquete PyCrypto que implementan algoritmos y protocolos criptográficos. Los módulos proporcionan varias funciones de hash y cifrado seguras. |
Y |
Y |
Y |
Y |
|
Proporciona recetas criptográficas y primitivas en Python. |
Y |
Y |
Y |
Y |
|
Proporciona una interfaz para ejecutar llamadas de forma asíncrona. Python 3 incluye este paquete como parte de la biblioteca estándar. |
Y |
Y |
Y |
Y |
|
Proporciona una implementación de criptografía ECDSA, que se puede usar para crear pares de claves, firmar mensajes y verificar firmas. |
Y |
Y |
Y |
Y |
|
Python 3 incluye esta funcionalidad como parte de la biblioteca estándar. |
Y |
Y |
Y |
Y |
|
Nueva versión del protocolo RPC nativo de Twisted. |
– |
– |
– |
Y |
|
Biblioteca de compatibilidad de Python 2 y Python 3. |
– |
– |
– |
Y |
|
Ofrece soporte para trabajar con búferes de protocolo (prototipo). |
Y |
Y |
Y |
Y |
|
Herramientas gRPC de Python. |
Y |
Y |
Y |
Y |
|
Implementación de URL inmutables en Pure-Python. |
– |
– |
– |
Y |
|
Proporciona soporte para el protocolo nombres de dominio internacionalizados en aplicaciones (IDNA), tal como se define en RFC 5891, Nombres de dominio internacionalizados en aplicaciones (IDNA): protocolo. |
Y |
Y |
Y |
Y |
|
Biblioteca para versionar proyectos de Python. |
– |
– |
– |
Y |
|
Ofrece capacidades para crear, manipular y operar en direcciones IPv4 e IPv6. Python 3 incluye este módulo como parte de la biblioteca estándar.
Nota:
Dispositivos que ejecutan Junos OS con soporte freeBSD actualizado mediante IPv6 en scripts de Python a partir de junos OS versión 19.3R1. |
Y |
Y |
Y |
Y |
|
Lenguaje de tentlación rápido, seguro y apto para diseñadores para Python. Para obtener más información acerca de Jinja2, consulte http://jinja.pocoo.org/docs/dev/. |
Y |
Y |
Y |
Y |
|
El microtrabajo para Python que le permite automatizar dispositivos que ejecutan Junos OS. Junos PyEZ está diseñado para proporcionar las capacidades que un usuario tendría en la interfaz de línea de comandos (CLI) de Junos OS en un entorno diseñado para tareas de automatización. Para obtener más información, consulte Junos PyEZ. |
Y |
Y |
Y |
Y |
|
Módulo Python para convertir estructuras de datos XML a Python y convertir estructuras de datos de Python en XML. Para obtener más información, consulte https://jxmlease.readthedocs.io/. |
Y |
Y |
Y |
Y |
|
Biblioteca de procesamiento XML que combina la velocidad y la integridad de las funciones XML de las bibliotecas C libxml2 y libxslt con la simplicidad de una API nativa de Python. Para obtener más información, consulte http://lxml.de. |
Y |
Y |
Y |
Y |
|
Proporciona la capacidad de escapar y formatear una cadena segura de marcado XML, HTML o XHTML. |
Y |
Y |
Y |
Y |
|
Facilita el desarrollo de scripts y aplicaciones del cliente mediante el protocolo NETCONF. Para obtener más información acerca de |
Y |
Y |
Y |
Y |
|
Biblioteca de manipulación de direcciones de red que permite el procesamiento de direcciones de red de capa 2 y capa 3. |
Y |
Y |
Y |
Y |
|
Utilidades principales para paquetes Python. |
Y |
Y |
Y |
Y |
|
Sirve como una clase de cliente que permite que las aplicaciones se conecten a un intermediario de transporte de telemetría de cola de mensajes (MQTT) para publicar mensajes, suscribirse a temas y recibir mensajes publicados. |
Y |
Y |
Y |
Y |
|
Biblioteca de protocolos SSH2 que ofrece la capacidad de realizar conexiones basadas en protocolo SSH2. Este módulo admite todos los principales cifrados y métodos hash para los modos de cliente y servidor.
Nota:
|
Y |
Y |
Y |
Y |
|
Proporciona API para encontrar y administrar dependencias de paquetes y versiones de Python y acceder a archivos y recursos incluidos. |
Y |
Y |
Y |
Y |
|
Biblioteca para recuperar información sobre los procesos en ejecución y la utilización del sistema (CPU, memoria, discos y procesos).
Nota:
|
Y |
Y |
Y |
Y |
|
Validador y convertidor extensible de YANG que permite el procesamiento, validación y conversión de módulos YANG. Junos OS agrega compatibilidad |
Y |
Y |
Y |
– |
|
Implementación de Python de tipos de notación de sintaxis abstracta uno (ASN.1) y códecs BER/CER/DER (X.208). |
Y |
Y |
Y |
Y |
|
Recopilación de estructuras de datos ASN.1 expresadas como clases de Python. |
– |
– |
– |
Y |
|
Analizador para el lenguaje C escrito en Python puro. El módulo se puede integrar en aplicaciones que necesitan analizar código fuente C. |
Y |
Y |
Y |
Y |
|
Enlace de Python a la biblioteca de redes y criptografía (NaCl). |
– |
– |
– |
Y |
|
Módulo contenedor python alrededor de un subconjunto de la biblioteca OpenSSL. |
– |
– |
– |
Y |
|
Ofrece un enfoque alternativo para crear y ejecutar gramáticas simples. |
Y |
Y |
Y |
Y |
|
Proporciona extensiones al módulo datetime. |
– |
– |
– |
Y |
|
Biblioteca que permite enviar solicitudes HTTP/1.1 mediante Python. |
Y |
Y |
Y |
Y |
|
Implementación del protocolo SCP para Paramiko que utiliza el transporte de Paramiko para enviar y recibir archivos a través del protocolo SCP. |
Y |
Y |
Y |
Y |
|
Módulo en el paquete pySerial que encapsula el acceso para puertos serie. |
Y |
Y |
Y |
Y |
|
Verificación de identificación de servicio para pyOpenSSL y criptografía. |
– |
– |
– |
Y |
|
Biblioteca diseñada para facilitar el empaquetado de proyectos de Python. |
– |
Y |
– |
Y |
|
Biblioteca de compatibilidad de Python 2 y Python 3. |
Y |
Y |
Y |
Y |
|
Proporciona enlaces python para el marco de trabajo Apache Thrift.
|
Y |
– |
– |
– |
|
Implementación de máquina de estado orientada a objetos. |
– |
– |
– |
Y |
|
Marco basado en eventos para aplicaciones de Internet. |
– |
– |
– |
Y |
|
Cliente HTTP para Python. |
Y |
Y |
Y |
Y |
|
Módulo en el paquete PyYAML que se usa para serializar y deserializar datos en formato YAML. |
Y |
Y |
Y |
Y |
|
Cargador y volquete YAML para PyYAML que utiliza |
– |
– |
– |
Y |
|
Paquete que le permite especificar interfaces para Python. |
– |
– |
– |
Y |