Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Arquivos de configuração de carregamento

Carregar arquivos de configuração no dispositivo é útil para carregar partes de arquivos de configuração que podem ser comuns em muitos dispositivos dentro de uma rede.

Exemplos para carregar uma configuração de um arquivo ou terminal

Você pode criar um arquivo contendo dados de configuração para um dispositivo da Juniper Networks, copiar o arquivo para o dispositivo local e, em seguida, carregar o arquivo para a CLI. Depois de carregar o arquivo, você pode empenhá-lo para ativar a configuração no dispositivo ou editar a configuração de maneira interativa usando a CLI e comprometer a configuração posteriormente.

Você também pode criar uma configuração enquanto digita no terminal e depois carregar a configuração. Carregar uma configuração do terminal é útil quando você está cortando partes existentes da configuração e colando-as em outros lugares da configuração.

Para carregar um arquivo de configuração existente localizado no dispositivo, você usa o comando do load modo de configuração:

Para carregar uma configuração do terminal, você usa a versão a seguir do load comando de modo de configuração. Pressione Ctrl-d para encerrar a entrada.

Para substituir uma configuração inteira, você especifica a opção override em qualquer nível da hierarquia. Uma load override operação substitui completamente a configuração atual do candidato pelo arquivo que você está carregando. Assim, se você salvou uma configuração completa, você usa essa opção.

Uma override operação descarta a configuração atual do candidato e carrega a configuração ou filename a configuração que você digita no terminal. Quando você usa a opção override e compromete a configuração, todos os processos do sistema repartem a configuração.

Para substituir porções de uma configuração, você especifica a opção replace . A load replace operação procura replace: tags que você adicionou ao arquivo carregado. A operação então substitui essas partes da configuração do candidato por tudo o que for especificado após a tag. Isso é útil quando você quer mais controle sobre exatamente o que está sendo mudado. Para que essa operação funcione, você deve incluir replace: tags no arquivo ou configuração que você digita no terminal. O software pesquisa as replace: tags, exclui as declarações existentes de mesmo nome, se houver, e as substitui pela configuração de entrada. Se nenhuma declaração de mesmo nome existir, a replace operação adicionará à configuração as declarações marcadas com a replace: tag.

Se, em uma override ou merge operação, você especificar um arquivo ou texto do tipo que contenha replace: tags, as replace: etiquetas serão ignoradas. Nesse cenário, a operação ou merge operação override tem precedência e é realizada.

Se você estiver realizando uma replace operação e se o arquivo que você especifica não tiver tags replace: , a replace operação será operada merge . A replace operação também funciona como uma merge operação se o texto que você digita não tiver tags replace: . Essas informações podem ser úteis se você estiver executando scripts automatizados e não puder saber com antecedência se os scripts precisam realizar uma replace operação ou uma merge operação. Os scripts podem usar a replace operação para cobrir ambos os casos.

A load merge operação mescla a configuração do arquivo ou terminal salvo com a configuração do candidato existente. Essas informações são úteis se você estiver adicionando novas seções de configuração. Por exemplo, suponha que você esteja adicionando uma configuração BGP ao nível de [edit protocols] hierarquia, onde não havia configuração BGP antes. Você pode usar a load merge operação para combinar a configuração de entrada com a configuração do candidato existente. Se a configuração existente e a configuração de entrada conterem declarações conflitantes, as declarações na configuração de entrada substituirão as da configuração existente.

Para substituir apenas as partes da configuração que mudaram, você especifica a opção update em qualquer nível da hierarquia. A load update operação compara a configuração do candidato e os novos dados de configuração. Essa operação muda apenas as partes da configuração do candidato que são diferentes da nova configuração. Você usaria essa operação, por exemplo, se houvesse uma configuração BGP existente e o arquivo que você está carregando a alterasse de alguma forma.

O merge, overridee update as opções oferecem suporte a dados de configuração de carregamento no formato JavaScript Object Notation (JSON). Ao carregar dados de configuração que usam o formato JSON, você deve especificar a opção json no comando. Para carregar dados de configuração JSON que contém entradas de lista não desordenadas, ou seja, listar entradas onde a chave da lista não é necessariamente o primeiro elemento da entrada da lista, veja Carregue dados de configuração JSON com entradas de lista não desordenadas.

Para alterar parte da configuração com um arquivo de patch, você especifica a opção patch . A load patch operação carrega uma entrada de arquivo ou terminal que contém alterações de configuração. Primeiro, em um dispositivo que já tem as mudanças de configuração, você digita o show | compare comando para deixar de lado as diferenças entre duas configurações. Em seguida, você pode carregar as diferenças em outro dispositivo. A vantagem do load patch comando é que ele salva você de ter que copiar trechos de diferentes níveis de hierarquia em um arquivo de texto antes de carregá-los no dispositivo alvo. Esse pode ser um economia de tempo útil se você estiver configurando vários dispositivos com as mesmas opções. Por exemplo, suponha que você configure uma política de roteamento no roteador1 e queira replicar a configuração de política no roteador2, roteador3 e roteador4. Você pode usar a load patch operação.

