Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

open() Function (SLAX and XSLT)

Nombres

Sintaxis SLAX

Sintaxis XSLT

Descripción

Devuelva un controlador de conexión que se pueda usar para ejecutar llamadas de procedimiento remoto (RPC) mediante la función de jcs:execute() extensión. Para ejecutar un RPC en un dispositivo remoto, debe establecerse una sesión SSH . Para que la secuencia de comandos establezca la conexión, debe configurar la información de la clave de host SSH para el dispositivo remoto en el dispositivo local donde se ejecutará la secuencia de comandos, o bien la información de la clave de host SSH para el dispositivo remoto debe existir en el archivo hosts conocido del usuario que ejecuta la secuencia de comandos.

Nota:

Los dispositivos que ejecutan Junos OS Evolucionado solo admiten el inicio de sesión sin contraseña cuando se establece una conexión local o remota mediante la jcs:open() función. No admiten el suministro de una contraseña como argumento de función ni el uso de una contraseña interactiva, como es compatible con Junos OS. Para realizar una conexión local o remota, ejecute esta funcionalidad mediante un inicio de sesión sin contraseña o, de lo contrario, se podrían encontrar problemas de autenticación.

Para redirigir la conexión SSH para que se origine desde dentro de una instancia de enrutamiento específica, incluya el nombre de la instancia de enrutamiento en los parámetros de conexión. La instancia de enrutamiento se debe configurar en el [edit routing-instances] nivel de jerarquía y el dispositivo remoto debe estar accesible mediante la tabla de enrutamiento de esa instancia de enrutamiento o desde una de las interfaces configuradas en esa instancia de enrutamiento.

A partir de Junos OS versión 11.4, el nuevo parámetro, session-options, admite la opción de crear una sesión con el servidor de protocolo Junos XML en dispositivos que ejecutan Junos OS o con el servidor NETCONF en dispositivos donde el servicio NETCONF mediante SSH está habilitado. Anteriormente, la función solo admitía sesiones con el servidor de protocolo JUnos XML en dispositivos que ejecutan Junos OS.

Nota:

Los scripts de automatización de Python pueden usar API de Junos PyEZ para establecer una sesión y ejecutar RPCs en un dispositivo local o remoto.

El controlador de conexión se cierra con la jcs:close() función.

Parámetros

passphrase

(Opcional) Frase de contraseña de inicio de sesión del usuario. Si no especifica una frase de contraseña y es necesaria para la autenticación, se le debería solicitar una durante la ejecución del script por el dispositivo al que se está conectando.

remote-hostname

Nombre de dominio o dirección IP del enrutador remoto, conmutador o dispositivo de seguridad. Si está abriendo una conexión local, no pase este valor. Si especifica un tipo de sesión, este parámetro es necesario.

routing-instance-name

(Opcional) Instancia de enrutamiento desde la que se origina la conexión SSH.

session-options

(Opcional) Conjunto de nodos XML que especifica el protocolo de sesión y los parámetros de conexión. La estructura del conjunto de nodos es:

  • <instance>—(Opcional) Instancia de enrutamiento desde la que se origina la conexión SSH. Este elemento es idéntico a <routing-instance>.

  • <method>—(Opcional) Protocolo de sesión. El protocolo es uno de tres valores: junoscript, netconfo junos-netconf. Si no especifica un protocolo, se crea una junoscript sesión de forma predeterminada. Un <method> valor de junoscript establece una sesión con el servidor de protocolo XML de Junos en un dispositivo que ejecuta Junos OS. Un <method> valor de netconf establece una sesión con un servidor NETCONF mediante una conexión SSHv2. Un <method> valor de junos-netconf establece una sesión con un servidor NETCONF a través de una conexión SSHv2 en un dispositivo que ejecuta Junos OS.

  • <passphrase> or <password>—(Opcional) Frase de contraseña de inicio de sesión del usuario. Si no especifica una frase de contraseña y es necesaria para la autenticación, se le debería solicitar una durante la ejecución del script por el dispositivo al que se está conectando.

  • <port>—(Opcional) Número de puerto del servidor para y junos-netconf las netconf sesiones. Para sesiones NETCONF, jcs:open() se conecta al servidor NETCONF en el puerto predeterminado 830. Si especifica un valor para <port>, se jcs:open() conecta al puerto dado en su lugar. Especificar un número de puerto no tiene ningún impacto en las junoscript sesiones, que siempre se establecen sobre el puerto SSH 22.

  • <routing-instance>—(Opcional) Instancia de enrutamiento desde la que se origina la conexión SSH. Este elemento es idéntico a <instance>.

  • <username>—(Opcional) Nombre de inicio de sesión del usuario. Si no especifica un nombre de usuario y es necesario para la conexión, la secuencia de comandos usa el nombre local del usuario que ejecuta la secuencia de comandos.

username

(Opcional) Nombre de inicio de sesión del usuario. Si no especifica un nombre de usuario y es necesario para la conexión, la secuencia de comandos usa el nombre local del usuario que ejecuta la secuencia de comandos.

Valor devuelto

connection

Controlador de conexión al host remoto.

Ejemplos de uso

En el siguiente ejemplo, se muestra cómo conectarse a un dispositivo local:

En el siguiente ejemplo, se muestra cómo conectarse a un dispositivo remoto:

En el siguiente ejemplo, se muestra cómo el usuario, bsmith, con la frase de contraseña "test123" obtiene un controlador de conexión al dispositivo remoto, cinco estrellas:

En el siguiente ejemplo, se muestra cómo el usuario, bsmith, con la frase de contraseña "test123" crea una junos-netconf sesión con un dispositivo que ejecuta Junos OS:

Información de versión

Función introducida en la versión 9.3 de Junos OS.

Compatibilidad con sesiones de NETCONF agregadas en Junos OS versión 11.4.

Compatibilidad con instancias de enrutamiento agregadas en Junos OS versión 12.2.

Soporte para Junos OS Evolucionado agregado en Junos OS Evolved versión 18.3R1.