Router Juniper
Nota
Junos é o sistema operacional que roda nos roteadores e switches do fabricante Juniper Networks. O kernel do Junos é baseado no sistema Unix FreeBSD. Vamos a uma rápida introdução aos comandos básicos para roteadores Juniper e depois complementamos com alguns exemplos práticos do cotidiano do ambiente de redes.
A cli – command line interface, do sistema conta com basicamente dois modos:
Operational Mode - Permite monitorar e realizar troubleshooting no dispositivo.
Configuration Mode - Permite realizar configurações do equipamento. As configurações realizadas são armazenadas em um estrutura hierárquica, contendo instruções para o dispositivo, incluindo interfaces, informações de roteamento, permissões de acesso e propriedades de sistema e hardware. As alterações realizadas nesse modo, são armazenadas em um arquivo chamado candidate configuration. Esse arquivo permite realizar alterações sem causar mudanças imediatas nas configurações que estão rodando no roteador, chamada active configuration. O dispositivo não irá implementar as mudanças realizadas até você aplicá-las manualmente na active configuration.
Quando pressionamos a tecla “?”, o sistema nos mostra todos os possíveis comandos que podem ser usados, incluindo uma breve descrição de cada um.
Para configurar um parâmetro usamos o comando set, enquanto que para apagar um parâmetro usamos o comando delete.
Para editar um parâmetro usamos o comando edit, e o comando show é utilizados para visualização.
Para salvar as configurações na active configuration utilizamos o comando commit.
Configuração básica do dispositivo
Comandos de verificação:
root> show system uptime – Verificar tempo de operação do equipamento.
root> show system users – Verificar usuários logados.
root> show system storage – Verificar armazenamento de dados local.
root> show system processes – Verificar a tabela de processos em execução.
root> show chassis hardware – Verificar componentes de hardware instalados.
root> show chassis environment – Verificar status dos componentes e temperatura, e velocidades do sistema de refrigeração.
root> show chassis routing-engine – Verificar status da routing engine.
root> show chassis alarms – Verificar alarmes de alertas no equipamento
root> show version – Versão do Junos OS que esta rodando no equipamento. Também exibe o host name e o modelo do dispositivo.
root> show log chassisd | no-more – Verificar logs relacionados aos alarmes do hardware
root> show log messages | no-more – Verificar mensagens de log
root> show log messages | last 50 – Verificar mensagens de log das últimas 50 linhas
root> show log user – Verificar histórico de login dos usuários
root> show configuration – Verificar a configuração atual
root> show interfaces terse – Breve descrição sobre o status das interfaces
root> show interfaces interface-name – Descrição sobre uma interface
root> show interface interface-name extensive – Descrição detalhada sobre uma interface
root> clear interfaces statistics interface-name – Reinicia as estatísticas de uma interface
root> show bgp summary – Breve descrição sobre o estado do protocolo
root> show ospf overview – Breve descrição sobre o estado do protocolo
root> show isis overview – Breve descrição sobre o estado do protocolo
root> show route 216.142.248.0 extensive – Descrição detalhada sobre uma rota específica
root> show route 192.168.68.0/24 – Descrição sobre uma rota específica
root> show route terse – Descrição da tabela de rotas
Definir host name:
root# set system host-name juniper
Definir uma senha de acesso ao usuário root:
root# set system root-authentication plain-text-password
New password:
Retype new password:
root# commit
commit complete
Adicionar ip a uma interface:
root@juniper# set interfaces em0 unit 0 family inet address 192.168.1.254/24
Adicionar um rota estática:
root@juniper# set routing-options static route 192.168.68.0/24 next-hop 192.168.1.1
Habilitar ssh:
root@juniper# set system services ssh
Data e Hora:
root@juniper# set system ntp server 200.160.0.8
root@juniper# set system time-zone America/Sao_Paulo
Ping e Traceroute:
root@juniper> ping 192.168.1.1
root@juniper> ping rapid count 1000 size 1400 192.168.1.1
root@juniper> traceroute 192.168.1.1
Nota
Para utilizar comandos de Operational Mode dentro do Configuration Mode, utilize a sintaxe run antes do comando.
Como no exemplo abaixo:
root@juniper# run ping 192.168.1.1
Salvar configuração:
root@juniper# commit check – Realiza uma checagem de erros na configuração, mas não aplica.
root@juniper# commit at "2017-09-15 23:59" – Aplica a configuração no dia e horário informado no comando.
root@juniper# commit confirmed 1 – Aplica a configuração em um "modo de segurança", caso não seja confirmada no tempo pré-definido no comando, a configuração será descartada e voltará ao seu estado original, função rollback.
root@juniper# commit and-quit – Aplica a configuração e sai do configuration mode.
Aqui abordamos comandos super básicos, e para maiores informações e melhor aprofundamento do conteúdo apresentado, sugiro buscar informações mais detalhadas no site oficial www.juniper.net
1. Exemplos práticos
Nota
Checagem da interface Wan - Análise de perda de pacotes, incremento de erro ou quedas recentes.
Verificar informações de todas interfaces:
Supersonic@C3PO> show interfaces descriptions
Mostrar breve resumo da interface:
Supersonic@C3PO> show interfaces ge-0/0/1 terse
Verificar últimos logs de quedas:
Supersonic@C3PO>show log messages | last 200
Verificar as informações de todas interfaces:
Supersonic@C3PO> show interfaces descriptions | find ge-0/0/1
Supersonic@C3PO> show interfaces descriptions | find ge
Verificar informações da interface:
Supersonic@C3PO> show interfaces descriptions | match ge-0/0/1
Verificar se está fisicamente up ou down:
Supersonic@C3PO> show interfaces detail | match ge-0/0/1
Visualizar todas as interfaces:
Supersonic@C3PO> show interfaces
Visualizar todas as interfaces com detalhamento:
Supersonic@C3PO> show interfaces brief
Visualiza todos os tipos de erros:
Supersonic@C3PO> show interfaces ge-0/0/1 extensive
Supersonic@C3PO> show interfaces ge-0/0/1 extensive | match errors
Verificar tempo de operação do equipamento:
Supersonic@C3PO> show system uptime
Ping teste:
Supersonic@C3PO> ping 200.185.0.60 rapid count 50 size 1500
PING 200.185.0.60 (200.185.0.60): 1500 data bytes
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
--- 200.185.0.60 ping statistics ---
50 packets transmitted, 50 packets received, 0% packet loss
round-trip min/avg/max/stddev = 0.163/0.174/0.311/0.024 ms
Como acessar Juniper de um router para outro, neste caso este procedimento serve para validação de interface:
Supersonic@C3PO> show interfaces ge-0/0/3 descriptions
ge-0/0/3 up up To-R2D2
Supersonic@C3PO> show configuration interfaces ge-0/0/3
description To-R2D2;
mtu 8900;
unit 0 {
family inet {
address 182.75.1.67/30;
}
family iso;
family mpls;
}
Supersonic@C3PO> ping 182.75.1.68 count 3
PING 182.75.1.68 (182.75.1.68): 56 data bytes
64 bytes from 182.75.1.68: icmp_seq=0 ttl=64 time=2.507 ms
64 bytes from 182.75.1.68: icmp_seq=0 ttl=64 time=2.204 ms
64 bytes from 182.75.1.68: icmp_seq=1 ttl=64 time=1.316 ms
--- 182.75.1.68 ping statistics ---
2 packets transmitted, 2 packets received, 0% packet loss
round-trip min/avg/max/stddev = 1.316/1.912/2.507/0.596 ms
Supersonic@C3PO> ssh root@182.75.1.68 source 182.75.0.47 (o source deve ser o endereço de loopback)
Supersonic@C3PO> show configuration | display set | match lo0
set interfaces lo0 unit 0 family inet filter input router-protect-simplified
set interfaces lo0 unit 0 family inet address 182.75.0.47/32
set interfaces lo0 unit 0 family iso address 49.0001.2001.8500.0047.00
set protocols isis interface lo0.0 level 1 disable
set protocols ldp interface lo0.0
root@182.75.1.68's password:
--- JUNOS 12.1X44-D35.5 built 2014-05-19 21:36:43 UTC
root@R2D2% cli
root@R2D2> show interfaces ge-0/0/1 descriptions
ge-0/0/1 up up L2L VIVO TO-C3PO
root@R2D2> show interfaces ge-0/0/1
root@R2D2> show configuration interfaces ge-0/0/1
description L2L VIVO TO-C3PO;
mtu 8900;
unit 0 {
family inet {
address 182.75.1.68/30;
}
family iso;
family mpls;
}
root@R2D2> ping 182.75.1.67 count 5 rapid
PING 182.75.1.67 (182.75.1.67): 56 data bytes
.....
--- 182.75.1.67 ping statistics ---
5 packets transmitted, 0 packets received, 100% packet loss
Troubleshooting
Nota
Coletar evidências - pontos principais
Logs
show interface ge-X/Y/Z
show bfd session brief
show isis adjacency
testes de ping
Nota
Complementos da análise
tabela arp
show bfd session brief
show isis adjacency
Validar o roteamento entre o router astronauta008 e router magali006 171.28.1.210 (Elemento ROTEAMENTO ISIS PEER):
manuela@astronauta008> show interfaces ge-1/1/9
Physical interface: ge-1/1/9, Enabled, Physical link is Up
Interface index: 159, SNMP ifIndex: 535
Description: L2L CenturyLink Boston TO-magaliO06 ge-0/0/2
Link-level type: Ethernet, MTU: 2000, Speed: 1000mbps, BPDU Error: None, MAC-REWRITE Error: None, Loopback: Disabled, Source
filtering: Disabled, Flow control: Enabled, Auto-negotiation: Enabled, Remote fault: Online
Device flags : Present Running
Interface flags: SNMP-Traps Internal: 0x0
Link flags : None
CoS queues : 8 supported, 8 maximum usable queues
Current address: 88:e0:f3:7f:39:81, Hardware address: 88:e0:f3:7f:39:81
Last flapped : 2019-11-13 22:36:25 ART (28w0d 11:25 ago)
Input rate : 256 bps (0 pps)
Output rate : 0 bps (0 pps)
Active alarms : None
Active defects : None
Interface transmit statistics: Disabled
Logical interface ge-1/1/9.0 (Index 328) (SNMP ifIndex 567)
Flags: SNMP-Traps 0x0 Encapsulation: ENET2
Input packets : 18648522681
Output packets: 23471212317
Protocol inet, MTU: 1986
Flags: Sendbcast-pkt-to-re
Addresses, Flags: Is-Preferred Is-Primary
Destination: 171.28.1.208/30, Local: 171.28.1.209, Broadcast: 171.28.1.211
Protocol iso, MTU: 1983
Protocol mpls, MTU: 1974, Maximum labels: 3
Protocol multiservice, MTU: Unlimited
manuela@astronauta008>
manuela@astronauta008> show configuration | display set | match ge-1/1/9
set interfaces ge-1/1/9 description "L2L CenturyLink Boston TO-magaliO06 ge-0/0/2"
set interfaces ge-1/1/9 mtu 2000
set interfaces ge-1/1/9 gigether-options auto-negotiation
set interfaces ge-1/1/9 unit 0 family inet address 171.28.1.209/30
set interfaces ge-1/1/9 unit 0 family iso
set interfaces ge-1/1/9 unit 0 family mpls
set protocols rsvp interface ge-1/1/9.0 hello-interval 0
set protocols mpls interface ge-1/1/9.0
set protocols isis interface ge-1/1/9.0 point-to-point
set protocols isis interface ge-1/1/9.0 bfd-liveness-detection minimum-interval 1000
set protocols isis interface ge-1/1/9.0 bfd-liveness-detection minimum-receive-interval 1000
set protocols isis interface ge-1/1/9.0 bfd-liveness-detection multiplier 3
set protocols isis interface ge-1/1/9.0 level 1 disable
set protocols ldp interface ge-1/1/9.0
manuela@astronauta008>
manuela@astronauta008> show arp no-resolve | match 171.28.1.
88:e0:f3:7f:37:79 171.28.1.54 ge-1/1/3.0 none
88:e0:f3:7f:44:7f 171.28.1.57 ge-1/1/5.0 none
b8:c2:53:f4:e7:66 171.28.1.177 ge-1/1/4.0 none
88:a2:5e:64:07:71 171.28.1.202 ge-1/1/8.0 none
manuela@astronauta008>
manuela@astronauta008> ping no-resolve 171.28.1.210 source 171.28.1.209
PING 171.28.1.210 (171.28.1.210): 56 data bytes
^C
--- 171.28.1.210 ping statistics ---
8 packets transmitted, 0 packets received, 100% packet loss
manuela@astronauta008>
manuela@astronauta008> ping no-resolve 171.28.1.210 source 171.28.1.209 rapid
PING 171.28.1.210 (171.28.1.210): 56 data bytes
.....
--- 171.28.1.210 ping statistics ---
5 packets transmitted, 0 packets received, 100% packet loss
manuela@astronauta008>
manuela@astronauta008> show bfd session brief
Detect Transmit
Address State Interface Time Interval Multiplier
171.28.1.177 Up ge-1/1/4.0 3.000 1.000 3
171.28.1.202 Up ge-1/1/8.0 3.000 1.000 3
31.13.75.94 Up ge-1/0/6.0 3.000 1.000 3
31.13.75.109 Up ge-1/0/4.0 3.000 1.000 3
31.13.3.21 Up ge-1/1/7.0 3.000 1.000 3
31.13.3.146 Up ge-1/0/1.0 3.000 1.000 3
31.13.3.242 Up ge-1/0/2.0 3.000 1.000 3
7 sessions, 7 clients
Cumulative transmit rate 7.0 pps, cumulative receive rate 7.0 pps
manuela@astronauta008>
manuela@astronauta008> show isis adjacency
Interface System L State Hold (secs) SNPA
ge-1/0/1.0 Daihatsu015 2 Up 19
ge-1/0/2.0 Acura035 2 Up 20
ge-1/0/4.0 Datsun054 2 Up 20
ge-1/0/6.0 Infiniti025 2 Up 22
ge-1/1/1.993 Isuzu105 2 Up 20
ge-1/1/3.0 Lexus042 2 Up 24 88:e0:f3:7f:37:79
ge-1/1/4.0 Toyota058 2 Up 26
ge-1/1/5.0 Nissan027 2 Up 6 88:e0:f3:7f:44:7f
ge-1/1/7.0 Honda056 2 Up 21
ge-1/1/8.0 Mitsubishi063 2 Up 21
manuela@astronauta008>
manuela@astronauta008> exit
Mais comandos úteis para verificação
Verificar tempo de operação do equipamento:
Atom@R2D2> show system uptime
Verificar usuários logados:
Atom@R2D2> show system users
Verificar armazenamento de dados local:
Atom@R2D2> show system storage
Verificar a tabela de processos em execução:
Atom@R2D2> show system processes
Verificar componentes de hardware instalados:
Atom@R2D2> show chassis hardware
Verificar status dos componentes e temperatura, e velocidades do sistema de refrigeração:
Atom@R2D2> show chassis environment
Verificar status da routing engine:
Atom@R2D2> show chassis routing-engine
Verificar alarmes de alertas no equipamento:
Atom@R2D2> show chassis alarms
Versão do Junos OS que esta rodando no equipamento. Também exibe o host name e o modelo do dispositivo:
Atom@R2D2> show version
Verificar logs relacionados aos alarmes do hardware:
Atom@R2D2> show log chassisd | no-more
Verificar mensagens de log:
Atom@R2D2> show log messages | no-more
Verificar histórico de login dos usuários:
Atom@R2D2> show log user
Verificar a configuração atual:
Atom@R2D2> show configuration
Breve descrição sobre o status das interfaces:
Atom@R2D2> show interfaces terse
Atom@R2D2> run show interfaces ge-0/0/1.0 terse
Descrição sobre uma interface:
Atom@R2D2> show interfaces interface-name
Descrição detalhada sobre uma interface:
Atom@R2D2> show interface interface-name extensive
Reinicia as estatísticas de uma interface:
Atom@R2D2> clear interfaces statistics interface-name
Breve descrição sobre o estado do protocolo:
Atom@R2D2> show bgp summary
Breve descrição sobre o estado do protocolo:
Atom@R2D2> show ospf overview
Breve descrição sobre o estado do protocolo:
Atom@R2D2> show isis overview
Descrição detalhada sobre uma rota específica:
Atom@R2D2> show route 216.142.248.0 extensive
Descrição sobre uma rota específica:
Atom@R2D2> show route 192.168.68.0/24
Descrição da tabela de rotas:
Atom@R2D2> show route terse
ENABLE / DISABLE INTERFACE IN JUNIPER:
Atom@R2D2# set interfaces ge-0/0/1.0 disable (This is cisco equivalent of **shutdown**)
Atom@R2D2# delete interfaces ge-0/0/1.0 disable (This is cisco equivalent of **no shutdown**)
Atom@R2D2# run show ge-0/0/1.0
Atom@R2D2# run show interfaces ge-0/0/1.0 terse