Nesta página
Como modificar a configuração do dispositivo da Juniper Networks
Como adicionar declarações e identificadores de configuração
Como excluir uma declaração de uma configuração de dispositivo
Exemplo: Exclua uma declaração da configuração do dispositivo
Insira um novo identificador na configuração de um dispositivo
Exemplo: Insira um novo identificador na configuração de um dispositivo
Desativar e reativar declarações e identificadores em uma configuração de dispositivo
Exemplo: Desativar e reativar declarações e identificadores em uma configuração de dispositivo
Exemplo: Como usar a substituição global em uma configuração de dispositivo — a referência de volta
Exemplo: Substituição global em uma configuração de dispositivo — substituindo um nome de interface
Exemplo: Substituição global em uma configuração de dispositivo — a opção atualizada
Exemplo: Inclua comentários em uma configuração de dispositivo usando a CLI
Modifique a configuração de um dispositivo
A CLI permite que você modifique uma configuração existente Junos OS . Esta seção explica os detalhes de adicionar uma declaração, excluir uma declaração, copiar uma declaração e inserir um novo identificador, incluindo exemplos.
Exibir usuários atualmente editando a configuração
Para exibir os usuários que estão editando a configuração atualmente, use o comando do modo de configuração:status
user@host# status
Users currently editing the configuration:
rchen terminal p0 (pid 55691) on since 2018-03-01 13:17:25 PST
[edit interfaces]
O sistema exibe quem está editando a configuração (), onde o usuário está logado (), a data e a hora em que o usuário está logado () e qual nível da hierarquia o usuário está editando ().rchen
terminal p0
2018-03-01 13:17:25
PST
[edit interfaces]
Se você emitir o comando do modo de configuração e um usuário tiver agendado uma configuração do candidato para ficar ativo por um tempo futuro, o sistema exibe quem agendou o commit (), onde o usuário está logado (), a data e a hora em que o usuário está logado () e que um compromisso está pendente status
root
terminal d0
2018-10-31 14:55:15 PST
(commit at).
[edit]
user@host# status
Users currently editing the configuration:
root terminal d0 (pid 767) on since 2018-10-31 14:55:15 PST, idle 00:03:09
commit at
Se você emitir o comando do modo de configuração e um usuário estiver editando a configuração no modo exclusivo de configuração, o sistema exibe quem está editando a configuração (), onde o usuário está logado (), a data e hora em que o usuário está logado () e que um usuário está editando a configuração no modo exclusivo de configuração ().status
root
terminal d0
2018-11-01 13:05:11 PST
exclusive [edit]
[edit]
user@host# status
Users currently editing the configuration:
root terminal d0 (pid 2088) on since 2018-11-01 13:05:11 PST
exclusive [edit]
Consulte também
Como modificar a configuração do dispositivo da Juniper Networks
Para configurar um dispositivo da Juniper Networks ou modificar uma configuração existente, você adiciona declarações à configuração usando o e comandos.edit
set
Para cada hierarquia de declaração, você cria a hierarquia começando com uma declaração no nível superior. Em seguida, você continua criando a hierarquia com declarações que se movem progressivamente mais baixo na hierarquia.
Para modificar a hierarquia, você usa dois comandos de modo de configuração. Selecione o comando relevante com base no que deseja realizar:
edit
— Migra para um nível de hierarquia especificado. Se esse nível de hierarquia não existir, o comando o cria.edit
O comando tem a seguinte sintaxe:edit
edit <statement-path>
set
— Cria uma declaração de configuração e define os valores do identificador. Depois de emitir um comando, você permanece no mesmo nível na hierarquia.set
O comando tem a seguinte sintaxe:set
set <statement-path> statement <identifier>
A hierarquia para a declaração de configuração e a declaração em si é .
statement-path
Se você já tiver se mudado para o nível de hierarquia da declaração, você pode omitir o caminho da declaração. A declaração de configuração em si é .statement
A corda identifica uma instância de uma declaração.identifier
As declarações podem ser declarações de contêiner ou declarações da leaf. Uma declaração de contêiner pode incluir declarações adicionais de contêiner dentro dele, bem como declarações da leaf. Uma declaração da leaf, no entanto, está sozinha. O comando exibe as declarações do contêiner enquanto exibe as declarações do contêiner e da leaf, usando para diferenciar entre elas.edit?
set?
>
Você não pode usar o comando para alterar o valor dos identificadores.edit
Você deve usar o comando.set
Consulte também
Como adicionar declarações e identificadores de configuração
Você configura todas as propriedades de um dispositivo da Juniper Networks incluindo declarações na configuração. Uma declaração consiste em uma palavra-chave, que é texto fixo. Você também pode incluir um identificador em uma declaração. Um identificador é um nome de identificação que você define, como o nome de uma interface ou um nome de usuário, e que permite que você e a CLI discriminam uma coleção de declarações.
Por exemplo, a lista a seguir mostra as declarações disponíveis no nível superior no modo de configuração:
user@host# set ?
Possible completions:
> accounting-options Accounting data configuration
+ apply-groups Groups from which to inherit configuration data
> chassis Chassis configuration
> class-of-service Class-of-service configuration
> firewall Define a firewall configuration
> forwarding-options Configure options to control packet sampling
> groups Configuration groups
> interfaces Interface configuration
> policy-options Routing policy option configuration
> protocols Routing protocol configuration
> routing-instances Routing instance configuration
> routing-options Protocol-independent routing option configuration
> snmp Simple Network Management Protocol
> system System parameters
Um suporte de ângulo ( ) antes que o nome da declaração indique que é uma declaração de contêiner e que você pode definir outras declarações em níveis abaixo dele.>
Se não houver suporte de ângulo antes do nome da declaração, a declaração é uma declaração leaf; você não pode definir outras declarações nos níveis de hierarquia abaixo dela.>
Um sinal plus (+) antes que o nome da declaração indique que ele pode conter um conjunto de valores. Para especificar um conjunto, inclua os valores entre parênteses. Por exemplo:
[edit]
user@host# set policy-options community my-as1-transit members [65535:10 65535:11]
Em algumas declarações, você pode incluir um identificador. Para alguns identificadores, como nomes de interface, você deve especificar o identificador em um formato preciso. Por exemplo, o nome da interface so-0/0/0 refere-se a uma interface SONET/SDH que está no Concentrador PIC Flexível (FPC) no slot 0, no primeiro local pic e na primeira porta na placa de interface física (PIC).
Para outros identificadores, como nomes de texto descritivo de interface e políticas e de termos de firewall, você pode especificar qualquer nome, incluindo caracteres especiais, espaços e guias.
Você deve incluir identificadores entre aspas (cotações duplas). Você também deve usar aspas para incluir identificadores e quaisquer strings que incluam um espaço, um caractere de guia ou qualquer um dos seguintes caracteres:
( ) [ ] { } ! @ # $ % ^ & | ' = ?
Se você não digitar uma opção para uma declaração que exija uma, uma mensagem indica o tipo de informação necessária. Neste exemplo, você deve digitar um número de área para completar o comando:
[edit]
user@host# set protocols ospf area
^
syntax error, expecting <identifier>
Consulte também
Como excluir uma declaração de uma configuração de dispositivo
Você exclui uma declaração ou identificador de uma configuração de dispositivo usando o comando do modo de configuração.delete
Excluir uma declaração ou um identificador efetivamente "não configura" a funcionalidade associada a essa declaração ou identificador, devolvendo essa funcionalidade à sua condição padrão.
user@host# delete <statement-path> <identifier>
Ao excluir uma declaração, a declaração e todas as suas declarações subordinadas e identificadores são removidos da configuração.
Para declarações que podem ter mais de um identificador, quando você exclui um identificador, apenas esse identificador é excluído. Os outros identificadores na declaração permanecem.
Para excluir toda a hierarquia a partir do nível de hierarquia atual, use o comando sem especificar uma declaração ou um identificador.delete
Ao omitir a declaração ou o identificador, você é solicitado a confirmar a exclusão:
[edit]
user@host# delete
Delete everything under this level? [yes, no] (no)
Possible completions:
no Don't delete everything under this level
yes Delete everything under this level
Delete everything under this level? [yes, no] (no)
Você não pode excluir várias declarações ou identificadores dentro de uma hierarquia usando um único comando.delete
Você deve excluir cada declaração ou identificador individualmente, usando vários comandos.delete
Por exemplo, considere a seguinte configuração no nível de hierarquia:[edit system]
system { host-name host-211; domain-name domain-122; backup-router 192.168.71.254; arp; authentication-order [ radius password tacplus ]; }
Para excluir a , e da configuração, você deve excluir cada declaração individualmente.domain-name
host-name
backup-router
user@hostdelete system host-name host-211
user@hostdelete system domain-name domain-122
user@hostdelete system backup-router 192.168.71.254
Você não pode emitir um único comando.delete
Por exemplo, o comando a seguir não funcionaria:
user@host> delete system hostname host-211 domain-name domain-122 backup-router 192.168.71.254
Você pode excluir itens de configuração relacionados simultaneamente, como interfaces canalizadas ou rotas estáticas, usando um único comando e expressões regulares. Excluir uma declaração ou um identificador efetivamente "não configura" a funcionalidade associada a essa declaração ou identificador, devolvendo essa funcionalidade à sua condição padrão.
Você pode excluir apenas certas partes da configuração onde normalmente você coloca vários itens, como interfaces. No entanto, você não pode excluir "grupos" de diferentes itens, como mostrado neste exemplo:
user@host#show system services
ftp; rlogin; rsh; ssh { root-login allow; } telnet; [edit] user@host#wildcard delete system services *
syntax error.
Ao excluir uma declaração, a declaração e todas as suas declarações subordinadas e identificadores são removidos da configuração.
Para excluir itens de configuração relacionados, emita o comando de modo de configuração com a opção e especifique o caminho de declaração, os itens a serem resumidos com uma expressão regular e a expressão regular, da seguinte forma:wildcard
delete
user@host# wildcard delete <statement-path> <identifier> <regular-expression>
Quando você usa o comando para excluir itens de configuração relacionados, a expressão regular deve ser a declaração final.wildcard
Se for compatível com mais de oito itens relacionados, a CLI exibe apenas os oito primeiros itens.Junos OS
Como excluir interfaces da configuração
Você pode excluir várias interfaces T1 na faixa de até lá usando esta sintaxe:t1-0/0/0:0
t1-0/0/0:23
user@host# wildcard delete interfaces t1-0/0/0:.*
matched: t1-0/0/0:0
matched: t1-0/0/0:1
matched: t1-0/0/0:2
Delete 3 objects? [yes,no] (no) no
Como excluir rotas da configuração
Você pode excluir rotas estáticas na faixa de até usando esta sintaxe:172.0.0.0
172.255.0.0
user@host# wildcard delete routing-options static route 172.*
matched: 172.16.0.0/12
matched: 172.16.14.0/24
matched: 172.16.100.0/24
matched: 172.16.128.0/19
matched: 172.16.160.0/24
matched: 172.17.12.0/23
matched: 172.17.24.0/23
matched: 172.17.28.0/23
...
Delete 13 objects? [yes,no] (no)
Exemplo: Exclua uma declaração da configuração do dispositivo
O exemplo a seguir mostra como excluir a declaração, efetivamente inconfigurante OSPF no roteador:ospf
[edit] user@host#set protocols ospf area 0.0.0.0 interface so-0/0/0 hello-interval 5
[edit] user@host#show
protocols { ospf { area 0.0.0.0 { interface so-0/0/0 { hello-interval 5; } } } } [edit] user@host#delete protocols ospf
[edit] user@host#show
[edit] user@host#
Exclua todas as declarações do nível atual para baixo:
[edit] user@host#edit protocols ospf area 0.0.0.0
[edit protocols ospf area 0.0.0.0] user@host#set interface so-0/0/0 hello-interval 5
[edit protocols ospf area 0.0.0.0] user@host#delete
Delete everything under this level? [yes, no]yes
[edit protocols ospf area 0.0.0.0] user@host#show
[edit] user@host#
Desconfigure uma propriedade específica. Neste exemplo, remova a configuração de velocidade da interface:
[edit] user@host#set interfaces so-3/0/0 speed 100mb
[edit] user@host#show
interfaces { so-3/0/0 { speed 100mb; } } [edit] user@host#delete interfaces so-3/0/0 speed
[edit] user@host#show
interfaces { so-3/0/0; }
Copie uma declaração na configuração
Quando você tem muitas declarações semelhantes em uma configuração de dispositivo, você pode adicionar uma declaração e, em seguida, fazer cópias dessa declaração. Copiar uma declaração duplica essa declaração e toda a hierarquia de declarações configuradas sob essa declaração. Copiar declarações é útil quando você está configurando muitas interfaces físicas ou lógicas do mesmo tipo.
Para fazer uma cópia de uma declaração existente na configuração:
- Use o comando do modo de configuração:
copy
user@host#
copy existing-statement to new-statement
- Logo após ter copiado uma parte da configuração, verifique a validade da nova configuração.
- Se a configuração for inválida, modifique a porção copiada ou a porção original para produzir uma configuração válida.
Exemplo: Copie uma declaração na configuração
Este exemplo mostra como você pode criar uma conexão virtual (VC) em uma interface copiando um VC existente.
Requisitos
Nenhuma configuração especial além da inicialização do dispositivo é necessária antes de configurar este exemplo.
Antes de começar este exemplo, configure a seguinte configuração inicial:
[edit interfaces]
user@host# show
at-1/0/0 {
description "PAIX to MAE West"
encapsulation atm-pvc;
unit 61 {
point-to-point;
vci 0.61;
family inet {
address 10.0.1.1/24;
}
}
}
Para configurar rapidamente a configuração inicial para este exemplo, copie os seguintes comandos, cole-os em um arquivo de texto, remova quaisquer quebras de linha e altere quaisquer detalhes necessários para combinar com a configuração da sua rede, copiar e colar este comando no CLI no nível de hierarquia e, em seguida, entrar no modo de configuração.[edit]
commit
set interfaces at-1/0/0 description "PAIX to MAE West" set interfaces at-1/0/0 encapsulation atm-pvc set interfaces at-1/0/0 unit 61 point-to-point set interfaces at-1/0/0 unit 61 vci 0.61 set interfaces at-1/0/0 unit 61 family inet address 10.0.1.1/24
Visão geral
Neste exemplo que ilustra como copiar declarações, você adiciona uma conexão virtual muito semelhante a uma conexão virtual já configurada.
Configuração
Configuração rápida da CLI
Comece no nível hierárquica .[edit interfaces at-1/0/0]
copy unit 61 to unit 62
set unit 62 vci 0.62
edit unit 62
replace pattern 10.0.1.1 with 10.0.2.1
Configure copiando
Procedimento passo a passo
Para configurar copiando uma configuração:
Vá para o nível de hierarquia e copie a unidade 61.
[edit interfaces at-1/0/0]
[edit interfaces at-1/0/0] user@host#
copy unit 61 to unit 62
-
Dê uma olhada na nova configuração e veja o que você precisa mudar para tornar a configuração válida.
user@host#
show interfaces at-1/0/0
description "PAIX to MAE West" encapsulation atm-pvc; unit 61 { point-to-point; vci 0.61; family inet { address 10.0.1.1/24; } } unit 62 { point-to-point; vci 0.61; family inet { address 10.0.1.1/24; } } Altere a configuração para torná-la válida.
Neste exemplo, você deseja reconfigurar o identificador de circuito virtual (VCI) e o identificador de caminho virtual (VPI).
[edit interfaces at-1/0/0] user@host#
set unit 62 vci 0.62
Você também deseja substituir o endereço IP da nova interface por seu próprio endereço IP.
[edit interfaces at-1/0/0] user@host#
edit unit 62
user@host#replace pattern 10.0.1.1 with 10.0.2.1
Resultados
[edit] show interfaces at-1/0/0 { description "PAIX to MAE West" encapsulation atm-pvc; unit 61 { point-to-point; vci 0.61; family inet { address 10.0.1.1/24; } } unit 62 { point-to-point; vci 0.62; family inet { address 10.0.2.1/24; } } }
Exemplo: Substitua uma configuração
Se você precisar fazer alterações na configuração de um dispositivo, você sempre pode remover as configurações de configuração originais usando o comando e adicionar suas novas configurações de configuração usando o comando.delete
set
No entanto, existem outras maneiras de modificar uma configuração que são mais eficientes e fáceis de usar.
Este exemplo mostra como usar os seguintes comandos de modo de configuração para atualizar uma configuração existente:
rename
— Renomeie uma configuração existente, como um nome de interface. Esse comando pode ser útil quando você está adicionando novas interfaces a um dispositivo.copy
— Copie uma configuração de configuração e toda a hierarquia de declarações configuradas sob essa configuração. Copiar declarações de configuração é útil quando você está configurando muitas interfaces físicas ou lógicas do mesmo tipo.replace
— Faça mudanças globais nos padrões de texto na configuração. Por exemplo, se você escrever consistentemente uma palavra comum à declaração de descrição de todas as interfaces do seu dispositivo, você pode corrigir esse erro com um único comando.
Requisitos
Nenhuma configuração especial além da inicialização do dispositivo é necessária antes de configurar este exemplo.
Visão geral
Durante o primeiro exemplo neste tópico, você faz as seguintes alterações de configuração:
Crie uma nova interface com uma descrição que contenha um erro de digitação.
Copie a configuração da interface que você criou para criar uma nova interface.
Renomeie uma das interfaces que você criou.
Corrija o erro de digitação na descrição das interfaces que você criou.
No segundo exemplo mais curto, você tenta alguns dos mesmos comandos em circunstâncias um pouco diferentes.
Configuração
- Use a cópia, renomeie e substitua comandos para modificar uma configuração de interface de loopback
- Compare o comando de cópia no nível de hierarquia de configuração de alto nível
Use a cópia, renomeie e substitua comandos para modificar uma configuração de interface de loopback
Procedimento passo a passo
Se a sua configuração existente usar algum dos números da unidade de interface de loopback usado neste exemplo, você deve substituir diferentes números de unidade de interface de loopback não utilizados. Caso contrário, seguir essas etapas pode prejudicar o status operacional existente do seu dispositivo.
Para criar e modificar uma configuração de uma interface de loopback usando o e os comandos:copy
rename
replace
-
Crie um novo número de unidade de interface de loopback e inclua uma descrição.
Os erros na ortografia do loopback na descrição são intencionais.
[edit] user@host#
set interfaces lo0 unit 100 description "this is a lopbck interface"
-
Exibir a configuração para a interface de loopback que você acabou de adicionar.
[edit] user@host#
show interfaces lo0 unit 100
description "this is a lopbck interface";
-
Duplicar a interface de loopback que você acabou de criar, erros incluídos, da unidade 100 à unidade 101.
[edit] user@host#
copy interfaces lo0 unit 100 to unit 101
-
Exibir as configurações para interfaces de loopback lo0 unidade 100 e unidade lo0 101.
[edit] user@host#
show interfaces lo0 unit 100
description "this is a lopbck interface";
[edit] user@host#show interfaces lo0 unit 101
description "this is a lopbck interface";
O comando duplica uma interface, incluindo quaisquer declarações de crianças, como .
copy
description
-
Renomeie a interface de loopback lo0 unidade 100 para interface de loopback lo0 unidade 102.
[edit] user@host#
rename interfaces lo0 unit 100 to unit 102
-
Exibir a configuração para interface de loopback lo0 unidade 100.
[edit] user@host#
show interfaces lo0 unit 100
[edit] user@host#Você não deve ver nenhum resultado deste comando. A interface de loopback lo0 unit 100 já se foi. O comando substitui a declaração de configuração indicada pela nova configuração.
rename
-
Corrija a ortografia incorreta da palavra loopback nas descrições para interfaces de loopback lo0 unidade 101 e lo0 unidade 102.
[edit] user@host#
replace pattern lopbck with loopback
-
Exibir a configuração para interfaces de loopback lo0 unidade 101 e lo0 102 para verificar se a palavra loopback agora está escrito corretamente.
[edit] user@host#
show interfaces lo0 unit 101
description "this is a loopback interface";
[edit] user@host#show interfaces lo0 unit 102
description "this is a loopback interface";
O comando substitui todas as instâncias do padrão especificado no comando, a menos que limitado de alguma forma.
replace
O próximo exemplo neste tópico mostra uma maneira de limitar o efeito do comando.replace
-
No modo de configuração, use o comando para devolvera configuração do dispositivo ao estado em que estava antes de executar as etapas anteriores.
rollback
[edit] user@host#
rollback
Resultados
No modo de configuração, use o e comandos para garantir que a configuração do dispositivo esteja no estado em que estava antes de executar as etapas neste exemplo.show interfaces lo0 unit 101
show interfaces lo0 unit 102
[edit]
user@host: show interfaces lo0 unit 101
[edit]
user@host#
Você não deve ver nenhum resultado deste comando.
[edit] user@host# show interfaces lo0 unit 102 [edit] user@host#
Você não deve ver nenhum resultado deste comando.
Compare o comando de cópia no nível de hierarquia de configuração de alto nível
Procedimento passo a passo
O exemplo anterior mostra o e os comandos no nível hierárquicos.copy
rename
replace
[edit interfaces interface-name unit logical-interface-number]
Este exemplo mostra como alguns desses comandos funcionam no nível superior da hierarquia do modo de configuração CLI.
O exemplo a seguir exige que você navegue a vários níveis na hierarquia de configuração. Para obter informações sobre como navegar na CLI, consulte Usando o Editor de CLI no modo de configuração .Use o editor de CLI no modo de configuração
-
Crie uma interface Ethernet.
[edit] user@host#
set interfaces et-2/0/0 unit 0 family inet address 192.0.2.2
-
Copie a interface que você acabou de criar para outra interface.
[edit] user@host#
copy interfaces et-2/0/0 to et-2/1/0
Compare este comando com o do exemplo anterior, em que o comando toma a palavra-chave antes que o valor seja copiado:
copy
copy
unit
[edit] user@host#
copy interfaces lo0 unit 100 to unit 101
Observe que a palavra-chave não se repete após a preposição e antes que o valor seja copiado.
interfaces
to
Isso acontece em algumas declarações de alto nível com o comando.copy
Dica:Da mesma forma, no comando, você não repete a parte da palavra-chave da declaração antes do novo identificador em algumas declarações de alto nível.
rename
-
Mostre sua configuração até agora.
[edit] user@host#
show interfaces
et-2/0/0 { unit 0 { family inet { address 192.0.2.2/32; } } } et-2/1/0 { unit 0 { family inet { address 192.0.2.2/32; } } } -
Substitua o endereço por et-2/1/0 por outro endereço IP.
[edit interfaces et-2/1/0 unit 0 family inet] user@host#
replace pattern 192.0.2.2 with 192.0.2.40
Observe que se você quiser alterar apenas uma ocorrência específica de um padrão em vez de todas as ocorrências, você deve navegar até esse nível de hierarquia específico antes de usar o comando.
replace
-
Mostre as interfaces novamente.
[edit] user@host#
show interfaces
et-2/0/0 { unit 0 { family inet { address 192.0.2.2/32; } } } et-2/1/0 { unit 0 { family inet { address 192.0.2.40/32; } } } -
No modo de configuração, use o comando para devolver a configuração do dispositivo ao estado em que estava antes de executar as etapas anteriores.
rollback
[edit] user@host#
rollback
Resultados
No modo de configuração, use o e comandos para garantir que a configuração do dispositivo esteja no estado em que estava antes de executar as etapas neste exemplo.show interfaces et-2/0/0
show interfaces et-2/1/0
[edit]
user@hostshow interfaces et-2/0/0
[edit]
user@host#
Você não deve ver nenhum resultado deste comando.
[edit]
user@R1# show interfaces et-2/1/0
[edit]
user@host#
Você não deve ver nenhum resultado deste comando.
Insira um novo identificador na configuração de um dispositivo
Ao configurar um dispositivo da Juniper Networks, você pode inserir a maioria das declarações e identificadores em qualquer ordem. Independentemente da ordem em que você insira as declarações de configuração, a CLI sempre exibe a configuração em uma ordem rigorosa. No entanto, em alguns casos, a ordem das declarações é importante porque as declarações de configuração criam uma sequência que é analisada em ordem.
Por exemplo, em uma política de roteamento ou filtro de firewall, você define termos que são analisados sequencialmente. Além disso, quando você cria um caminho nomeado no MPLS dinâmico, você define uma lista ordenada dos roteadores de trânsito no caminho, começando pelo primeiro roteador de trânsito e terminando com o último.
Para modificar uma parte da configuração em que a ordem de declaração é importante, use o comando do modo de configuração:insert
user@host#insert <statement-path> identifier1 (before | after) identifier2
Se você não usar o comando, mas configurar o identificador, o identificador será colocado no final da lista de identificadores semelhantes.insert
Exemplo: Insira um novo identificador na configuração de um dispositivo
Este exemplo mostra o uso do comando.insert
Considerando que um termo adicionado usando o comando é colocado no final da lista de termos existente, você usa o comando para adicionar um termo na ordem que especifica.set
insert
Especificar a ordem das declarações é importante nos casos em que a ordem é importante porque as declarações de configuração criam uma sequência que é analisada em ordem.
Como este exemplo mostra, você deve criar o termo (ou ele já deve existir) antes de poder usá-lo com o comando.insert
O ponto de referência para a colocação do termo também deve existir; por exemplo, para colocar o termo T1 antes do termo T2, tanto o T1 quanto o T2 já devem existir e ser preenchidos. remove os termos vazios automaticamente.Junos OS
Requisitos
Antes de inserir um termo, você deve configurar uma política inicial. Para configurar rapidamente a política inicial para este exemplo, copie os seguintes comandos, cole-os em um arquivo de texto, remova quaisquer quebras de linha e altere quaisquer detalhes necessários para combinar com a configuração da sua rede, copiar e colar os comandos no CLI no nível de hierarquia e, em seguida, entrar no modo de configuração.[edit policy-options]
commit
set policy-statement statics term term1 from route-filter 192.168.0.0/16 orlonger set policy-statement statics term term1 from route-filter 224.0.0.0/3 orlonger set policy-statement statics term term1 then reject set policy-statement statics term term2 from protocol direct set policy-statement statics term term2 then reject set policy-statement statics term term3 from protocol static set policy-statement statics term term3 then reject set policy-statement statics term term4 then accept
Agora verifique se você tem a hierarquia configurada corretamente:
[edit policy-options]
user@host# show
policy-statement statics {
term term1 {
from {
route-filter 192.168.0.0/16 orlonger;
route-filter 224.0.0.0/3 orlonger;
}
then reject;
}
term term2 {
from protocol direct;
then reject;
}
term term3 {
from protocol static;
then reject;
}
term term4 {
then accept;
}
}
Visão geral
Para modificar uma parte da configuração em que a ordem de declaração é importante, você deve usar o comando de modo de configuração.insert
Se você usar o comando em vez disso, a declaração adicional ou o identificador estarão no lugar errado sequencialmente.set
A única outra maneira de obter os termos do comando na ordem correta é desmantelar a configuração e começar de novo.
Configuração
Configuração rápida da CLI
Para configurar rapidamente este exemplo, copie os seguintes comandos, cole-os em um arquivo de texto, remova qualquer quebra de linha e altere os detalhes necessários para combinar com a configuração da sua rede, copiar e colar os comandos no CLI no nível de hierarquia [editar opções de política] e, em seguida, entrar no modo de configuração.commit
[edit] user@host#rename policy-options policy-statement statics term term4 to term term6
[edit] user@host#set policy-options policy-statement statics term term4 from protocol local
[edit] user@host#set policy-options policy-statement statics term term4 then reject
[edit] user@host#set policy-options policy-statement statics term term5 from protocol aggregate
[edit] user@host#set policy-options policy-statement statics term term5 then reject
[edit] user@host#insert policy-options policy-statement statics term term4 after term term3
[edit] user@host#insert policy-options policy-statement statics term term5 after term term4
Configure para inserir termos
Procedimento passo a passo
-
Determine a ordem em que os termos de configuração precisam ser usados. Considere os termos originais e os novos termos que você planeja adicionar.
Na configuração original, a política é nomeada e há quatro termos.
statics
Cada um dos três primeiros termos corresponde a um critério de partida diferente, e as partidas resultantes são recusadas. O último termo aceita todo o resto do tráfego.Neste exemplo, você precisa adicionar dois termos que eliminam tipos adicionais de tráfego. Ambos os termos precisam ser usados antes do último termo na configuração original.
Renomeie o termo original4 para term6.
[edit] user@host#
rename policy-options policy-statement statics term term4 to term term6
Essa etapa preserva o último termo original, agora renomeado para termo6, como o último termo.
Crie um novo termo4.
[edit] user@host#
set policy-options policy-statement statics term term4 from protocol local
user@host#set policy-options policy-statement statics term term4 then reject
Um novo termo é adicionado que corresponde ao tráfego dos endereços do sistema local e o rejeita.
Crie um novo termo5.
[edit] user@host#
set policy-options policy-statement statics term term5 from protocol aggregate
user@host#set policy-options policy-statement statics term term5 then reject
Um novo termo é adicionado que corresponde ao tráfego de rotas agregadas e o rejeita.
Insira o termo4 após o termo3.
[edit] user@host#
insert policy-options policy-statement statics term term4 after term term3
Insira o termo5 após o termo4.
[edit] user@host#
insert policy-options policy-statement statics term term5 after term term4
Resultados
[edit]
user@host# show policy-options policy-statement statics
term term1 {
from {
route-filter 192.168.0.0/16 orlonger;
route-filter 224.0.0.0/3 orlonger;
}
then reject;
}
term term2 {
from protocol direct;
then reject;
}
term term3 {
from protocol static;
then accept;
}
term term4 {
from protocol local;
then reject;
}
term term5 {
from protocol aggregate;
then reject;
}
term term6 {
then accept;
}
Desativar e reativar declarações e identificadores em uma configuração de dispositivo
Em uma Junos OS configuração, você pode desativar declarações e identificadores para que eles não surtiram efeito quando você emite o comando.commit
Quaisquer declarações e identificadores desativados estão marcados com a tag.inactive
Eles permanecem na configuração, mas não são ativados quando você emite um comando.commit
Para desativar uma declaração ou identificador, use o comando do modo de configuração:deactivate
user@host# deactivate( statement | identifier )
Para reativar uma declaração ou identificador, use o comando do modo de configuração:activate
user@host# activate ( statement | identifier )
Em ambos os comandos, o e o que você especifica deve estar no nível de hierarquia atual.statement
identifier
Quando você desativa uma declaração, essa declaração específica é ignorada e não é aplicada quando você emite um comando.commit
Para desativar uma declaração, use o comando de modo de configuração.disable
Em algumas partes da hierarquia de configuração, você pode incluir uma declaração para desativar a funcionalidade.disable
Um exemplo é a desativação de uma interface, incluindo a declaração no nível de hierarquia.disable
[edit interface
interface-name]
Quando você desativa uma função, ela é reativada quando você emite um comando, mas é tratado como se estivesse desativado ou desativado administrativamente.commit
Exemplo: Desativar e reativar declarações e identificadores em uma configuração de dispositivo
Este exemplo mostra um caso de uso comum em que você usa os comandos do modo e configuração.deactivate
activate
Ela envolve mecanismos de roteamento duplos, primários e backup, que têm o switchover gracioso do mecanismo de roteamento (GRES) configurado. O software em ambos os mecanismos de roteamento precisa ser atualizado. Isso pode ser feito facilmente desativando o GRES, atualizando os mecanismos de roteamento e reativando o GRES.
Você também pode realizar uma atualização semelhante usando a mesma configuração, exceto que o roteamento ativo ininterrupto (NSR) está configurado em vez de GRES. Você precisaria desativar o NSR e depois atualizar os Mecanismos de roteamento antes de reativar o NSR.
Requisitos
Este exemplo requer o uso de um dispositivo com mecanismos de roteamento duplos que podem ser atualizados.
Antes de começar este exemplo, certifique-se de ter o GRES configurado.
Visão geral
Neste exemplo, existem dois mecanismos de roteamento. O GRES está configurado e os mecanismos de roteamento precisam ser atualizados. Para realizar a atualização, você precisa desativar o recurso GRES, atualizar cada um dos mecanismos de roteamento e ativar o GRES novamente.
Configuração
Configure a desativação e a reativação do GRES
Procedimento passo a passo
Para desativar e reativar a atualização do GRES para o mecanismo de roteamento:
Mostre que o GRES está habilitado para o roteador.
[edit] user@host#
show chassis
redundancy { graceful-switchover; } fpc 2 { pic 0 { tunnel-services { bandwidth 1g; } } }Desativar GRES.
[edit] user@host#
deactivate chassis redundancy graceful-switchover
user@host#commit
Mostre que o GRES está desativado.
[edit] user@host#
show chassis
redundancy { inactive: graceful-switchover; } fpc 2 { pic 0 { tunnel-services { bandwidth 1g; } } }-
Atualize os mecanismos de roteamento um a um.
Para obter instruções sobre como atualizar o Junos OS em mecanismos de roteamento duplos, veja a instalação do pacote de software em um dispositivo com mecanismos de roteamento redundantes.https://www.juniper.net/documentation/en_US/junos/topics/topic-map/install-software-on-routing-engines.html
Reativar GRES.
[edit] user@host#
activate chassis redundancy graceful-switchover
user@host#commit
Resultados
Verifique se o recurso GRES foi ativado novamente.
[edit]
user@host# show chassis
redundancy {
graceful-switchover;
}
fpc 2 {
pic 0 {
tunnel-services {
bandwidth 1g;
}
}
}
Como fazer mudanças globais na configuração do dispositivo
Você pode fazer mudanças globais em variáveis e identificadores na configuração do dispositivo usando o comando do modo de configuração.replace
Esse comando substitui um padrão em uma configuração por outro padrão. Por exemplo, você pode usar este comando para encontrar e substituir todas as ocorrências de um nome de interface quando um PIC é movido para outro slot no roteador.
user@host# replace pattern pattern1 with pattern2 <upto n>
A opção é uma string de texto ou expressão regular que define os identificadores e valores que você deseja substituir na configuração.pattern
pattern1
A opção é uma string de texto ou expressão regular que substitui os identificadores e os valores localizados dentro .pattern2
pattern1
A CLI usa sintaxe de expressão regular no estilo UNIX padrão (conforme definido no POSIX 1003.2). Se a expressão regular contém espaços, operadores ou caracteres curingas, coloquem a expressão entre aspas. As classificatórias gananciosas (igualam o máximo possível) são apoiadas. As classificatórias preguiçosas (o menor possível) não são apoiadas.
A opção especifica o número de objetos substituídos.upto
n
O valor dos controles é o número total de objetos que são substituídos na configuração (não o número total de vezes que o padrão ocorre).n
Objetos no mesmo nível de hierarquia (irmãos) são substituídos primeiro. Várias ocorrências de um padrão dentro de um determinado objeto são consideradas uma única substituição. Por exemplo, se uma configuração contém uma string de texto, o comando substitui por (em vez de ).010101
replace pattern 01 with pattern 02 upto 2
010101
020202
020201
A substituição por com é considerada uma única substituição ( = ), não três substituições separadas ( =).010101
020202
n
1
n
3
Se você não especificar uma opção, todos os identificadores e valores na configuração compatíveis serão substituídos.upto
pattern1
O comando está disponível no modo de configuração em qualquer nível de hierarquia.replace
Todos os fósforos são sensíveis ao caso.
Expressões regulares comuns para usar com o comandoreplace
Operador |
Função |
---|---|
|
Indica que uma correspondência pode ser um dos dois termos em ambos os lados do tubo. |
|
Usado no início de uma expressão, denota onde uma correspondência deve começar. |
|
Usado no final de uma expressão, denota que um termo deve ser combinado exatamente com o ponto do personagem. |
|
Especifica uma variedade de letras ou dígitos para combinar. Para separar o início e o fim de um intervalo, use um hífen ( - ). |
|
Especifica um grupo de termos a combinar. Armazenadas como variáveis numeradas. Uso para referências de volta como . |
|
Denota 0 ou mais termos. |
|
Denota um ou mais termos. |
|
Denota qualquer caractere, exceto por um espaço (" "). |
|
Um backslash escapa de personagens especiais para suprimir seu significado especial. Por exemplo, .... correspondências (símbolo de ponto). |
|
Referência de volta que combina com o th group.n |
|
Referência de volta que corresponde a toda a partida. |
A tabela a seguir lista alguns exemplos de substituição.
Comando |
Resultado |
---|---|
|
Jogo: Resultado: |
|
Jogo: Resultado: |
|
Jogo: Resultado: |
|
Jogo: Resultado: |
Exemplo: Como usar a substituição global em uma configuração de dispositivo — a referência de volta
Este exemplo mostra como você pode usar uma referência traseira para substituir um padrão.
Requisitos
Nenhuma configuração especial além da iniciação do dispositivo é necessária antes de configurar este exemplo.
Antes de começar, configure o seguinte:
[edit]
user@host# show interfaces
xe-0/0/0 {
unit 0;
}
fe-3/0/1 {
vlan-tagging;
unit 0 {
description "inet6 configuration. IP: 2000::c0a8::1bf5";
vlan-id 100;
family inet {
address 17.10.1.1/24;
}
family inet6 {
address 2000::c0a8:1bf5/3;
}
}
}
Para configurar rapidamente essa configuração inicial, copie os seguintes comandos e cole-os em um arquivo de texto, remova quaisquer quebras de linha, altere quaisquer detalhes necessários para combinar com a configuração de sua rede e, em seguida, copie e cole os comandos no CLI no nível de hierarquia:[edit]
set interfaces xe-0/0/0 unit 0
set interfaces fe-3/0/1 vlan-tagging
set interfaces fe-3/0/1 unit 0 description "inet6 configuration IP: 2000::c0a8::1bf5"
set interfaces fe-3/0/1 unit 0 vlan-id 100
set interfaces fe-3/0/1 unit 0 family inet address 17.10.1.1/24
set interfaces fe-3/0/1 unit 0 family inet6 address 2000::c0a8:1bf5/3
Visão geral
Um dos recursos mais úteis de expressões regulares é a referência de volta. As backreferences fornecem uma maneira conveniente de identificar um personagem ou sub-cordão repetido dentro de uma corda. Depois de encontrar o padrão, você pode repeti-lo sem ecriá-lo novamente. Você se refere ao padrão capturado anteriormente apenas (onde está um numeral que indica o número de vezes que você deseja que o padrão corresponda).\#
#
Você pode usar backreferences para recordar, ou encontrar, dados e substituí-los por outra coisa. Dessa forma, você pode reformat grandes conjuntos de dados com um único comando de substituição, economizando assim o tempo necessário para procurar e substituir o padrão manualmente.
Configuração
Configuração de uma substituição usando uma referência traseira no comando
Procedimento passo a passo
Substituir um padrão em uma configuração usando uma referência traseira:Junos OS
Use o comando.
replace
[edit] user@host#
replace pattern pattern1 with pattern2
Neste caso, queremos substituir por .
:1bf5
1bf5
[edit] user@host#
replace pattern "(.*):1bf5" with "\11bf5"
Observe a referência de volta (\1), que indica que o padrão deve ser pesquisado e substituído apenas uma vez.
Resultados
Aqui está a configuração resultante:
[edit]
user@host# show interfaces
xe-0/0/0 {
unit 0;
}
fe-3/0/1 {
vlan-tagging;
unit 0 {
description "inet6 configuration. IP: 2000::c0a8:1bf5";
vlan-id 100;
family inet {
address 17.10.1.1/24;
}
family inet6 {
address 2000::c0a8:1bf5/3;
}
}
}
Neste exemplo, o padrão é substituído por uma vez.2000::c0a8::1bf5
2000::c0a8:1bf5
Exemplo: Substituição global em uma configuração de dispositivo — substituindo um nome de interface
Este exemplo mostra como substituir um nome de interface globalmente em uma configuração usando o comando.replace
Usar o comando pode ser uma maneira mais rápida e melhor de mudar uma configuração.replace
Por exemplo, um PIC pode ser movido para outro slot em um roteador, o que muda o nome da interface. Com um único comando, você pode atualizar toda a configuração. Ou você pode querer estender rapidamente a configuração com outras configurações semelhantes, por exemplo, interfaces semelhantes.
Ao usar uma combinação de comandos e comandos, você pode adicionar a uma configuração e, em seguida, substituir certos aspectos das configurações recém-copiadas.copy
replace
O comando funciona com expressões regulares.replace
Expressões regulares são rápidas, flexíveis e onipresentes. Você pode criar praticamente qualquer padrão que você possa precisar procurar, e a maioria das linguagens de programação suportam expressões regulares.
Requisitos
Nenhuma configuração especial além da inicialização do dispositivo é necessária antes de configurar este exemplo.
Antes de começar, configure a hierarquia a seguir no roteador. Para configurar rapidamente essa hierarquia, veja .Configuração rápida da CLI
user@host#show interfaces
so-0/0/0 { dce; } user@host#show protocols
ospf { area 0.0.0.0 { interface so-0/0/0.0 { hello-interval 5; } } }
Visão geral
Este exemplo mostra como substituir um nome de interface globalmente em uma configuração usando o comando.replace
É um exemplo simples.
A configuração anterior é o ponto de partida para esta atualização de configuração. Ao longo deste exemplo, você altera o nome da interface inicial em toda a configuração com um único comando.
Configuração
Configuração rápida da CLI
Para configurar rapidamente a configuração inicial para este exemplo, copie os seguintes comandos, cole-os em um arquivo de texto, remova quaisquer quebras de linha e altere quaisquer detalhes necessários para combinar com a configuração da sua rede, copiar e colar esses comandos no CLI no nível de hierarquia e, em seguida, entrar no modo de configuração.:[edit]
commit
set interfaces so-0/0/0 dce set protocols ospf area 0.0.0.0 interface so-0/0/0.0 hello-interval 5
Configuração de uma mudança de nome de interface
Procedimento passo a passo
Para alterar um nome de interface:
Certifique-se de estar no topo da hierarquia do modo de configuração.
user@host#
top
-
Substitua pelo uso do comando, que usa a palavra-chave.
so-0/0/0
so-1/1/0
replace
pattern
user@host#
replace pattern so-0/0/0 with so-1/1/0
Resultados
Depois de fazer as alterações necessárias, verifique a configuração usando os comandos do modo e configuração.show interfaces
show protocols
[edit] user@host#show interfaces
so-1/1/0 { dce; } user@host#show protocols
ospf { area 0.0.0.0 { interface so-1/1/0.0 { hello-interval 5; } } }
Depois de confirmar que a configuração está correta, entre no comando.commit
Exemplo: Substituição global em uma configuração de dispositivo — a opção atualizada
Considere a hierarquia mostrada em Figura 1. A corda de texto aparece em três lugares:010101
as seções de descrição de , e .ge-0/0/0
ge-0/0/0.0
fe-0/0/1
Essas três instâncias são três objetos. O exemplo a seguir mostra como você pode usar a opção para realizar substituições em uma configuração de dispositivo:upto
Uma opção no comando é convertida para duas instâncias de objetos.upto 2
replace
01
02
Os objetos sob as interfaces principais e serão substituídos primeiro (já que estes são irmãos no nível hierárquicos).ge-0/0/0
fe-0/0/1
Por causa da restrição, o comando substitui padrões na primeira e segunda instância na hierarquia (irmãos), mas não na terceira instância (filho da primeira instância).upto 2
replace
user@host#show interfaces
ge-0/0/0 { description "mkt 010101"; #First instance in the hierarchy unit 0 { description "mkt 010101"; #Third instance in the hierarchy (child of the first instance) } } fe-0/0/1 { description "mkt 010101"; #second instance in the hierarchy (sibling of the first instance) unit 0 { family inet { address 200.200.20.2/24; } } } [edit] user@host#replace pattern 01 with 02 upto 2
[edit] user@host#commit
commit complete
[edit]
user@host# show interfaces
ge-0/0/0 {
description "mkt 020202"; #First instance in the hierarchy
unit 0 {
description "mkt 010101"; #Third instance in the hierarchy (child of the first
instance)
}
}
fe-0/0/1 {
description "mkt 020202"; #second instance in the hierarchy (sibling of the first
instance)
unit 0 {
family inet {
address 200.200.20.2/24;
}
}
}
Adicione comentários em uma configuração de dispositivo
Você pode incluir comentários em uma configuração de dispositivo para descrever qualquer declaração na configuração. Você pode adicionar comentários interativos na CLI e editando o arquivo de configuração ASCII.
Ao configurar interfaces, você pode adicionar comentários sobre a interface incluindo a declaração no nível de hierarquia.description
[edit interfaces
interface-name
]
Quaisquer comentários que você inclua aparecem na saída dos comandos..show interfaces
Adicione comentários na CLI
Quando você adiciona comentários no modo de configuração, eles são associados a uma declaração no nível atual. Cada declaração pode ter um comentário de linha única associado a ela. Antes de associar um comentário a uma declaração, a declaração deve existir. O comentário é colocado na linha anterior à declaração.
Para adicionar comentários a uma configuração, use o comando do modo de configuração:annotate
user@host# annotate statement "comment-string
"
statement
é a declaração de configuração à qual você está anexando o comentário; deve estar no nível hierárquica atual. Se um comentário para os especificados já existir, ele será excluído e substituído pelo novo comentário.statement
comment-string
é o texto do comentário. O texto do comentário pode ser de qualquer comprimento, e você deve digitá-lo em uma única linha. Se o comentário contém espaços, você deve incluí-lo entre aspas. Na sequência de comentários, você pode incluir os delimiters de comentários ou ./* */
#
Se você não especificar nenhum, a sequência de comentários será fechada com os delimiters de comentários./* */
Para excluir um comentário existente, especifique uma sequência de comentários vazia:
user@host# annotate statement ""
Se você adicionar comentários com o comando, você pode visualizar os comentários dentro da configuração inserindo o comando de modo de configuração show ou o comando de modo operacional.annotate
show configuration
Junos OS oferece suporte a anotações até o último nível na hierarquia de configuração, incluindo oneliners. No entanto, a anotação de partes (declarações de crianças ou identificadores dentro do oneliner) do oneliner não é suportada. Por exemplo, na hierarquia de configuração de amostra a seguir, a anotação é suportada até a hierarquia dos pais, mas não suporta a declaração da criança:level 1
metric
[edit protocols] isis { interface ge-0/0/0.0 { level 1 metric 10; } } }
Adicione comentários em um arquivo
Quando você edita o arquivo de configuração ASCII e adiciona comentários, eles podem ser uma ou mais linhas e devem preceder a declaração com a qual estão associados. Se você colocar os comentários em outros lugares do arquivo, como na mesma linha após uma declaração ou em uma linha separada após uma declaração, eles serão removidos quando você usa o comando para abrir a configuração na CLI.load
O trecho a seguir de um exemplo de configuração ilustra como colocar e como não colocar comentários em um arquivo de configuração:
/* This comment goes with routing-options */ routing-options { /* This comment goes with routing-options traceoptions */ traceoptions { /* This comment goes with routing-options traceoptions tracefile */ tracefile rpd size 1m files 10; /* This comment goes with routing-options traceoptions traceflag task */ traceflag task; /* This comment goes with routing-options traceoptions traceflag general */ traceflag general; } autonomous-system 10458; /* This comment is dropped */ } routing-options { rib-groups { ifrg { import-rib [ inet.0 inet.2 ]; /* A comment here is dropped */ } dvmrp-rib { import-rib inet.2; export-rib inet.2; /* A comment here is dropped */ } /* A comment here is dropped */ } /* A comment here is dropped */ }
Ao incluir comentários diretamente no arquivo de configuração, você pode formatar comentários das seguintes maneiras:
Inicie o comentário com um e termine com um .
/*
*/
O texto do comentário pode estar em uma única linha ou pode abranger várias linhas.Inicie o comentário com um e termine-o com uma nova linha (retorno de transporte).
#
Exemplo: Inclua comentários em uma configuração de dispositivo usando a CLI
Adicionar comentários a uma configuração de dispositivo torna o arquivo de configuração legível e mais facilmente entendido pelos usuários. Você pode incluir comentários conforme configura, usando a declaração.annotate
Neste exemplo, os comentários são adicionados usando a CLI para uma configuração já existente:
Requisitos
Nenhuma configuração especial além da inicialização do dispositivo é necessária antes de configurar este exemplo.
Antes de adicionar um comentário, você deve configurar a seguinte hierarquia no roteador.
Para configurar rapidamente a configuração inicial para este exemplo, copie o comando a seguir, cole-o em um arquivo de texto, remova qualquer quebra de linha e altere quaisquer detalhes necessários para combinar com a configuração da sua rede, copiar e colar este comando no CLI no nível de hierarquia e, em seguida, entrar no modo de configuração.[edit]
commit
set protocols ospf area 0.0.0.0 interface so-0/0/0.0 hello-interval 5
Agora verifique se você tem essa hierarquia configurada.
user@host# show protocols
ospf {
area 0.0.0.0 {
interface so-0/0/0 {
hello-interval 5;
}
}
}
Visão geral
Ao adicionar comentários usando a CLI, você faz isso no modo de configuração usando a declaração.annotate
Cada comentário que você adiciona está associado a uma declaração no nível atual. Cada declaração pode ter um comentário de linha única associado a ela.
Para configurar a declaração, vá para o nível da declaração com a qual deseja associar um comentário.annotate
Para ver os comentários, vá para o topo da hierarquia de configuração e use o comando.show
Configuração
Configuração rápida da CLI
Para configurar rapidamente os comentários para este exemplo, copie os seguintes comandos, cole-os em um arquivo de texto, remova qualquer quebra de linha e altere quaisquer detalhes necessários para combinar com a configuração da sua rede, copiar e colar os comandos no CLI, começando no nível de hierarquia e depois entrar no modo de configuração.[edit]
commit
edit protocols ospf
annotate area 0.0.0.0 "Backbone area configuration added June 15, 2018"
edit area 0.0.0.0
annotate interface so-0/0/0.0 "Interface from router sj1 to router sj2"
Observe que os comandos estão movendo você para baixo da hierarquia enquanto você anota diferentes seções da hierarquia.
Incluindo comentários no modo de configuração CLI
Procedimento passo a passo
Esse procedimento pressupõe que você já configurou a configuração inicial.
Para adicionar comentários a uma configuração:
Passe para o primeiro nível de hierarquia ao qual você precisa adicionar um comentário.
[edit] user@host#
edit protocols ospf
Adicione um comentário à declaração de configuração usando a declaração.
area
annotate
[edit protocols ospf] user@host#
annotate area 0.0.0.0 "Backbone area configuration added June 15, 1998"
Suba um nível para a declaração de configuração.
interface
[edit protocols ospf] user@host#
edit area 0.0.0.0
-
Adicione um comentário à interface usando a declaração.
so-0/0/0.0
annotate
[edit protocols ospf area 0.0.0.0] user@host#
annotate interface so-0/0/0.0 "Interface from router sj1 to router sj2"
Resultados
Vá para o topo da hierarquia e use o comando para ver os comentários que você adicionou.show
Os comentários precedem a declaração com a que estão associados.
[edit]
user@host# show protocols
ospf {
/* Backbone area configuration added June 15, 2018 */
area 0.0.0.0 {
/* Interface from router sj1 to router sj2 */
interface so-0/0/0.0 {
hello-interval 5;
}
}
}
Depois de confirmar que a configuração está correta, entre no comando.commit
Exemplo: Use o comando curinga com a opção de alcance
Se você precisar fazer alterações na configuração de um dispositivo, você sempre pode remover as configurações de configuração originais usando o comando e adicionar suas novas configurações de configuração usando o comando.delete
set
No entanto, existem outras maneiras de modificar uma configuração que são mais eficientes e fáceis de usar.
Este exemplo mostra como usar o comando curinga junto com intervalos para ativar, desativar, excluir, proteger, definir, mostrar e desprotegir comandos de configuração.
O comando curinga não pode criar uma hierarquia de configuração. Você as usa para modificar as declarações existentes. Espere erros de CLI do formulário quando tentar definir parâmetros, como a desativação, em uma hierarquia vazia.warning: statement not found
Requisitos
Junos OS Release 12.1 ou posterior no dispositivo.
Visão geral
A opção de alcance com o comando curinga permite especificar intervalos em ativar, desativar, excluir, proteger, definir, mostrar e desprotegir comandos. Você pode usar intervalos para especificar uma variedade de interfaces, unidades lógicas, VLANs e outros elementos numerados. A opção de alcance curinga expande o comando que você inscreveu em vários comandos, cada um dos quais corresponde a um item no intervalo.
A opção de alcance curinga permite configurar várias declarações de configuração usando um único comando de conjunto, em vez de configurar cada uma delas individualmente. Por exemplo, para configurar interfaces Ethernet de 24 Gigabit com diferentes números de porta, você pode usar um único comando de conjunto de intervalos curinga em vez de 24 comandos de interfaces de conjunto individuais.
Da mesma forma, para desativar um grupo de 30 interfaces lógicas, você pode usar o comando desativar o wildcard em vez de desativar cada interface lógica individualmente.
Configuração
- Use o comando curinga com declarações de intervalo para uma variedade de tarefas de configuração.
- Usando a opção de alcance para configurar uma série de identificadores nomeados para uma declaração de configuração
- Especificando vários intervalos na sintaxe
- Especificando um intervalo e números únicos na sintaxe
- Excluindo alguns valores de uma gama
- Especificando um intervalo com um número de etapa
- Use o Curinga para excluir políticas p1-p10
Use o comando curinga com declarações de intervalo para uma variedade de tarefas de configuração.
Procedimento passo a passo
- Você pode usar o intervalo curinga com os comandos ativos, desativados, excluídos, protegidos, definidos, exibidos e desprotegidos de configuração.
[edit] user@host#
wildcard range ? Possible completions: activate Remove the inactive tag from a statement annotate Annotate the statement with a comment deactivate Add the inactive tag to a statement delete Delete a data element protect Protect the statement set Set a parameter show Show a parameter unprotect Unprotect the statement
-
A declaração pode ser qualificada com uma hierarquia de configuração completa.
wildcard
Quando estacionado em uma hierarquia de configuração, o comando curinga é relativo às opções suportadas nessa hierarquia.[edit] user@host#
wildcard range set interfaces ? Possible completions: <interface-name> Interface name + apply-groups Groups from which to inherit configuration data + apply-groups-except Don't inherit configuration data from these groups > interface-range Interface ranges configuration > interface-set Logical interface set configuration lo0 Interface name > stacked-interface-set Stacked interface set configuration > traceoptions Interface trace options xe-0/0/0:0 Interface name xe-0/0/0:1 Interface name
user@host# edit interfaces [edit interfaces]wildcard range set ? Possible completions: <interface-name> Interface name + apply-groups Groups from which to inherit configuration data + apply-groups-except Don't inherit configuration data from these groups > interface-range Interface ranges configuration > interface-set Logical interface set configuration lo0 Interface name > stacked-interface-set Stacked interface set configuration > traceoptions Interface trace options xe-0/0/0:0 Interface name xe-0/0/0:1 Interface name
No primeiro caso, o caminho completo para a hierarquia de interfaces é especificado com a declaração curinga. No segundo, o usuário está estacionado na hierarquia de interfaces. As opções suportadas são as mesmas com ambos os métodos.
Usando a opção de alcance para configurar uma série de identificadores nomeados para uma declaração de configuração
Procedimento passo a passo
Para configurar uma série do mesmo tipo de interface com diferentes números de porta (0 a 23), especifique o intervalo para os números de porta com o formato a seguir.
-
[edit] user@host# wildcard range set interfaces ge-0/0/[0-23] unit 0 family vpls
-
Exibir o resultado. A gama de curingas de alcance é expandida para 24 comandos de conjunto diferentes para configurar interfaces com números de porta que variam de 0 a 23. Neste caso, as interfaces são criadas para adicionar a família de protocolo.
vpls
Se as interfaces já estiverem definidas, então apenas a família será adicionada.root@R1# show | compare [edit interfaces] + ge-0/0/0 { + unit 0 { + family vpls; + } + } + ge-0/0/1 { + unit 0 { + family vpls; + } + } + ge-0/0/2 { + unit 0 { + family vpls; + } + } . . . + ge-0/0/23 { + unit 0 { + family vpls; + }
Especificando vários intervalos na sintaxe
Procedimento passo a passo
Você pode ter vários intervalos especificados em um comando de alcance curinga. Cada faixa deve ser separada por uma vírgula. Você também pode ter intervalos sobrepostos.
Para os exemplos restantes, você cria uma cópia temporária de sua configuração com dez declarações de política. Ter essas declarações evita erros de CLI que são relatados quando você tenta manipular atributos em uma parte nula da hierarquia.
[edit] user@device# set policy-options policy-statement p1 then reject set policy-options policy-statement p10 then reject set policy-options policy-statement p2 then reject set policy-options policy-statement p3 then reject set policy-options policy-statement p4 then reject set policy-options policy-statement p5 then reject set policy-options policy-statement p6 then reject set policy-options policy-statement p7 then reject set policy-options policy-statement p8 then reject set policy-options policy-statement p9 then reject [edit] user@device# save temp Wrote 254 lines of configuration to 'temp'
- Para especificar mais de uma faixa na sintaxe, inclua os valores mínimos e máximos para cada faixa, separados por uma vírgula.
[edit] user@host# wildcard range deactivate policy-options policy-statement p[1-3,5-7,6-9]
-
Exibir o resultado. A gama de curingas se expande para adicionar a declaração a políticas que tenham nomes que correspondam às faixas especificadas.
deactivate
Nota-se a ausência de e na lista de alterações na configuração do candidato.p4p10Nota:Um erro é devolvido se o nome da política especificado ainda não existir na configuração. Isso é porque você não pode adicionar a declaração de desativação a uma parte vazia da hierarquia de configuração.
[edit] show | compare [edit policy-options] ! inactive: policy-statement p1 { ... } ! inactive: policy-statement p2 { ... } ! inactive: policy-statement p3 { ... } ! inactive: policy-statement p5 { ... } ! inactive: policy-statement p6 { ... } ! inactive: policy-statement p7 { ... } ! inactive: policy-statement p8 { ... } ! inactive: policy-statement p9 { ... }
Especificando um intervalo e números únicos na sintaxe
Procedimento passo a passo
Você pode especificar uma combinação de um intervalo e números únicos na sintaxe do comando de alcance curinga.
-
Recarregue a configuração temporária.#d74e52__d74e141
[edit] user@host# load override temp load complete
- Para especificar um intervalo e um número único, separe-os com uma vírgula. Neste exemplo, 10 é adicionado como um número único a uma série de intervalos.
[edit] user@host# wildcard range deactivate policy-options policy-statement p[1-3,5,7,10]
-
Exibir o resultado. A gama de curingas se expande para adicionar a declaração às políticas que têm nomes que correspondem às faixas especificadas e também ao número único.
deactivate
Como resultado, a política também é desativada neste exemplo.p10Nota:Um erro é devolvido se o nome da política especificado ainda não existir na configuração. Isso é porque você não pode adicionar a declaração de desativação a uma hierarquia de configuração vazia.
[edit] user@host# show | compare [edit policy-options] ! inactive: policy-statement p1 { ... } ! inactive: policy-statement p10 { ... } ! inactive: policy-statement p2 { ... } ! inactive: policy-statement p3 { ... } ! inactive: policy-statement p5 { ... } ! inactive: policy-statement p7 { ... }
Excluindo alguns valores de uma gama
Procedimento passo a passo
Você pode excluir certos valores de um intervalo marcando os números ou a faixa de números a serem excluídos usando um ponto de exclamação.
-
Recarregue a configuração temporária.#d74e52__d74e141
[edit] user@host# load override temp load complete
- Para excluir determinados valores de uma faixa, inclua a parte a ser excluída com ! na sintaxe.
[edit] user@host# wildcard range deactivate policy-options policy-statement p[1-5,!3-4]
-
Exibir o resultado. A gama de curingas se expande para adicionar a declaração a políticas que tenham nomes que correspondam às faixas especificadas.
deactivate
Observe que as políticas e estão ausentes na lista de modificações feitas na configuração do candidato.p3p4 Eles foram excluídos da faixa curinga.Nota:Um erro é devolvido se o nome da política especificado ainda não existir na configuração. Isso é porque você não pode adicionar a declaração de desativação a uma hierarquia de configuração vazia.
[edit] user@host# show | compare [edit policy-options] ! inactive: policy-statement p1 { ... } ! inactive: policy-statement p2 { ... } ! inactive: policy-statement p5 { ... }
Especificando um intervalo com um número de etapa
Procedimento passo a passo
Você pode fornecer um número de etapa para ter um intervalo constante no intervalo. O valor da etapa conta a primeira partida e, em seguida, ignora as partidas subsequentes até o valor de etapa especificado.
-
Recarregue a configuração temporária.#d74e52__d74e141
[edit] user@host# load override temp load complete
- Para fornecer uma etapa, inclua o valor de passo na sintaxe precedida por uma redução para a frente (/). Aqui especificamos um intervalo de 1 a 10, faltando 1 número entre cada partida usando um valor de etapa de 2. O efeito é pular todas as partidas numeradas iguais à medida que começamos, igualando um número ímpar (1).
[edit] user@host# wildcard range deactivate policy-options policy-statement p[1-10/2]
-
Exibir o resultado. A gama de curingas se expande para adicionar a declaração a todas as outras declarações correspondentes, começando pela primeira partida.
deactivate
Nota:Um erro é devolvido se o nome da política especificado ainda não existir na configuração. Isso é porque você não pode adicionar a declaração de desativação a uma hierarquia de configuração vazia.
[edit] user@host# show | compare [edit policy-options] ! inactive: policy-statement p1 { ... } ! inactive: policy-statement p3 { ... } ! inactive: policy-statement p5 { ... } ! inactive: policy-statement p7 { ... } ! inactive: policy-statement p9 { ... }
Para ilustrar melhor a função de etapa, a configuração temporária é restaurar e o comando curinga é repetido, desta vez com um valor de passo de 4. Agora, 3 entradas são indispedidas após cada partida inicial.
[edit] user@host# load override temp load complete user@host## wildcard range deactivate policy-options policy-statement p[1-10/4] \
-
Exibir o resultado. A gama de curingas se expande para adicionar a declaração a cada quarta declaração correspondente, começando pela primeira partida.
deactivate
[edit] user@host# show | compare [edit policy-options] ! inactive: policy-statement p1 { ... } ! inactive: policy-statement p5 { ... } ! inactive: policy-statement p9 { ... }
Use o Curinga para excluir políticas p1-p10
Procedimento passo a passo
Exclua as políticas temporárias adicionadas para testar a função curinga.
- Use a declaração com uma declaração de intervalo curinga para excluir políticas por .
delete
p1p10[edit] user@host# wildcard range delete policy-options policy-statement p[1-10]
-
Exibir o resultado. Nossa estrofe contém apenas políticas até .
policy-options
p1p10 Isso resulta em uma hierarquia de configuração vazia .policy-options
[edit] user@host# show policy-options