Neste exemplo, você primeiro executa o show | compare comando.

Example:

Continuando este exemplo, você copia a saída do show | compare comando para a prancheta, certificando-se de incluir os níveis de hierarquia. No roteador2, roteador3 e roteador4, você digita load patch terminal e cola a saída. Em seguida, pressione Enter e pressione Ctrl-d para encerrar a operação. Se a entrada de patch especificar valores diferentes para uma declaração existente, a entrada de patch substituirá a declaração existente.

Para usar a opção merge, replacesetou update opção sem especificar o nível de hierarquia completo, você especifica a opçãorelative. Essa opção carrega a configuração de entrada em relação ao seu ponto de edição atual na hierarquia de configuração.

Example:

Para carregar uma configuração que contenha set comandos de modo de configuração, especifique a opção set . Essa opção executa as instruções de configuração linha por linha conforme elas são armazenadas em um arquivo ou em um terminal. As instruções podem conter qualquer comando de modo de configuração, comoset, editeexittop.

Para copiar um arquivo de configuração de outro sistema de rede para o roteador local, você pode usar os serviços SSH e Telnet, conforme descrito no CLI Explorer.

Nota:

Se você estiver trabalhando em um ambiente de Critérios Comuns, as mensagens de log do sistema são criadas sempre que um secret atributo é alterado (por exemplo, alterações de senha ou alterações no segredo compartilhado RADIUS). Essas alterações são registradas durante as seguintes operações de carga de configuração:

Como a codificação de caracteres funciona nos dispositivos da Juniper Networks

Os dados de configuração e a saída de comando operacional do Junos OS podem conter caracteres não ASCII, que estão fora do conjunto de caracteres ASCII de 7 bits. Ao exibir dados operacionais ou de configuração em determinados formatos ou em um determinado tipo de sessão, o software escapa e codifica esses caracteres. O software escapa ou codifica os caracteres usando a referência de caráter decimais UTF-8 equivalente.

A CLI tenta exibir quaisquer caracteres não ASCII em dados de configuração produzidos em formato de texto, conjunto ou JSON. A CLI também tenta exibir esses caracteres em saída de comando produzida em formato de texto. Nos casos de exceção, a CLI exibe a referência de caráter decimais UTF-8. (Casos de exceção incluem dados de configuração em formato XML e saída de comando no formato XML ou JSON,) Nas sessões de protocolo NETCONF e Junos XML, você vê um resultado semelhante se solicitar dados de configuração ou saída de comando que contenha caracteres não ASCII. Nesse caso, o servidor devolve a referência de caráter decimal UTF-8 equivalente para esses caracteres para todos os formatos.

Por exemplo, suponha que a seguinte conta de usuário, que contém a letra pequena n em latim com um azulejo (ñ), esteja configurada no dispositivo.

Quando você exibe a configuração resultante em formato de texto, a CLI imprime o personagem correspondente.

Quando você exibe a configuração resultante em formato XML na CLI, o personagem ñ mapeia para sua referência ñde caráter decimais UTF-8 equivalente. O mesmo resultado ocorre se você exibir a configuração em qualquer formato em uma sessão de protocolo NETCONF ou Junos XML.

Quando você carrega dados de configuração em um dispositivo, você pode carregar caracteres não ASCII usando suas referências de caracteres decimais UTF-8 equivalentes.

Sobre especificar declarações e identificadores

Este tópico fornece detalhes sobre declarações de contêiner de CLI e declarações do leaf para que você saiba como especifique-as ao criar arquivos de configuração ASCII. Este tópico também descreve como a CLI executa a verificação do tipo para verificar se os dados que você inseriu estão no formato correto.

Especificando declarações

As declarações são mostradas de duas maneiras, com aparelho ({ }) ou sem:

  • Nome e identificador de declaração, com uma ou mais declarações de nível inferior fechadas em aparelhos:

  • Nome da declaração, identificador e um único identificador:

O statement-name nome da declaração. O identifier-name é um nome ou outra cadeia que identifica exclusivamente uma instância de uma declaração. Você usa um identificador quando uma declaração pode ser especificada mais de uma vez em uma configuração.

Ao especificar uma declaração, você deve especificar um nome de declaração, um nome de identificador ou ambos, dependendo da hierarquia da declaração.

