Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Carga de archivos de configuración

La carga de archivos de configuración en el dispositivo es útil para cargar partes de archivos de configuración que pueden ser comunes en muchos dispositivos dentro de una red.

Ejemplos para cargar una configuración desde un archivo o el terminal

Puede crear un archivo que contenga datos de configuración para un dispositivo de Juniper Networks, copiar el archivo en el dispositivo local y, a continuación, cargar el archivo en la CLI. Después de cargar el archivo, puede confirmarlo para activar la configuración en el dispositivo o puede editar la configuración de forma interactiva mediante la CLI y confirmar la configuración más adelante.

También puede crear una configuración mientras escribe en el terminal y, a continuación, cargar la configuración. Cargar una configuración desde el terminal es útil cuando se cortan partes existentes de la configuración y se pegan en otra parte de la configuración.

Para cargar un archivo de configuración existente que se encuentra en el dispositivo, utilice el comando de modo de configuración:load

Para cargar una configuración desde el terminal, utilice la siguiente versión del comando de modo de configuración.load Presione Ctrl-d para finalizar la entrada.

Para reemplazar una configuración completa, especifique la opción en cualquier nivel de la jerarquía.override Una operación reemplaza completamente la configuración candidata actual con el archivo que está cargando.load override Por lo tanto, si guardó una configuración completa, utilice esta opción.

Una operación descarta la configuración candidata actual y carga la configuración en o la configuración que escriba en el terminal.overridefilename Cuando se utiliza la opción y se confirma la configuración, todos los procesos del sistema reanalizan la configuración.override

Para reemplazar partes de una configuración, especifique la opción.replace La operación busca las etiquetas que agregó al archivo cargado.load replacereplace: A continuación, la operación reemplaza esas partes de la configuración candidata con lo que se especifique después de la etiqueta. Esto es útil cuando desea tener más control sobre exactamente lo que se está cambiando. Para que esta operación funcione, debe incluir etiquetas en el archivo o configuración que escriba en el terminal.replace: El software busca las etiquetas, elimina las instrucciones existentes del mismo nombre, si las hay, y las reemplaza con la configuración entrante.replace: Si no existe ninguna instrucción del mismo nombre, la operación agrega a la configuración las instrucciones marcadas con la etiqueta.replacereplace:

Si, en una operación o, especifica un archivo o texto de tipo que contiene etiquetas, las etiquetas se omiten.overridemergereplace:replace: En este escenario, la operación o tiene prioridad y se realiza.overridemerge

Si está realizando una operación y el archivo que especifica carece de etiquetas, la operación se ejecuta como una operación.replacereplace:replacemerge La operación también se ejecuta como una operación si el texto que escribe carece de etiquetas.replacemergereplace: Esta información puede ser útil si está ejecutando secuencias de comandos automatizadas y no puede saber de antemano si las secuencias de comandos necesitan realizar una operación o una operación.replacemerge Los scripts pueden usar la operación para cubrir cualquiera de los casos.replace

La operación combina la configuración del archivo o terminal guardado con la configuración candidata existente.load merge Esta información es útil si va a agregar nuevas secciones de configuración. Por ejemplo, supongamos que está agregando una configuración de BGP al nivel de jerarquía, donde antes no había ninguna configuración de BGP.[edit protocols] Puede utilizar la operación para combinar la configuración entrante con la configuración candidata existente.load merge Si la configuración existente y la configuración entrante contienen instrucciones contradictorias, las instrucciones de la configuración entrante invalidan las de la configuración existente.

Para reemplazar solo las partes de la configuración que han cambiado, especifique la opción en cualquier nivel de la jerarquía.update La operación compara la configuración candidata y los nuevos datos de configuración.load update Esta operación cambia sólo aquellas partes de la configuración candidata que son diferentes de la nueva configuración. Utilizaría esta operación, por ejemplo, si existe una configuración de BGP y el archivo que está cargando la cambia de alguna manera.

