Nesta página
Exemplo: Aplicação de políticas de roteamento em diferentes níveis da hierarquia BGP
Este exemplo mostra o BGP configurado em uma topologia de rede simples e explica como as polícias de roteamento fazem efeito quando são aplicadas em diferentes níveis da configuração do BGP.
Requisitos
Nenhuma configuração especial além da inicialização do dispositivo é necessária antes de configurar este exemplo.
Visão geral
Para BGP, você pode aplicar políticas da seguinte forma:
-
Global e
exportdeclarações do BGPimport— Inclua essas declarações no nível de[edit protocols bgp]hierarquia (para instâncias de roteamento, incluam essas declarações no nível hierárquica[edit routing-instances routing-instance-name protocols bgp]). -
Grupo
importeexportdeclarações — Inclua essas declarações no nível de[edit protocols bgp group group-name]hierarquia (para instâncias de roteamento, incluam essas declarações no nível hierárquicos[edit routing-instances routing-instance-name protocols bgp group group-name]). -
Peer
importandexportstatements — Inclua essas declarações no nível de[edit protocols bgp group group-name neighbor address]hierarquia (para instâncias de roteamento, incluam essas declarações no nível hierárquica[edit routing-instances routing-instance-name protocols bgp group group-name neighbor address]). -
família
importeexportdeclarações — Inclua essas declarações no nível de[edit protocols bgp family nlri]hierarquia (para instâncias de roteamento, incluam essas declarações no nível hierárquicos[edit routing-instances routing-instance-name protocols bgp family nlri]).
Um nível import ou export declaração por pares substitui um grupo import ou export uma declaração. Um nível import de grupo ou export declaração substitui um BGP import ou export declaração global.
Neste exemplo, uma política nomeada send-direct é aplicada no nível global, outra política nomeada send-192.168.0.1 é aplicada no nível do grupo, e uma terceira política nomeada send-192.168.20.1 é aplicada no nível vizinho.
user@host# show protocols
bgp {
local-address 172.16.1.1;
export send-direct;
group internal-peers {
type internal;
export send-192.168.0.1;
neighbor 172.16.2.2 {
export send-192.168.20.1;
}
neighbor 172.16.3.3;
}
group other-group {
type internal;
neighbor 172.16.4.4;
}
}
Um ponto-chave, e que muitas vezes é mal interpretado e que pode levar a problemas, é que, em tal configuração, apenas a política mais explícita é aplicada. Uma política de nível vizinho é mais explícita do que uma política de nível de grupo, que por sua vez é mais explícita do que uma política global.
O vizinho 172.16.2.2 está sujeito apenas à política de envio-192.168.20.1. O vizinho 172.16.3.3, sem nada mais específico, está sujeito apenas à política send-192.168.0.1. Enquanto isso, o vizinho 172.16.4.4 no grupo de outro grupo não tem política de grupo ou nível vizinho, por isso usa a política de envio direto.
Se você precisar ter o vizinho 172.16.2.2.2 executando a função das três políticas, você pode escrever e aplicar uma nova política de nível vizinho que engloba as funções dos outros três, ou você pode aplicar as três políticas existentes, como uma cadeia, ao vizinho 172.16.2.2.
Topologia
Figura 1 mostra a rede de amostra.