Você especifica identificadores de uma das seguintes maneiras:

  • identifier-name— A identifier-name palavra-chave é usada para identificar uma declaração com exclusividade quando uma declaração pode ser especificada mais de uma vez em uma declaração.

  • identifier-name value— A identifier-name palavra-chave é uma variável de opção value necessária.

  • identifier-name [value1 value2 value3 ...]— A identifier-name palavra-chave é uma palavra-chave que aceita vários valores. Os suportes são necessários quando você especifica um conjunto de valores; no entanto, eles são opcionais quando você especifica apenas um valor.

Os exemplos a seguir ilustram como as declarações e identificadores são especificados na configuração:

Quando você cria um arquivo de configuração ASCII, você especifica declarações e identificadores. Cada declaração tem um estilo preferido, e a CLI usa esse estilo ao exibir a configuração em resposta a um comando de modo show de configuração. Você pode especificar declarações e identificadores de uma das seguintes maneiras:

  • Declaração seguida de identificadores:

  • Declaração seguida por identificadores fechados em aparelhos:

  • Para alguns identificadores repetitivos, você pode usar um conjunto de aparelhos para todas as declarações:

Verificação de tipo de CLI

Quando você especifica identificadores e valores, a CLI realiza verificação do tipo para verificar se os dados inseridos estão no formato correto. Por exemplo, para uma declaração na qual você deve especificar um endereço IP, a CLI exige que você insira um endereço em um formato válido. Caso contrário, uma mensagem de erro indica o que você precisa digitar. lista os tipos de dados que a CLI verifica. Os seguintes são os tipos de entrada de configuração CLI:

Tabela 1: Tipos de entrada de configuração CLI

Tipo de dados

Formato

Exemplos

Nome da interface física (usado na [edit interfaces] hierarquia)

type-fpc/pic/port

Correct: et-0/0/1

Incorrect: et-0

Nome completo da interface

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

Correct: et-0/0/1.0

Incorrect: et-0/0/1

Nome de interface completo ou abreviado (usado em lugares diferentes da [edit interfaces] hierarquia)

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

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

Endereço IP

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

Correct: 1.2.3.4, 0x01020304, 128.8.1, 128.8

Sample translations:

1.2.3 Fica 1.2.3.00x01020304 Fica 1.2.3.40x010203 Fica 0.1.2.3

Endereço IP (prefixo de destino) e comprimento do prefixo

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 Fica 1.2.3.0/320x01020304 Fica 1.2.3.4/320x010203 Fica 0.1.2.3/32default Fica 0.0.0.0/0

Endereço da Organização Internacional para Padronização (ISO)

hex-nibble<hex-nibble ...>

Correct: 47.1234.2345.3456.00, 47123423453456.00, 47.12.34.23.45.34.56.00

Sample translations:

47123456 Fica 47.1234.5647.12.34.56 Fica 47.1234.564712.3456 Fica 47.1234.56

Identificador de área de OSPF (ID)

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

Correct: 54, 0.0.0.54, 0x01020304, 1.2.3.4

Sample translations:

54 Fica 0.0.0.54

257 Fica 0.0.1.1128.8 Fica 128.8.0.00x010203 Fica 0.1.2.3

Sobre o carregamento de uma configuração a partir de um arquivo

Os exemplos a seguir demonstram o processo de carregar uma configuração de um arquivo.

Figura 1: Substituindo a configuração atual Substituindo a configuração atual
Figura 2: Usando a opção de substituição Usando a opção de substituição
Figura 3: Usando a opção de mesclar Usando a opção de mesclar
Figura 4: Usando um arquivo de patch Usando um arquivo de patch
Figura 5: Usando a opção definida Usando a opção definida

Faça o upload de um arquivo de configuração

Você pode criar um arquivo de configuração em seu sistema local, copiar o arquivo para o dispositivo e, em seguida, carregar o arquivo na CLI. Depois de carregar o arquivo de configuração, você pode empenhá-lo para ativar a configuração no dispositivo. Você também pode editar a configuração de maneira interativa usando a CLI e empenhá-la posteriormente.