Las opciones , , y admiten cargar datos de configuración en formato de notación de objetos JavaScript (JSON).mergeoverrideupdate Al cargar datos de configuración que utilicen formato JSON, debe especificar la opción en el comando.json Para cargar datos de configuración JSON que contengan entradas de lista desordenadas, es decir, entradas de lista en las que la clave de lista no es necesariamente el primer elemento de la entrada de lista, consulte .Cargar datos de configuración JSON con entradas de lista desordenadas

Para cambiar parte de la configuración con un archivo de revisión, especifique la opción.patch La operación carga un archivo o entrada de terminal que contiene cambios de configuración.load patch En primer lugar, en un dispositivo que ya tenga los cambios de configuración, escriba el comando para generar las diferencias entre dos configuraciones.show | compare Luego puede cargar las diferencias en otro dispositivo. La ventaja del comando es que le ahorra tener que copiar fragmentos de diferentes niveles de jerarquía en un archivo de texto antes de cargarlos en el dispositivo de destino.load patch Esto puede ser un ahorro de tiempo útil si está configurando varios dispositivos con las mismas opciones. Por ejemplo, supongamos que configura una directiva de enrutamiento en el enrutador1 y desea replicar la configuración de directiva en el enrutador 2, el enrutador 3 y el enrutador 4. Puede utilizar la operación.load patch

En este ejemplo, primero se ejecuta el comando.show | compare

Ejemplo:

Continuando con este ejemplo, copie el resultado del comando en el portapapeles, asegurándose de incluir los niveles de jerarquía.show | compare En el enrutador 2, enrutador 3 y enrutador 4, escriba y pegue el resultado.load patch terminal A continuación, presione Entrar y presione Ctrl-d para finalizar la operación. Si la entrada de revisión especifica valores diferentes para una instrucción existente, la entrada de revisión reemplaza la instrucción existente.

Para utilizar la opción , , o sin especificar el nivel de jerarquía completo, especifique la opción.mergereplacesetupdaterelative Esta opción carga la configuración entrante en relación con el punto de edición actual en la jerarquía de configuración.

Ejemplo:

Para cargar una configuración que contenga comandos de modo de configuración, especifique la opción.setset Esta opción ejecuta las instrucciones de configuración línea por línea a medida que se almacenan en un archivo o desde un terminal. Las instrucciones pueden contener cualquier comando de modo de configuración, como , , , y .seteditexittop

Para copiar un archivo de configuración de otro sistema de red al enrutador local, puede usar las utilidades SSH y Telnet, tal como se describe en el Explorador de CLI.https://www.juniper.net/documentation/content-applications/cli-explorer/junos/

Nota:

Si trabaja en un entorno de Common Criteria, los mensajes de registro del sistema se crean cada vez que se cambia un atributo (por ejemplo, cambios de contraseña o cambios en el secreto compartido de RADIUS).secret Estos cambios se registran durante las siguientes operaciones de carga de configuración:

Cómo funciona la codificación de caracteres en dispositivos de Juniper Networks

Los datos de configuración de Junos OS y la salida del comando operativo pueden contener caracteres que no sean ASCII, que están fuera del juego de caracteres ASCII de 7 bits. Cuando se muestran datos operativos o de configuración en ciertos formatos o dentro de un cierto tipo de sesión, el software escapa y codifica estos caracteres. El software escapa o codifica los caracteres utilizando la referencia de caracteres decimales UTF-8 equivalente.

La CLI intenta mostrar cualquier carácter que no sea ASCII en los datos de configuración que se generan en formato texto, set o JSON. La CLI también intenta mostrar estos caracteres en la salida de comandos que se genera en formato de texto. En los casos de excepción, la CLI muestra la referencia de caracteres decimales UTF-8 en su lugar. (Los casos de excepción incluyen datos de configuración en formato XML y salida de comandos en formato XML o JSON). En las sesiones de protocolo XML de NETCONF y Junos, verá un resultado similar si solicita datos de configuración o salida de comandos que contengan caracteres que no sean ASCII. En este caso, el servidor devuelve la referencia de caracteres decimales UTF-8 equivalente para esos caracteres para todos los formatos.