Configuração rápida da CLI mostra a configuração de todos os dispositivos em Figura 1.
A seção #configuration__policy-bgp-apply-levels-st descreve as etapas do dispositivo R1.
Configuração
Configuração rápida da CLI
Para configurar este exemplo rapidamente, copie os seguintes comandos, cole-os em um arquivo de texto, remova qualquer quebra de linha, altere os detalhes necessários para combinar com a configuração da sua rede e, em seguida, copie e cole os comandos no CLI no nível de [edit] hierarquia.
Dispositivo R1
set interfaces fe-1/2/0 unit 0 description to-R2 set interfaces fe-1/2/0 unit 0 family inet address 10.10.10.1/30 set interfaces lo0 unit 0 family inet address 172.16.1.1/32 set protocols bgp local-address 172.16.1.1 set protocols bgp export send-direct set protocols bgp group internal-peers type internal set protocols bgp group internal-peers export send-static-192.168.0 set protocols bgp group internal-peers neighbor 172.16.2.2 export send-static-192.168.20 set protocols bgp group internal-peers neighbor 172.16.3.3 set protocols bgp group other-group type internal set protocols bgp group other-group neighbor 172.16.4.4 set protocols ospf area 0.0.0.0 interface lo0.0 passive set protocols ospf area 0.0.0.0 interface fe-1/2/0.0 set policy-options policy-statement send-direct term 1 from protocol direct set policy-options policy-statement send-direct term 1 then accept set policy-options policy-statement send-static-192.168.0 term 1 from protocol static set policy-options policy-statement send-static-192.168.0 term 1 from route-filter 192.168.0.0/24 orlonger set policy-options policy-statement send-static-192.168.0 term 1 then accept set policy-options policy-statement send-static-192.168.20 term 1 from protocol static set policy-options policy-statement send-static-192.168.20 term 1 from route-filter 192.168.20.0/24 orlonger set policy-options policy-statement send-static-192.168.20 term 1 then accept set routing-options static route 192.168.0.1/32 discard set routing-options static route 192.168.20.1/32 discard set routing-options router-id 172.16.1.1 set routing-options autonomous-system 17
Dispositivo R2
set interfaces fe-1/2/0 unit 0 description to-R1 set interfaces fe-1/2/0 unit 0 family inet address 10.10.10.2/30 set interfaces fe-1/2/1 unit 0 description to-R3 set interfaces fe-1/2/1 unit 0 family inet address 10.10.10.5/30 set interfaces lo0 unit 0 family inet address 172.16.2.2/32 set protocols bgp group internal-peers type internal set protocols bgp group internal-peers local-address 172.16.2.2 set protocols bgp group internal-peers neighbor 172.16.3.3 set protocols bgp group internal-peers neighbor 172.16.1.1 set protocols bgp group internal-peers neighbor 172.16.4.4 set protocols ospf area 0.0.0.0 interface lo0.0 passive set protocols ospf area 0.0.0.0 interface fe-1/2/0.0 set protocols ospf area 0.0.0.0 interface fe-1/2/1.0 set routing-options router-id 172.16.2.2 set routing-options autonomous-system 17
Dispositivo R3
set interfaces fe-1/2/1 unit 0 description to-R2 set interfaces fe-1/2/1 unit 0 family inet address 10.10.10.6/30 set interfaces fe-1/2/2 unit 0 description to-R4 set interfaces fe-1/2/2 unit 0 family inet address 10.10.10.9/30 set interfaces lo0 unit 0 family inet address 172.16.3.3/32 set protocols bgp group internal-peers type internal set protocols bgp group internal-peers local-address 172.16.3.3 set protocols bgp group internal-peers neighbor 172.16.2.2 set protocols bgp group internal-peers neighbor 172.16.1.1 set protocols bgp group internal-peers neighbor 172.16.4.4 set protocols ospf area 0.0.0.0 interface lo0.0 passive set protocols ospf area 0.0.0.0 interface fe-1/2/1.0 set protocols ospf area 0.0.0.0 interface fe-1/2/2.0 set routing-options router-id 172.16.3.3 set routing-options autonomous-system 17
Dispositivo R4
set interfaces fe-1/2/2 unit 0 description to-R3 set interfaces fe-1/2/2 unit 0 family inet address 10.10.10.10/30 set interfaces lo0 unit 0 family inet address 172.16.4.4/32 set protocols bgp group internal-peers type internal set protocols bgp group internal-peers local-address 172.16.4.4 set protocols bgp group internal-peers neighbor 172.16.2.2 set protocols bgp group internal-peers neighbor 172.16.1.1 set protocols bgp group internal-peers neighbor 172.16.3.3 set protocols ospf area 0.0.0.0 interface lo0.0 passive set protocols ospf area 0.0.0.0 interface fe-1/2/2.0 set routing-options router-id 172.16.4.4 set routing-options autonomous-system 17
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 do usuário da CLI.
Para configurar uma política de rota padrão IS-IS:
Configure as interfaces do dispositivo.
[edit interfaces] user@R1# set fe-1/2/0 unit 0 description to-R2 user@R1# set fe-1/2/0 unit 0 family inet address 10.10.10.1/30 user@R1# set lo0 unit 0 family inet address 172.16.1.1/32
Habilite o OSPF, ou outro protocolo de gateway interior (IGP), nas interfaces.
[edit protocols OSPF area 0.0.0.0] user@R1# set interface lo0.0 passive user@R1# set interface fe-1/2/0.0
Configure rotas estáticas.
[edit routing-options] user@R1# set static route 192.168.0.1/32 discard user@R1# set static route 192.168.20.1/32 discard
Habilite as políticas de roteamento.
[edit protocols policy-options] user@R1# set policy-statement send-direct term 1 from protocol direct user@R1# set policy-statement send-direct term 1 then accept user@R1# set policy-statement send-static-192.168.0 term 1 from protocol static user@R1# set policy-statement send-static-192.168.0 term 1 from route-filter 192.168.0.0/24 orlonger user@R1# set policy-statement send-static-192.168.0 term 1 then accept user@R1# set policy-statement send-static-192.168.20 term 1 from protocol static user@R1# set policy-statement send-static-192.168.20 term 1 from route-filter 192.168.20.0/24 orlonger user@R1# set policy-statement send-static-192.168.20 term 1 then accept
Configure o BGP e aplique as políticas de exportação.
[edit protocols bgp] user@R1# set local-address 172.16.1.1 user@R1# set protocols bgp export send-direct user@R1# set group internal-peers type internal user@R1# set group internal-peers export send-static-192.168.0 user@R1# set group internal-peers neighbor 172.16.2.2 export send-static-192.168.20 user@R1# set group internal-peers neighbor 172.16.3.3 user@R1# set group other-group type internal user@R1# set group other-group neighbor 172.16.4.4
Configure a ID do roteador e o número do sistema autônomo (AS).
[edit routing-options] user@R1# set router-id 172.16.1.1 user@R1# set autonomous-system 17
Se você terminar de configurar o dispositivo, confirme a configuração.
[edit] user@R1# commit
Resultados
A partir do modo de configuração, confirme sua configuração emitindo os show interfacescomandos show protocolsshow policy-optionse show routing-options os comandos. Se a saída não exibir a configuração pretendida, repita as instruções neste exemplo para corrigir a configuração.
user@R1# show interfaces
fe-1/2/0 {
unit 0 {
description to-R2;
family inet {
address 10.10.10.1/30;
}
}
}
lo0 {
unit 0 {
family inet {
address 172.16.1.1/32;
}
}
}
user@R1# show protocols
bgp {
local-address 172.16.1.1;
export send-direct;
group internal-peers {
type internal;
export send-static-192.168.0;
neighbor 172.16.2.2 {
export send-static-192.168.20;
}
neighbor 172.16.3.3;
}
group other-group {
type internal;
neighbor 172.16.4.4;
}
}
ospf {
area 0.0.0.0 {
interface lo0.0 {
passive;
}
interface fe-1/2/0.0;
}
}
user@R1# show policy-options
policy-statement send-direct {
term 1 {
from protocol direct;
then accept;
}
}
policy-statement send-static-192.168.0 {
term 1 {
from {
protocol static;
route-filter 192.168.0.0/24 orlonger;
}
then accept;
}
}
policy-statement send-static-192.168.20 {
term 1 {
from {
protocol static;
route-filter 192.168.20.0/24 orlonger;
}
then accept;
}
}
user@R1# show routing-options
static {
route 192.168.0.1/32 discard;
route 192.168.20.1/32 discard;
}
router-id 172.16.1.1;
autonomous-system 17;
Verificação
Confirme se a configuração está funcionando corretamente.
Verificação do aprendizado de rota BGP
Propósito
Certifique-se de que as políticas de exportação do BGP estejam funcionando como esperado verificando as tabelas de roteamento.
Ação
user@R1> show route protocol direct
inet.0: 11 destinations, 11 routes (11 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
172.16.1.1/32 *[Direct/0] 1d 22:19:47
> via lo0.0
10.10.10.0/30 *[Direct/0] 1d 22:19:47
> via fe-1/2/0.0
user@R1> show route protocol static
inet.0: 11 destinations, 11 routes (11 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
192.168.0.1/32 *[Static/5] 02:20:03
Discard
192.168.20.1/32 *[Static/5] 02:20:03
Discarduser@R2> show route protocol bgp
inet.0: 11 destinations, 11 routes (11 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
192.168.20.1/32 *[BGP/170] 02:02:40, localpref 100, from 172.16.1.1
AS path: I, validation-state: unverified
> to 10.10.10.1 via fe-1/2/0.0user@R3> show route protocol bgp
inet.0: 11 destinations, 11 routes (11 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
192.168.0.1/32 *[BGP/170] 02:02:51, localpref 100, from 172.16.1.1
AS path: I, validation-state: unverified
> to 10.10.10.5 via fe-1/2/1.0user@R4> show route protocol bgp
inet.0: 9 destinations, 11 routes (9 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
172.16.1.1/32 [BGP/170] 1d 20:38:54, localpref 100, from 172.16.1.1
AS path: I, validation-state: unverified
> to 10.10.10.9 via fe-1/2/2.0
10.10.10.0/30 [BGP/170] 1d 20:38:54, localpref 100, from 172.16.1.1
AS path: I, validation-state: unverified
> to 10.10.10.9 via fe-1/2/2.0Significado
No dispositivo R1, o show route protocol direct comando exibe duas rotas diretas: 172,16,1,1/32 e 10,10,10,0/30. O show route protocol static comando exibe duas rotas estáticas: 192.168.0.1/32 e 192.168.20.1/32.
No dispositivo R2, o show route protocol bgp comando mostra que a única rota que o Dispositivo R2 aprendeu através do BGP é a rota 192.168.20.1/32.
No dispositivo R3, o show route protocol bgp comando mostra que a única rota que o Dispositivo R3 aprendeu através do BGP é a rota 192.168.0.1/32.
No Dispositivo R4, o show route protocol bgp comando mostra que as únicas rotas que o Dispositivo R4 aprendeu através do BGP são as rotas 172.16.1.1/32 e 10.10.10.0/30.
Verificação do recebimento de rotas BGP
Propósito
Certifique-se de que as políticas de exportação do BGP estejam funcionando como esperado verificando as rotas BGP recebidas do Dispositivo R1.
Ação
user@R2> show route receive-protocol bgp 172.16.1.1 inet.0: 11 destinations, 11 routes (11 active, 0 holddown, 0 hidden) Prefix Nexthop MED Lclpref AS path * 192.168.20.1/32 172.16.1.1 100 I
user@R3> show route receive-protocol bgp 172.16.1.1 inet.0: 11 destinations, 11 routes (11 active, 0 holddown, 0 hidden) Prefix Nexthop MED Lclpref AS path * 192.168.0.1/32 172.16.1.1 100 I
user@R4> show route receive-protocol bgp 172.16.1.1 inet.0: 9 destinations, 11 routes (9 active, 0 holddown, 0 hidden) Prefix Nexthop MED Lclpref AS path 172.16.1.1/32 172.16.1.1 100 I 10.10.10.0/30 172.16.1.1 100 I
Significado
No dispositivo R2, o comando mostra que o route receive-protocol bgp 172.16.1.1 dispositivo R2 recebeu apenas uma rota BGP, 192.168.20.1/32, do dispositivo R1.
No dispositivo R3, o comando mostra que o route receive-protocol bgp 172.16.1.1 dispositivo R3 recebeu apenas uma rota BGP, 192.168.0.1/32, do Dispositivo R1.
No dispositivo R4, o comando mostra que o route receive-protocol bgp 172.16.1.1 dispositivo R4 recebeu duas rotas BGP, 172.16.1.1/32 e 10.10.10.0/30, do dispositivo R1.
Em resumo, quando várias políticas são aplicadas em diferentes hierarquias de CLI no BGP, apenas o aplicativo mais específico é avaliado, para exclusão de outros aplicativos de políticas menos específicos. Embora este ponto pareça fazer sentido, ele é facilmente esquecido durante a configuração do roteador, quando você acredita erroneamente que uma política de nível vizinho é combinada com uma política global ou de nível de grupo, apenas para descobrir que o seu comportamento de política não é tão esperado.