Para carregar um arquivo de configuração do seu sistema local:

  1. Crie o arquivo de configuração usando um editor de texto como o Notepad, certificando-se de que a sintaxe do arquivo de configuração esteja correta.
  2. No arquivo de texto de configuração, inclua uma ou mais das seguintes opções para realizar a ação necessária quando o arquivo for carregado.
    Tabela 2: Opções para o comando de carga
    Opções Descrição

    merge

    Combina a configuração ativa atual com a configuração no nome do arquivo que você especifica ou a configuração que você digita na janela do terminal. Uma merge operação é útil quando você está adicionando uma nova seção a uma configuração existente. Se a configuração ativa e a configuração de entrada conterem declarações conflitantes, as declarações na configuração de entrada substituirão as da configuração ativa.

    override

    Descarta a configuração atual do candidato. Carrega a configuração no nome do arquivo que você especifica ou a configuração que você digita no terminal. Quando você usa a opção override e compromete a configuração, todos os processos do sistema repartem a configuração. Você pode usar a opção override em qualquer nível da hierarquia.

    replace

    Pesquise as replace tags, exclua as declarações existentes de mesmo nome, se houver, e substitua as declarações existentes pela configuração de entrada. Se nenhuma declaração de mesmo nome existir, a replace operação adicionará as declarações marcadas com a replace tag à configuração ativa.

    Nota:

    Para que essa operação funcione, você deve incluir replace tags no arquivo de texto ou na configuração em que você entra no terminal.

  3. Pressione o Ctrl+a para selecionar todo o texto no arquivo de configuração.
  4. Pressione o Ctrl+c para copiar o conteúdo do arquivo de texto de configuração para a Prancheta.
  5. Faça login no dispositivo usando seu nome de usuário e senha.
  6. Insira o modo de configuração: user@host> configure

    [editar] user@host #

  7. Carregue o arquivo de configuração: [editar] user@host # load merge terminal
  8. No cursor, cole o conteúdo da prancheta usando o mouse e o ícone da pasta: [editar] user@host# load merge terminal [Tipo ^D em uma nova linha de entrada final] >Cursor está aqui. Cole o conteúdo da prancheta aqui<
  9. Press Enter.
  10. Pressione Ctrl+d para definir o marcador de fim de arquivo.

Para visualizar os resultados das etapas de configuração antes de comprometer a configuração, digite o show comando no prompt do usuário.

Para comprometer essas alterações na configuração ativa, digite o commit comando no prompt do usuário. Você também pode editar a configuração de maneira interativa usando a CLI e empenhá-la posteriormente.

Carregue dados de configuração JSON com entradas de lista não desordenadas

O esquema Junos define certos objetos de configuração como listas. Nos dados de configuração JSON, uma instância de lista é codificada como um par de nome/array, e os elementos do array são objetos JSON. Geralmente, a ordem dos membros em uma entrada de lista codificada por JSON é arbitrária porque os objetos JSON são coleções fundamentalmente não ordenadas de membros. No entanto, o esquema Junos exige que as chaves da lista precedam quaisquer outros irmãos dentro de uma entrada da lista e apareçam na ordem especificada pelo esquema.

Por exemplo, o user objeto no nível de [edit system login] hierarquia é uma lista onde name está a chave da lista que identifica cada usuário com exclusividade.

Nos dados de configuração da amostra a seguir, a chave da lista (name) é o primeiro elemento para cada usuário. Por padrão, quando você carrega dados de configuração JSON, os dispositivos Junos exigem que as chaves da lista precedam quaisquer outros irmãos dentro de uma entrada de lista e apareçam na ordem especificada pelo esquema.

Os dispositivos Junos oferecem duas opções para carregar dados de configuração JSON que contêm entradas de lista não desordenadas, ou seja, listar entradas onde a chave da lista não é necessariamente o primeiro elemento.

  • Use o comando de request system convert-json-configuration modo operacional para produzir dados de configuração JSON com entradas de lista ordenadas antes de carregar os dados no dispositivo.

  • Configure a reorder-list-keys declaração no nível de [edit system configuration input format json] hierarquia. Depois de configurar a declaração, você pode carregar dados de configuração JSON com entradas de lista não desordenadas, e o dispositivo reordena as chaves da lista conforme exigido pelo esquema Junos durante a operação de carga.

Nota:

Quando você configura a reorder-list-keys declaração, a operação de carga pode levar significativamente mais tempo para analisar a configuração, dependendo do tamanho da configuração e do número de listas. Assim, para configurações ou configurações grandes com muitas listas, recomendamos usar o request system convert-json-configuration comando em vez da reorder-list-keys declaração.

Por exemplo, suponha que o user-data.json arquivo contenha a seguinte configuração JSON. Se você tentasse carregar a configuração, o dispositivo emitiria um erro de carga porque admin2 a chave name da lista não é o primeiro elemento nessa entrada da lista.

Se você usar o request system convert-json-configuration comando com o arquivo anterior como entrada, o comando gera o arquivo de saída especificado com dados de configuração JSON que o dispositivo Junos pode analisar durante a operação de carga.

Alternativamente, você pode configurar a declaração de reorder-list-keys configuração.

Depois de configurar a declaração, você pode carregar o arquivo de configuração JSON original com entradas de lista não desordenadas, e o dispositivo lida com as entradas da lista quando analisa a configuração.