Por ejemplo, supongamos que la siguiente cuenta de usuario, que contiene la letra minúscula latina n con una tilde (ñ), está configurada en el dispositivo.

Cuando se muestra la configuración resultante en formato de texto, la CLI imprime el carácter correspondiente.

Cuando se muestra la configuración resultante en formato XML en la CLI, el carácter ñ se asigna a su referencia de caracteres decimales UTF-8 equivalente.ñ El mismo resultado se produce si muestra la configuración en cualquier formato en una sesión de protocolo NETCONF o Junos XML.

Cuando cargue datos de configuración en un dispositivo, puede cargar caracteres que no sean ASCII utilizando sus referencias de caracteres decimales UTF-8 equivalentes.

Acerca de la especificación de instrucciones e identificadores

En este tema se proporcionan detalles sobre las instrucciones contenedor CLI y las instrucciones leaf para que sepa cómo especificarlas al crear archivos de configuración ASCII. En este tema también se describe cómo la CLI realiza la comprobación de tipos para comprobar que los datos introducidos tienen el formato correcto.

Especificación de instrucciones

Las instrucciones se muestran de dos maneras, ya sea con llaves ({ }) o sin:

  • Nombre e identificador de la instrucción, con una o más instrucciones de nivel inferior encerradas entre llaves:

  • Nombre de la instrucción, identificador y un identificador único:

El es el nombre de la instrucción.statement-name The es un nombre u otra cadena que identifica de forma exclusiva una instancia de una instrucción.identifier-name Se utiliza un identificador cuando se puede especificar una instrucción más de una vez en una configuración.

Al especificar una instrucción, debe especificar un nombre de instrucción, un nombre de identificador o ambos, dependiendo de la jerarquía de la instrucción.

Los identificadores se especifican de una de las maneras siguientes:

  • : es una palabra clave que se utiliza para identificar de forma exclusiva una instrucción cuando una instrucción se puede especificar más de una vez en una instrucción.identifier-nameidentifier-name

  • : la es una palabra clave y la es una variable de opción obligatoria.identifier-name valueidentifier-namevalue

  • [—La es una palabra clave que acepta varios valores.identifier-namevalue1 value2 value3 ...]identifier-name Los corchetes son necesarios cuando se especifica un conjunto de valores; Sin embargo, son opcionales cuando se especifica un solo valor.

Los ejemplos siguientes ilustran cómo se especifican las instrucciones y los identificadores en la configuración:

Cuando se crea un archivo de configuración ASCII, se especifican instrucciones e identificadores. Cada instrucción tiene un estilo preferido y la CLI utiliza ese estilo cuando muestra la configuración en respuesta a un comando de modo de configuración .show Puede especificar instrucciones e identificadores de una de las siguientes maneras:

  • Instrucción seguida de identificadores:

  • Instrucción seguida de identificadores entre llaves:

  • Para algunos identificadores repetitivos, puede utilizar un conjunto de llaves para todas las instrucciones:

Realización de la comprobación de tipos de CLI

Cuando se especifican identificadores y valores, la CLI realiza una comprobación de tipos para comprobar que los datos introducidos tienen el formato correcto. Por ejemplo, para una instrucción en la que debe especificar una dirección IP, la CLI requiere que escriba una dirección en un formato válido. De lo contrario, un mensaje de error indica lo que debe escribir. enumera los tipos de datos que comprueba la CLI. Los siguientes son tipos de entrada de configuración de CLI:

Tabla 1: Tipos de entrada de configuración de CLI

Tipo de datos

Formato

Ejemplos

Nombre de interfaz física (utilizado en la jerarquía [ )edit interfaces]

type-fpc/pic/port

Correct: et-0/0/1

Incorrect: et-0

Nombre completo de la interfaz

type-fpc/pic/port<:channel>.logical

Correct: et-0/0/1.0

Incorrect: et-0/0/1

Nombre de interfaz completo o abreviado (usado en lugares distintos de la jerarquía [ )edit interfaces]

