Exemplo: configuração do roteamento ativo sem parar para o PIM
Entendendo o roteamento ativo sem parar para o PIM
As configurações de roteamento ativo sem interrupções incluem dois mecanismos de roteamento que compartilham informações para que o roteamento não seja interrompido durante o failover do mecanismo de roteamento. Quando o roteamento ativo sem parar é configurado em uma plataforma de mecanismo de roteamento duplo, o estado de controle do PIM é replicado em ambos os mecanismos de roteamento.
Essas informações de estado do PIM incluem:
Relacionamentos de vizinhos
Junte-se e pode informações
Informações sobre o rp-set
Sincronização entre rotas e próximo saltos e o estado de encaminhamento entre os dois mecanismos de roteamento
O estado de controle do PIM é mantido no mecanismo de roteamento de backup pela replicação de informações de estado desde as primárias até o mecanismo de roteamento de backup e tendo o mecanismo de roteamento de backup reagir à instalação e modificação de rota na [ instância].inet.1 tabela de roteamento no mecanismo de roteamento primário. O mecanismo de roteamento de backup não envia ou recebe pacotes de protocolo PIM diretamente. Além disso, o mecanismo de roteamento de backup usa as interfaces dinâmicas criadas pelo mecanismo de roteamento primário. Essas interfaces dinâmicas incluem encapsulamento de PIM, des encapsulamento e interfaces de túnel multicast.
O pim claro se junta, o registro claro do pim e os comandos claros do modo operacional pim statistics não são suportados no mecanismo de roteamento de backup quando o roteamento ativo ininterrupto é habilitado.
Para permitir o roteamento ativo sem parar para PIM (além da configuração de PIM no mecanismo de roteamento primário), você deve incluir as seguintes declarações no nível de hierarquia [editar] :
redundância de chassi graciosa-switchover
roteamento sem parar de opções de roteamento
sincronização de comprometimento do sistema
Exemplo: configuração do roteamento ativo sem parar com o PIM
Este exemplo mostra como configurar o roteamento ativo sem parar para o tráfego IPv4 e IPv6 multicast baseado em PIM.
Requisitos
Para que o roteamento ativo sem parar para tráfego multicast baseado em PIM funcione com IPv6, o dispositivo de roteamento deve estar executando o Junos OS Release 10.4 ou superior.
Antes de começar:
Configure as interfaces do roteador. Consulte o guia de configuração de interfaces de rede.
Configure um protocolo de gateway interior ou roteamento estático. Consulte o guia de configuração de protocolos de roteamento.
Configure um protocolo de associação de grupo multicast (IGMP ou MLD). Veja a compreensão do IGMP e da compreensão do MLD.
Visão geral
O Junos OS oferece suporte ao roteamento ativo sem parar nos seguintes cenários de PIM:
Modo denso
Modo esparso
SSM
RP estático
Auto-RP (apenas para IPv4)
Roteador Bootstrap
RP incorporado no roteador não-RP (apenas para IPv6)
Suporte para BFD
Draft Rosen Multicast VPNs e VPNs BGP Multicast (use a opção
advertise-from-main-vpn-tables
no nível da[edit protocols bgp]
hierarquia, para sincronizar rotas MVPN, cmcast, túnel de provedor e informações de encaminhamento entre os mecanismos de roteamento primário e de backup).Recursos de políticas como política de vizinhos, políticas de exportação e importação de roteador bootstrap, política de escopo, mapas de fluxo e políticas de verificação de caminhos reversos (RPF)
Na versão 13.3 do Junos OS, as VPNs multicast não têm suporte com roteamento ativo ininterrupto. Os recursos baseados em políticas (como política de vizinhos, política de junção, política de BSR, política de escopo, mapas de fluxo e política de verificação de RPF) não são suportados com roteamento ativo sem parar.
Este exemplo usa RP estático. As interfaces estão configuradas para receber tráfego IPv4 e IPv6. O R2 oferece serviços de RP como RP local. Observe que o roteamento ativo sem parar não é suportado no roteador RP. A configuração mostrada neste exemplo está no R1.
Topologia
A Figura 1 mostra a topologia usada neste exemplo.

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 quaisquer quebras de linha, altere todos os detalhes necessários para combinar com a configuração da sua rede, copiar e colar os comandos na CLI no nível de [edit]
hierarquia e, em seguida, entrar no commit
modo de configuração.
R1
set system syslog archive size 10m set system syslog file messages any info set system commit synchronize set chassis redundancy graceful-switchover set interfaces traceoptions file dcd-trace set interfaces traceoptions file size 10m set interfaces traceoptions file files 10 set interfaces traceoptions flag all set interfaces so-0/0/1 unit 0 description "to R0 so-0/0/1.0" set interfaces so-0/0/1 unit 0 family inet address 10.210.1.2/30 set interfaces so-0/0/1 unit 0 family inet6 address FDCA:9E34:50CE:0001::2/126 set interfaces fe-0/1/3 unit 0 description "to R2 fe-0/1/3.0" set interfaces fe-0/1/3 unit 0 family inet address 10.210.12.1/30 set interfaces fe-0/1/3 unit 0 family inet6 address FDCA:9E34:50CE:0012::1/126 set interfaces fe-1/1/0 unit 0 description "to H1" set interfaces fe-1/1/0 unit 0 family inet address 10.240.0.250/30 set interfaces fe-1/1/0 unit 0 family inet6 address ::10.240.0.250/126 set interfaces lo0 unit 0 description "R1 Loopback" set interfaces lo0 unit 0 family inet address 10.210.255.201/32 primary set interfaces lo0 unit 0 family iso address 47.0005.80ff.f800.0000.0108.0001.0102.1025.5201.00 set interfaces lo0 unit 0 family inet6 address abcd::10:210:255:201/128 set protocols ospf traceoptions file r1-nsr-ospf2 set protocols ospf traceoptions file size 10m set protocols ospf traceoptions file files 10 set protocols ospf traceoptions file world-readable set protocols ospf traceoptions flag error set protocols ospf traceoptions flag lsa-update detail set protocols ospf traceoptions flag flooding detail set protocols ospf traceoptions flag lsa-request detail set protocols ospf traceoptions flag state detail set protocols ospf traceoptions flag event detail set protocols ospf traceoptions flag hello detail set protocols ospf traceoptions flag nsr-synchronization detail set protocols ospf traffic-engineering set protocols ospf area 0.0.0.0 interface so-0/0/1.0 metric 100 set protocols ospf area 0.0.0.0 interface fe-0/1/3.0 metric 100 set protocols ospf area 0.0.0.0 interface lo0.0 passive set protocols ospf area 0.0.0.0 interface fxp0.0 disable set protocols ospf area 0.0.0.0 interface fe-1/1/0.0 passive set protocols ospf3 traceoptions file r1-nsr-ospf3 set protocols ospf3 traceoptions file size 10m set protocols ospf3 traceoptions file world-readable set protocols ospf3 traceoptions flag lsa-update detail set protocols ospf3 traceoptions flag flooding detail set protocols ospf3 traceoptions flag lsa-request detail set protocols ospf3 traceoptions flag state detail set protocols ospf3 traceoptions flag event detail set protocols ospf3 traceoptions flag hello detail set protocols ospf3 traceoptions flag nsr-synchronization detail set protocols ospf3 area 0.0.0.0 interface fe-1/1/0.0 passive set protocols ospf3 area 0.0.0.0 interface fe-1/1/0.0 metric 1 set protocols ospf3 area 0.0.0.0 interface lo0.0 passive set protocols ospf3 area 0.0.0.0 interface so-0/0/1.0 metric 1 set protocols ospf3 area 0.0.0.0 interface fe-0/1/3.0 metric 1 set protocols pim traceoptions file r1-nsr-pim set protocols pim traceoptions file size 10m set protocols pim traceoptions file files 10 set protocols pim traceoptions file world-readable set protocols pim traceoptions flag mdt detail set protocols pim traceoptions flag rp detail set protocols pim traceoptions flag register detail set protocols pim traceoptions flag packets detail set protocols pim traceoptions flag autorp detail set protocols pim traceoptions flag join detail set protocols pim traceoptions flag hello detail set protocols pim traceoptions flag assert detail set protocols pim traceoptions flag normal detail set protocols pim traceoptions flag state detail set protocols pim traceoptions flag nsr-synchronization set protocols pim rp static address 10.210.255.202 set protocols pim rp static address abcd::10:210:255:202 set protocols pim interface lo0.0 set protocols pim interface fe-0/1/3.0 mode sparse set protocols pim interface fe-0/1/3.0 version 2 set protocols pim interface so-0/0/1.0 mode sparse set protocols pim interface so-0/0/1.0 version 2 set protocols pim interface fe-1/1/0.0 mode sparse set protocols pim interface fe-1/1/0.0 version 2 set policy-options policy-statement load-balance then load-balance per-packet set routing-options nonstop-routing set routing-options router-id 10.210.255.201 set routing-options forwarding-table export load-balance set routing-options forwarding-table traceoptions file r1-nsr-krt set routing-options forwarding-table traceoptions file size 10m set routing-options forwarding-table traceoptions file world-readable set routing-options forwarding-table traceoptions flag queue set routing-options forwarding-table traceoptions flag route set routing-options forwarding-table traceoptions flag routes set routing-options forwarding-table traceoptions flag synchronous set routing-options forwarding-table traceoptions flag state set routing-options forwarding-table traceoptions flag asynchronous set routing-options forwarding-table traceoptions flag consistency-checking set routing-options traceoptions file r1-nsr-sync set routing-options traceoptions file size 10m set routing-options traceoptions flag nsr-synchronization set routing-options traceoptions flag commit-synchronize
Procedimento
Procedimento passo a passo
O exemplo a seguir exige que você navegue por 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 no Guia de usuário do Junos OS CLI.
Para configurar o roteamento ativo sem parar no R1:
Sincronizar os mecanismos de roteamento.
[edit] user@host# edit system [edit system] user@host# set commit synchronize user@host# exit
Habilite o switchover gracioso do mecanismo de roteamento.
[edit] user@host# set chassis redundancy graceful-switchover
Configure as interfaces do R1.
[edit] user@host# edit interfaces [edit interfaces] user@host# set so-0/0/1 unit 0 description "to R0 so-0/0/1.0" user@host# set so-0/0/1 unit 0 family inet address 10.210.1.2/30 user@host# set so-0/0/1 unit 0 family inet6 address FDCA:9E34:50CE:0001::2/126 user@host# set fe-0/1/3 unit 0 description "to R2 fe-0/1/3.0" user@host# set fe-0/1/3 unit 0 family inet address 10.210.12.1/30 user@host# set fe-0/1/3 unit 0 family inet6 address FDCA:9E34:50CE:0012::1/126 user@host# set fe-1/1/0 unit 0 description "to H1" user@host# set fe-1/1/0 unit 0 family inet address 10.240.0.250/30 user@host# set fe-1/1/0 unit 0 family inet6 address ::10.240.0.250/126 user@host# set lo0 unit 0 description "R1 Loopback" user@host# set lo0 unit 0 family inet address 10.210.255.201/32 primary user@host# set lo0 unit 0 family iso address 47.0005.80ff.f800.0000.0108.0001.0102.1025.5201.00 user@host# set lo0 unit 0 family inet6 address abcd::10:210:255:201/128 user@host# exit
Configure o OSPF para IPv4 no R1.
[edit] user@host# edit protocols ospf [edit protocols ospf] user@host# set traffic-engineering user@host# set area 0.0.0.0 interface so-0/0/1.0 metric 100 user@host# set area 0.0.0.0 interface fe-0/1/3.0 metric 100 user@host# set area 0.0.0.0 interface lo0.0 passive user@host# set area 0.0.0.0 interface fxp0.0 disable user@host# set area 0.0.0.0 interface fe-1/1/0.0 passive
Configure o OSPF para IPv6 no R1.
[edit] user@host# edit protocols ospf3 [edit protocols ospf3] user@host# set area 0.0.0.0 interface fe-1/1/0.0 passive user@host# set area 0.0.0.0 interface fe-1/1/0.0 metric 1 user@host# set area 0.0.0.0 interface lo0.0 passive user@host# set area 0.0.0.0 interface so-0/0/1.0 metric 1 user@host# set area 0.0.0.0 interface fe-0/1/3.0 metric 1
Configure o PIM no R1. O endereço estático PIM aponta para o roteador RP (R2).
[edit] user@host# edit [edit protocols pim] user@host# set protocols pim rpstatic address 10.210.255.202 user@host# set protocols pim rp static address abcd::10:210:255:202 user@host# set protocols pim interface (Protocols PIM) lo0.0 user@host# set protocols pim interface fe-0/1/3.0 mode sparse user@host# set protocols pim interface fe-0/1/3.0 version 2 user@host# set protocols pim interface so-0/0/1.0 mode sparse user@host# set protocols pim interface so-0/0/1.0 version 2 user@host# set protocols pim interface fe-1/1/0.0 mode sparse user@host# set protocols pim interface fe-1/1/0.0 version 2
Configure o balanceamento de carga por pacote no R1.
[edit] user@host# edit policy-options policy-statement load-balance [edit policy-options policy-statement load-balance] user@host# set then load-balance per-packet
Aplique a política de equilíbrio de carga no R1.
[edit] user@host# set routing-options forwarding-table export load-balance
Configure o roteamento sem parar no R1.
[edit] user@host# set routing-options nonstop-routing user@host# set routing-options router-id 10.210.255.201
Procedimento passo a passo
Para resolução de problemas, configure as operações de log e rastreamento do sistema.
Habilite mensagens de log do sistema.
[edit] user@host# set system syslog archive size 10m user@host# set system syslog file messages any info
Trace as operações de interface.
[edit] user@host# set interfaces traceoptions file dcd-trace user@host# set interfaces traceoptions file size 10m user@host# set interfaces traceoptions file files 10 user@host# set interfaces traceoptions flag all
Trace as operações de IGP para IPv4.
[edit] user@host# set protocols ospf traceoptions file r1-nsr-ospf2 user@host# set protocols ospf traceoptions file size 10m user@host# set protocols ospf traceoptions file files 10 user@host# set protocols ospf traceoptions file world-readable user@host# set protocols ospf traceoptions flag error user@host# set protocols ospf traceoptions flag lsa-update detail user@host# set protocols ospf traceoptions flag flooding detail user@host# set protocols ospf traceoptions flag lsa-request detail user@host# set protocols ospf traceoptions flag state detail user@host# set protocols ospf traceoptions flag event detail user@host# set protocols ospf traceoptions flag hello detail user@host# set protocols ospf traceoptions flag nsr-synchronization detail
Trace as operações de IGP para IPv6.
[edit] user@host# set protocols ospf3 traceoptions file r1-nsr-ospf3 user@host# set protocols ospf3 traceoptions file size 10m user@host# set protocols ospf3 traceoptions file world-readable user@host# set protocols ospf3 traceoptions flag lsa-update detail user@host# set protocols ospf3 traceoptions flag flooding detail user@host# set protocols ospf3 traceoptions flag lsa-request detail user@host# set protocols ospf3 traceoptions flag state detail user@host# set protocols ospf3 traceoptions flag event detail user@host# set protocols ospf3 traceoptions flag hello detail user@host# set protocols ospf3 traceoptions flag nsr-synchronization detail
Trace as operações de PIM.
[edit] user@host# set protocols pim traceoptions file r1-nsr-pim user@host# set protocols pim traceoptions file size 10m user@host# set protocols pim traceoptions file files 10 user@host# set protocols pim traceoptions file world-readable user@host# set protocols pim traceoptions flag mdt detail user@host# set protocols pim traceoptions flag rp detail user@host# set protocols pim traceoptions flag register detail user@host# set protocols pim traceoptions flag packets detail user@host# set protocols pim traceoptions flag autorp detail user@host# set protocols pim traceoptions flag join detail user@host# set protocols pim traceoptions flag hello detail user@host# set protocols pim traceoptions flag assert detail user@host# set protocols pim traceoptions flag normal detail user@host# set protocols pim traceoptions flag state detail user@host# set protocols pim traceoptions flag nsr-synchronization
Trace todas as funcionalidades de protocolo de roteamento.
[edit] user@host# set routing-options traceoptions file r1-nsr-sync user@host# set routing-options traceoptions file size 10m user@host# set routing-options traceoptions flag nsr-synchronization user@host# set routing-options traceoptions flag commit-synchronize
Trace as operações da tabela de encaminhamento.
[edit] user@host# set routing-options forwarding-table traceoptions file r1-nsr-krt user@host# set routing-options forwarding-table traceoptions file size 10m user@host# set routing-options forwarding-table traceoptions file world-readable user@host# set routing-options forwarding-table traceoptions flag queue user@host# set routing-options forwarding-table traceoptions flag route user@host# set routing-options forwarding-table traceoptions flag routes user@host# set routing-options forwarding-table traceoptions flag synchronous user@host# set routing-options forwarding-table traceoptions flag state user@host# set routing-options forwarding-table traceoptions flag asynchronous user@host# set routing-options forwarding-table traceoptions flag consistency-checking
Se você terminar de configurar o dispositivo, confirme a configuração.
[edit] user@host# commit
Resultados
A partir do modo de configuração, confirme sua configuração entrando no chassi do show, mostrar interfaces, mostrar opções de políticas, mostrar protocolos, mostrar opções de roteamento e mostrar comandos de sistema. Se a saída não exibir a configuração pretendida, repita as instruções de configuração neste exemplo para corrigi-la.
user@host# show chassis redundancy { graceful-switchover; }
user@host# show interfaces traceoptions { file dcd-trace size 10m files 10; flag all; } so-0/0/1 { unit 0 { description "to R0 so-0/0/1.0"; family inet { address 10.210.1.2/30; } family inet6 { address FDCA:9E34:50CE:0001::2/126; } } } fe-0/1/3 { unit 0 { description "to R2 fe-0/1/3.0"; family inet { address 10.210.12.1/30; } family inet6 { address FDCA:9E34:50CE:0012::1/126; } } } fe-1/1/0 { unit 0 { description "to H1"; family inet { address 10.240.0.250/30; } family inet6 { address ::10.240.0.250/126; } } } lo0 { unit 0 { description "R1 Loopback"; family inet { address 10.210.255.201/32 { primary; } } family iso { address 47.0005.80ff.f800.0000.0108.0001.0102.1025.5201.00; } family inet6 { address abcd::10:210:255:201/128; } } }
user@host# show policy-options policy-statement load-balance { then { load-balance per-packet; } }
user@host# show protocols ospf { traceoptions { file r1-nsr-ospf2 size 10m files 10 world-readable; flag error; flag lsa-update detail; flag flooding detail; flag lsa-request detail; flag state detail; flag event detail; flag hello detail; flag nsr-synchronization detail; } traffic-engineering; area 0.0.0.0 { interface so-0/0/1.0 { metric 100; } interface fe-0/1/3.0 { metric 100; } interface lo0.0 { passive; } interface fxp0.0 { disable; } interface fe-1/1/0.0 { passive; } } } ospf3 { traceoptions { file r1-nsr-ospf3 size 10m world-readable; flag lsa-update detail; flag flooding detail; flag lsa-request detail; flag state detail; flag event detail; flag hello detail; flag nsr-synchronization detail; } area 0.0.0.0 { interface fe-1/1/0.0 { passive; metric 1; } interface lo0.0 { passive; } interface so-0/0/1.0 { metric 1; } interface fe-0/1/3.0 { metric 1; } } } pim { traceoptions { file r1-nsr-pim size 10m files 10 world-readable; flag mdt detail; flag rp detail; flag register detail; flag packets detail; flag autorp detail; flag join detail; flag hello detail; flag assert detail; flag normal detail; flag state detail; flag nsr-synchronization; } rp { static { address 10.210.255.202; address abcd::10:210:255:202; } } interface lo0.0; interface fe-0/1/3.0 { mode sparse; version 2; } interface so-0/0/1.0 { mode sparse; version 2; } interface fe-1/1/0.0 { mode sparse; version 2; } }
user@host# show routing-options traceoptions { file r1-nsr-sync size 10m; flag nsr-synchronization; flag commit-synchronize; } nonstop-routing; router-id 10.210.255.201; forwarding-table { traceoptions { file r1-nsr-krt size 10m world-readable; flag queue; flag route; flag routes; flag synchronous; flag state; flag asynchronous; flag consistency-checking; } export load-balance; }
user@host# show system syslog { archive size 10m; file messages { any info; } } commit synchronize;
Verificação
Para verificar a configuração, execute os seguintes comandos:
show pim juntar-se extensa
mostrar pim vizinhos emet detalhe
mostrar pim vizinhos inet6 detalhe
mostrar pim rps emet detalhe
mostrar pim rps emet6 detalhe
mostrar rota multicast inet extensa
mostrar rota multicast inet6 extensa
mostrar tabela de rota inet.1 detalhe
tabela de rotas de exibição emet6.1 detalhe
Configuração do modo esparso de PIM Reiniciamento gracioso
Você pode configurar o modo esparso PIM para continuar a encaminhar fluxos de pacotes multicast existentes durante uma falha no processo de roteamento e reinicialização. Somente o modo esparso PIM pode ser configurado dessa forma. A plataforma de roteamento não encaminha pacotes multicast para protocolos que não sejam PIM durante a reinicialização graciosa, porque todos os outros protocolos multicast devem ser reiniciados após uma falha no processo de roteamento. Se você configurar o modo PIM denso esparso, apenas grupos multicast esparsos se beneficiam de uma reinicialização graciosa.
A plataforma de roteamento não encaminha novos fluxos até que a reinicialização esteja concluída. Após a reinicialização, a plataforma de roteamento atualiza o estado de encaminhamento com quaisquer atualizações que foram recebidas dos vizinhos durante o período de reinicialização. Por exemplo, a plataforma de roteamento reaprende os estados de junção e podar dos vizinhos durante a reinicialização, mas não aplica as mudanças na tabela de encaminhamento até depois da reinicialização.
Quando o modo esparso PIM é habilitado, a plataforma de roteamento gera um número aleatório exclusivo de 32 bits chamado identificador de geração. Os identificadores de geração são incluídos por padrão em mensagens de olá pim, conforme especificado no rascunho da Internet draft-ietf-pim-sm-v2-new-10.txt. Quando uma plataforma de roteamento recebe mensagens de olá de PIM contendo identificadores de geração em uma interface ponto a ponto, o Junos OS ativa um algoritmo que otimiza a reinicialização graciosa.
Antes que o modo esparso de PIM ocorra, cada plataforma de roteamento cria um identificador de geração e o envia para seus vizinhos multicast. Se uma plataforma de roteamento com modo esparso PIM for reiniciada, ela cria um identificador de nova geração e a envia para vizinhos. Quando um vizinho recebe o novo identificador, ele reencamada atualizações multicast para o roteador reiniciador para permitir que ele saia da reinicialização graciosa de forma eficiente. A fase de reinicialização é concluída quando o temporização de reinicialização expira.
O encaminhamento multicast pode ser interrompido de duas maneiras. Primeiro, se o protocolo de roteamento subjacente for instável, as verificações de RPF multicast podem falhar e causar uma interrupção. Segundo, porque a tabela de encaminhamento não é atualizada durante o período de reinício gracioso, novos fluxos multicast não são encaminhados até que a reinicialização graciosa esteja concluída.
Você pode configurar a reinicialização graciosa globalmente ou para uma instância de roteamento. Este exemplo mostra como configurar a reinicialização graciosa globalmente.
Para configurar a reinicialização graciosa para o modo esparso PIM:
Veja também
Tabela de histórico de mudanças
O suporte de recursos é determinado pela plataforma e versão que você está usando. Use o Feature Explorer para determinar se um recurso é suportado em sua plataforma.