type-<fpc</pic/port>><<: channel>.logical>

Correct: et, et-1, et-1/2/3:4.5

Dirección IP

0xhex-bytesoctet<. octet<.octet. <octet>>>

, , , Correct:1.2.3.40x01020304128.8.1128.8

Sample translations:

1.2.3 Se convierte 1.2.3.00x01020304 Se convierte 1.2.3.40x010203 Se convierte 0.1.2.3

Dirección IP (prefijo de destino) y longitud del prefijo

0xhex-bytes</length>octet<octet <octet.<octet>>></length>

Correct: 10/8, 128.8/16, 1.2.3.4/32, 1.2.3.4

Sample translations:

1.2.3 Se convierte 1.2.3.0/320x01020304 Se convierte 1.2.3.4/320x010203 Se convierte 0.1.2.3/32default Se convierte 0.0.0.0/0

Dirección de la Organización Internacional de Normalización (ISO)

hex-nibble<hex-nibble ...>

Correct: 47.1234.2345.3456.00, 47123423453456.00, 47.12.34.23.45.34.56.00

Sample translations:

47123456 Se convierte 47.1234.5647.12.34.56 Se convierte 47.1234.564712.3456 Se convierte 47.1234.56

Identificador de área (ID) de OSPF

0xhex-bytesoctet<.octet<.octet.< octet >>> decimal-number

Correct: 54, 0.0.0.54, 0x01020304, 1.2.3.4

Sample translations:

54 Se convierte 0.0.0.54

257 Se convierte 0.0.1.1128.8 Se convierte 128.8.0.00x010203 Se convierte 0.1.2.3

Acerca de la carga de una configuración desde un archivo

En los ejemplos siguientes se muestra el proceso de carga de una configuración desde un archivo.

Figura 1: Anulación de la configuración actualAnulación de la configuración actual
Figura 2: Uso de la opción de reemplazoUso de la opción de reemplazo
Figura 3: Uso de la opción de combinaciónUso de la opción de combinación
Figura 4: Uso de un archivo de revisiónUso de un archivo de revisión
Figura 5: Uso de la opción setUso de la opción set

Cargar un archivo de configuración

Puede crear un archivo de configuración en el sistema local, copiar el archivo en el dispositivo y, a continuación, cargar el archivo en la CLI. Después de cargar el archivo de configuración, puede confirmarlo para activar la configuración en el dispositivo. También puede editar la configuración de forma interactiva mediante la CLI y confirmarla más adelante.

Para cargar un archivo de configuración desde el sistema local:

  1. Cree el archivo de configuración utilizando un editor de texto como el Bloc de notas, asegurándose de que la sintaxis del archivo de configuración es correcta.
  2. En el archivo de texto de configuración, incluya una o varias de las siguientes opciones para realizar la acción necesaria cuando se cargue el archivo.
    Tabla 2: Opciones para el comando load
    Opciones Description

    merge

    Combina la configuración activa actual con la configuración del nombre de archivo que especifique o con la configuración que escriba en la ventana de terminal. Una operación es útil cuando se agrega una nueva sección a una configuración existente.merge Si la configuración activa y la configuración entrante contienen instrucciones contradictorias, las instrucciones de la configuración entrante invalidan las de la configuración activa.

    override

    Descarta la configuración actual del candidato. Carga la configuración en el nombre de archivo que especifique o la configuración que escriba en el terminal. Cuando se utiliza la opción y se confirma la configuración, todos los procesos del sistema reanalizan la configuración.override Puede utilizar la opción en cualquier nivel de la jerarquía.override

    replace

    Busca las etiquetas, elimina las instrucciones existentes con el mismo nombre, si las hay, y reemplaza las instrucciones existentes por la configuración entrante.replace Si no existe ninguna instrucción del mismo nombre, la operación agrega las instrucciones marcadas con la etiqueta a la configuración activa.replacereplace

    Nota:

    Para que esta operación funcione, debes incluir etiquetas en el archivo de texto o en la configuración que introduzcas en el terminal.replace

  3. Presione Ctrl+a para seleccionar todo el texto del archivo de configuración.
  4. Presione Ctrl + c para copiar el contenido del archivo de texto de configuración en el Portapapeles.
  5. Inicie sesión en el dispositivo con su nombre de usuario y contraseña.
  6. Ingrese al modo de configuración: user@host> configure

    [editar] user@host#

  7. Cargue el archivo de configuración: [editar] user@host# load merge terminal
  8. En el cursor, pegue el contenido del Portapapeles con el ratón y el icono Pegar: [edit] user@host# [Escriba ^D en una nueva línea para finalizar la entrada] >El cursor está aquí.load merge terminal Pegue el contenido del portapapeles aquí&lt;
  9. Presione Entrar.
  10. Presione Ctrl + d para establecer el marcador de fin de archivo.

Para ver los resultados de los pasos de configuración antes de confirmar la configuración, escriba el comando en el símbolo del usuario.show

Para confirmar estos cambios en la configuración activa, escriba el comando en el símbolo del usuario.commit También puede editar la configuración de forma interactiva mediante la CLI y confirmarla más adelante.

Cargar datos de configuración JSON con entradas de lista desordenadas

El esquema de Junos define determinados objetos de configuración como listas. En los datos de configuración JSON, una instancia de lista se codifica como un par nombre/matriz y los elementos de matriz son objetos JSON. Generalmente, el orden de los miembros en una entrada de lista codificada en JSON es arbitrario porque los objetos JSON son fundamentalmente colecciones desordenadas de miembros. Sin embargo, el esquema de Junos requiere que las claves de lista precedan a cualquier otro elemento relacionado dentro de una entrada de lista y aparezcan en el orden especificado por el esquema.

Por ejemplo, el objeto en el nivel de jerarquía es una lista donde es la clave de lista que identifica de forma exclusiva a cada usuario.user[edit system login]name

En los siguientes datos de configuración de ejemplo, la clave de lista () es el primer elemento para cada usuario.name De forma predeterminada, al cargar datos de configuración JSON, los dispositivos Junos requieren que las claves de lista precedan a cualquier otro elemento del mismo nivel dentro de una entrada de lista y aparezcan en el orden especificado por el esquema.

Los dispositivos Junos ofrecen dos opciones para cargar datos de configuración JSON que contienen entradas de lista desordenadas, es decir, entradas de lista en las que la clave de lista no es necesariamente el primer elemento.

  • Utilice el comando de modo operativo para generar datos de configuración JSON con entradas de lista ordenadas antes de cargar los datos en el dispositivo.request system convert-json-configuration

  • Configure la instrucción en el nivel jerárquico .reorder-list-keys[edit system configuration input format json] Después de configurar la instrucción, puede cargar datos de configuración JSON con entradas de lista desordenadas y el dispositivo reordena las claves de lista según lo requiera el esquema de Junos durante la operación de carga.

Nota:

Al configurar la instrucción, la operación de carga puede tardar mucho más en analizar la configuración, dependiendo del tamaño de la configuración y del número de listas.reorder-list-keys Por lo tanto, para configuraciones grandes o configuraciones con muchas listas, recomendamos usar el comando en lugar de la instrucción.request system convert-json-configurationreorder-list-keys

Por ejemplo, supongamos que el archivo contiene la siguiente configuración JSON.user-data.json Si intentó cargar la configuración, el dispositivo emitiría un error de carga porque la clave de lista no es el primer elemento de esa entrada de lista.admin2name

Si utiliza el comando con el archivo anterior como entrada, el comando genera el archivo de salida especificado con datos de configuración JSON que el dispositivo Junos puede analizar durante la operación de carga.request system convert-json-configuration

Como alternativa, puede configurar la instrucción de configuración.reorder-list-keys

Después de configurar la instrucción, puede cargar el archivo de configuración JSON original con entradas de lista desordenadas y el dispositivo controla las entradas de lista cuando analiza la configuración.