Números DO BGP 4-Byte AS
Visão geral dos números do sistema autônomo de 4 byte
Esta visão geral da tecnologia descreve os números do sistema autônomo (AS) de 4 byte e a operação do BGP em uma rede com uma mistura de números AS de 2 byte e 4 byte.
O número AS de 2 byte, também conhecido como número AS de 16 bits ou número AS de 2 octets, fornece um pool de 65.536 NÚMEROS. A faixa de número AS de 2 byte foi esgotada. Os números AS de 4 byte estão especificados no RFC 4893, suporte BGP para o Four-Octet AS Number Space e fornecem um pool de 4.294.967.296 COMO números.
A partir de 1º de janeiro de 2009, a Autoridade de Números Atribuídos à Internet (IANA) atribui apenas números AS de 4 byte, a menos que um número AS de 2 byte seja solicitado especificamente. A Força-Tarefa de Engenharia da Internet (IETF) RFC 4893 define um método para uma transição suave de números AS de 2 byte para números AS de 4 byte e para manter a compatibilidade retrógrada.
A RFC 4893 apresenta dois novos atributos BGP transitivos opcionais, AS4_PATH e AS4_AGGREGATOR. Esses novos atributos são usados para propagar informações de caminho AS de 4 byte em alto-falantes BGP que não suportam números AS de 4 byte.
A RFC 4893 também apresenta um número AS reservado, bem conhecido, de 2 byte, AS 23456. Este número AS reservado é chamado de AS_TRANS na RFC 4893.
RFC 7300, Números de Reserva do Último Sistema Autônomo (AS) e o rascunho da Internet draft-ietf-idr-as0-06 restringem o uso de 2 byte AS número 65535, 4 byte AS número 4294967295UL e AS número 0 em uma configuração. Portanto, quando você usa esses números DE restritos, a operação de confirmação falha.
Consulte também
Implementação de números do sistema autônomo de 4 byte
O Junos OS Release 9.1 e posterior oferece suporte a números AS de 4 byte.
Se sua rede estiver usando números AS de 2 byte atualmente, você não será obrigado a obter novos números AS de 4 byte. A faixa de número AS de 2 byte é um subconjunto da faixa de número AS de 4 byte. Um roteador de redes Juniper que oferece suporte a números AS de 4 byte simplesmente prepara uma série de zeros na frente do número AS de 2 byte. Por exemplo, o 2 byte AS número 65000 torna-se o número 4 byte AS 00000.65000.
Se o seu roteador Juniper Networks oferece suporte a números AS de 4 byte e tem uma relação de peer com um roteador que não oferece suporte a números AS de 4 byte, a sequência a seguir ocorre na tabela de roteamento RIB-in adjacente após o roteador que oferece suporte a números AS de 4 byte anuncia esse recurso ao novo peer:
O roteador que oferece suporte a números AS de 4 byte recebe um anúncio do peer que oferece suporte a apenas 2 números AS de byte.
No roteador que oferece suporte aos números AS de 4 byte, o caminho AS de 2 byte é convertido no número AS de 4 byte, preparando uma série de zeros na frente do número AS de 2 byte.
Se um número AS de 4 byte também estiver presente no caminho, ele será mesclado com os números AS de 2 byte no caminho.
Se o AGREGADOR e os atributos AS4_AGGREGATOR estiverem presentes, esses atributos também serão mesclados.
Se o seu roteador Juniper Networks oferece suporte a números AS de 4 byte e tem uma relação de peer com um roteador que não oferece suporte a números AS de 4 byte, a sequência a seguir ocorre na tabela de roteamento RIB-out adjacente:
A mensagem de atualização é reformata antes de ser enviada ao roteador que não oferece suporte a números AS de 4 byte.
O roteador que oferece suporte a números AS de 4 byte envia o número AS de 4 byte no atributo AS4_PATH.
O atributo AS_PATH também é enviado. Ela é codificada com os números AS de 2 byte. Os números DE de 4 byte Mappable, abaixo de 64537, são enviados como números AS de 2 byte. Os números de 4 byte AS não maplicaíveis, acima de 64536, são representados pelo conhecido número AS de 2 byte, AS 23456.
Um único grupo de peer é usado para os roteadores que oferecem suporte aos números AS de 4 byte e aos roteadores que oferecem suporte a apenas 2 números AS de byte.
Consulte também
Configuração de números do sistema autônomo de 4 byte
Esta seção descreve como configurar um número AS de 4 byte e como verificar se o peer BGP oferece suporte a números AS de 4 byte.
O número AS pode ser especificado em formato de número simples ou no formato de notação as-dot em roteadores que executam o Junos OS Release 9.2 e posteriores. Por exemplo, o número AS de 4 byte de 65.546 está representado em formato de número simples como 65546. O mesmo número QUE está representado no formato de notação de ponto AS como 1.10 em roteadores que executam o Junos OS Release 9.2 e posteriores.
Para configurar um número AS de 4 byte no formato de notação de ponto AS, inclua a declaração e especifique o número AS de 4 byte.
autonomous-system
No exemplo a seguir, o número de AS está definido para .1.10
user@host# set routing-options autonomous-system 1.10
Para configurar um número AS de 4 byte em formato de número simples, inclua a declaração e especifique o número AS de 4 byte.
autonomous-system
No exemplo a seguir, o número de AS está definido para .65546
user@host# set routing-options autonomous-system 65546
Após a negociação de uma sessão de peer BGP, você pode verificar se o peer oferece suporte a números AS de 4 byte ou não. Para verificar se o peer oferece suporte a números AS de 4 byte ou não, use o comando.
show bgp neighbor
No exemplo a seguir, o peer não oferece suporte a números AS de 4 byte.user@host# show bgp neighbor 192.168.1.9 | match "AS" Peer: 192.168.1.9+179 AS 65056 Local: 192.168.1.3+52616 AS 65000 Peer does not support 4 byte AS extension
No exemplo a seguir, o peer oferece suporte a números AS de 4 byte.
user@host# show bgp neighbor 192.168.1.9 | match "AS" Peer: 192.168.1.10+52679 AS 1000000000 Local: 192.168.1.3+179 AS 65000 Peer supports 4 byte AS extension (peer-as 1000000000)
Consulte também
Preparando os números AS de 4 Byte em um caminho AS
Quando um anúncio de prefixo de endereço transita por um domínio, o domínio efetivamente "assina" o anúncio de prefixo preparando seu número de sistema autônomo (ASN) para o caminho AS associado ao prefixo de endereço. Em qualquer ponto da rede, o caminho AS descreve uma sequência de domínios conectados que forma um caminho desde o ponto atual até o domínio de origem. O número mais à esquerda na lista de caminhos AS é o ASN do AS adjacente do qual o anúncio de prefixo de endereço foi recebido. A sequência de números indica a sequência de ASs, porém, que esta atualização foi propagada.
Esta seção descreve como preparar um ou mais números DE no início de um caminho AS. Os números de AS são adicionados no início do caminho após o número DE real de onde a rota se origina foi adicionado ao caminho. Preparar um caminho AS faz com que um caminho AS mais curto pareça mais longo e, portanto, menos preferível ao BGP.
A partir do Junos OS Release 15.1, a declaração impõe o primeiro número de sistema autônomo (ASN) no caminho ASN do vizinho anterior, já que o domínio é transitado.enforce-first-as
In , o Roteador 2 está configurado para preparar AS 1000000004 vezes na frente do número AS 65000.Figura 1
Você pode exibir os detalhes da rota usando o comando de rota show no Roteador 3. No exemplo a seguir, observe que o número AS pré-estabelecido exibido no caminho AS no Roteador 3 é o número AS_TRANS, AS 23456. Isso porque o Roteador 3 não oferece suporte a números AS de 4 byte.
user@Router3# show route 1.2.3.4 detail ... 1.2.3.4/32 *[BGP/170] 01:39:55, localpref 100, from 192.168.1.3 AS path: 65000 23456 23456 23456 23456 I
Você pode exibir os detalhes da rota usando o comando de rota show no Roteador 4. No exemplo a seguir, observe que o número AS pré-estabelecido exibido no caminho AS no Roteador 4 é AS 100000000. Isso porque o Roteador 4 oferece suporte a números AS de 4 byte e mescla os atributos AS_PATH e AS4_PATH.
user@Router4# show route 1.2.3.4 detail ... 1.2.3.4/32 *[BGP/170] 01:39:55, localpref 100, from 192.168.1.9 AS path: 65056 65000 1000000000 1000000000 1000000000 1000000000 I
Consulte também
Configuração de números AS de 4 byte e atributos da comunidade estendida BGP
Uma comunidade BGP é um grupo de destinos que compartilham uma propriedade comum. Você pode configurar o atributo padrão da comunidade e atributos estendidos da comunidade para inclusão em mensagens de atualização bgp.
Por exemplo, ao configurar uma instância de roteamento e encaminhamento de VPN (VRF), você precisa configurar um alvo de rota. Um alvo de rota é um tipo de atributo de comunidade estendida BGP. Para criar um atributo de comunidade estendido BGP nomeado, inclua a declaração e especifique os membros da comunidade:community
community name { members [ community-ids ]; }
Para especificar os membros da comunidade, você deve especificar a ID da comunidade. O ID da comunidade consiste em três componentes que você especifica no formato a seguir:
type:administrator:assigned-number
O campo de alguns atributos de comunidade estendida BGP é um número AS.administrator
Para configurar uma comunidade estendida, que inclui um número AS de 4 byte no formato de número simples, apequena a letra "L" até o final do número.target
No exemplo a seguir, uma comunidade com o número AS de 4 byte e um número atribuído de é representada como .target
334324
132
target:334324L:132
[edit policy-options] community vpn_blue members [ target:334324L:132 ];
Se você exibir as informações de comunidade estendidas direcionadas em um roteador peer que não oferece suporte a números AS de 4 byte, o roteador será exibido .target:unknown format
Consulte também
Entendendo um caminho AS de roteador com capacidade para 4 Byte por um domínio com capacidade de 2 bytes
Esta seção descreve o que acontece quando um roteador que oferece suporte a números AS de 4 byte envia a declaração de caminho AS para um roteador que só oferece suporte a números AS de 2 byte se o primeiro roteador estiver configurado com um número AS fora da faixa de número AS de 2 byte.
No Figura 2 Roteador 1 oferece suporte a números AS de 4 byte. O roteador 1 está configurado para usar um número AS de 4 byte, AS 100000000. O roteador 2 oferece suporte a números AS de 2 byte. O roteador 2 está configurado com um número AS de 2 byte, AS 65056.
O roteador 2 não aceita números AS de 4 byte no atributo AS_PATH. Você pode verificar isso usando o comando no Roteador 1.
show bgp neighbor
user@Router1# show bgp neighbor 192.168.1.9 | match "AS" Peer: 192.168.1.9+179 AS 65056 Local: 192.168.1.2+64053 AS 65080 Peer does not support 4 byte AS extension
Figura 3 mostra quatro roteadores executando EBGP. Os números de 4 byte AS do roteador 1, roteador 2 e roteador 4. O roteador 3 não oferece suporte a números AS de 4 byte.
Neste caso:
O roteador 1 envia o número AS de 4 byte, AS 100000000, no atributo AS_PATH ao Roteador 2.
O roteador 2 sabe que o Roteador 3 não oferece suporte a números AS de 4 byte.
O roteador 2 envia o número AS_TRANS, AS 23456, no atributo AS_PATH no lugar do número AS de 4 byte para o Roteador 3.
O roteador 2 envia o número AS de 4 byte, AS 10000000 no atributo AS4_PATH ao Roteador 3.
Como o atributo AS4_PATH é transitivo, o Roteador 3 envia tanto o atributo AS_PATH quanto o atributo AS4_PATH ao Roteador 4.
Quando o Roteador 4 recebe os atributos AS_PATH e AS4_PATH, ele mescla as declarações de caminho para criar um caminho AS preciso.
Você pode exibir o caminho AS usando o comando no Roteador 3. No exemplo a seguir, observe que o as número 23456 aparece no caminho AS e que o atributo AS4_PATH é .show route
Unrecognized
Como o atributo AS4_PATH é um atributo transitivo, ele é encaminhado para o próximo roteador.
user@Router3# show route 1.2.3.4 detail AS path: 65000 23456 I Unrecognized Attributes: 13 bytes
Você pode exibir os detalhes da rota usando o comando no Roteador 4. No exemplo a seguir, observe que, à medida que o caminho AS faz a transição do Roteador 3, conforme mostrado no caminho AS2 (2 byte AS), o número AS é exibido como AS_TRANS.show route
Isso significa que o Roteador 3 vê o número AS como 23456. No caminho AS4 (4 byte AS), o número AS é exibido como 10000000. No caminho AS mesclado, os números de caminho COMO corretos são exibidos para AS 65056, AS 65000 e AS 100000000.
user@Router4# show route 1.2.3.4 detail ... AS path: AS2 PA[3]:65056 65000 AS_TRANS AS path: AS4 PA[2]:65056 1000000000 AS path: Merged[3]:65056 65000 1000000000 I
Figura 4 mostra 4 roteadores executando o IBGP. Os números de 4 byte AS do roteador 1, roteador 2 e roteador 4. O roteador 3 não oferece suporte a números AS de 4 byte.
Neste caso:
O roteador 1 envia o número AS de 4 byte, AS 100000000, no atributo AS_PATH ao Roteador 2.
O roteador 2 sabe que o Roteador 3 não oferece suporte a números AS de 4 byte.
O roteador 2 envia o número AS_TRANS, AS 23456, no atributo AS_PATH no lugar do número AS de 4 byte para o Roteador 3.
O roteador 3 envia o atributo AS_PATH e o atributo AS4_PATH ao Roteador 4.
Quando o Roteador 4 recebe os atributos AS_PATH e AS4_PATH, ele mescla as declarações de caminho para criar um caminho AS preciso.
Você pode exibir os detalhes da rota usando o comando no Roteador 2. No exemplo a seguir, observe que o caminho AS é exibido como 100000000.show route
user@Router2# show route 1.2.3.4 detail ... AS path: 1000000000
Você pode exibir os detalhes da rota usando o comando no Roteador 3. No exemplo a seguir, observe que o caminho AS é exibido como 65000 23456.show route
user@Router3# show route 1.2.3.4 detail ... AS path: 65000 23456 I
Você pode exibir os detalhes da rota usando o comando no Roteador 4. No exemplo a seguir, observe que o caminho AS mesclado é exibido como 65000 100000000.show route
user@Router4# show route 1.2.3.4 detail ... AS path: 65000 1000000000 I
Consulte também
Entendendo os números de AS de 4 Byte e diferenciadores de rota
Um diferencial de rota (RD) é um campo de 8 byte prefixado no endereço IPv4 de um cliente provedor de serviços. O campo de 12 byte resultante é um endereço VPN-IPv4 exclusivo. O RD em mensagens BGP consiste em dois campos principais, o campo do tipo (2 bytes) e o campo de valor (6 bytes). O campo do tipo determina como o campo de valor deve ser interpretado.
O diferenciador de rota está configurado como um valor de 6 byte que você pode especificar como :, onde está o seu número AS atribuído e (também conhecido como número administrativo ou número atribuído abaixo do campo) é qualquer valor de 2 byte ou 4 byte.as-number
number
as-number
number
O número DE pode estar na faixa de 1 a 4.294.967.295. Se o número AS for um valor de 2 byte, o número administrativo é um valor de 4 byte. Se o número AS for de 4 byte, o número administrativo será um valor de 2 byte.
Um RD que consiste em um número AS de 4 byte e um número administrativo de 2 byte é definido como um diferencial de rota tipo 2 em RFC 4364, BGP/MPLS IP Private Networks.
Para configurar um RD usando um número AS de 4 byte, apense a letra "L" ao final do número. No exemplo a seguir, o número AS de 4 byte é 7765000 e o número administrativo é 1000:
user@Router1# set routing-instances 4B route-distinguisher 7765000L:1000
Se o roteador que você está configurando for um peer BGP de um roteador que não oferece suporte a números AS de 4 byte, você também precisa configurar um número DE local conforme discutido no Estabelecimento de uma relação de peer entre um roteador com capacidade de 4 Byte e um roteador com capacidade de 2 Byte usando um número AS de 4 Byte.Estabelecendo uma relação entre um roteador com capacidade para 4 byte e um roteador com capacidade para 2 Byte usando um número AS de 4 byte Para configurar o número AS local, inclua a declaração, especifique o número AS de 2 byte para usar (65001) e inclua a opção .local-as
private
user@Router1# set routing-instances 4B protocols bgp group 4B2Bpeers local-as 65001 private
Consulte também
Entendendo os números de AS de 4 Byte e a detecção de loop de rota
Uma das funções mais importantes no BGP é a detecção de loop de rota no nível do sistema autônomo usando o atributo AS_PATH. Uma maneira simples de pensar no AS_PATH é que é a lista de sistemas autônomos pelos quais uma rota passa para chegar ao seu destino. Os loops são detectados e evitados pelo roteador verificando seu próprio número de AS no AS_PATH recebido de um AS vizinho.
Esta seção descreve como a detecção de loop de rota funciona com uma mistura de roteadores que suportam e não suportam números AS de 4 byte. Figura 5 mostra uma rede pequena com potencial para loops BGP.
No primeiro exemplo, uma rota EBGP, rota 10.1.2.3, é anunciado pela primeira vez pelo Roteador 1. O primeiro AS no caminho é o AS 64596 conforme configurado no Roteador 1. O segundo AS que está no caminho é AS 42000000 como configurado no Roteador 2. AS 420000000 é enviado no atributo AS4_path e o número AS_TRANS, AS 23456, é enviado no atributo AS_PATH ao Roteador 3. O terceiro AS no caminho é AS 65003, conforme configurado no Roteador 3.
A saída de comando mostra o caminho AS para a rota 10.1.2.3 conforme anunciado pelo Roteador 3 ao Roteador 4. Na saída de comando, você vê o AS 64596 primeiro.show route
show route
Como o Roteador 3 não oferece suporte a números AS de 4 byte, você vê COMO 23456 segundo. Como o Roteador 2 usou um AS local de 65000 para estabelecer uma relação de pares com o Roteador 3, você vê COMO 65000 terceiro. O AS 65003 não está na saída de comando porque o comando foi inserido no roteador configurado com AS 65003.show route
user@Router3# show route advertising-protocol bgp 192.168.1.2 ... Prefix Nexthop MED Lclpref AS path 10.2.3.4/32 Self 65000 23456 64596 I
Neste caso, quando o Roteador 4 vê seu próprio número AS, AS 64596, no caminho, ele detecta um loop de roteamento.
No segundo exemplo, uma rota EBGP, a rota 10.3.2.1, é anunciada pela primeira vez pelo Roteador 4. O primeiro AS no caminho é o AS 60596 conforme configurado no Roteador 4. O segundo AS no caminho é AS 65003 conforme configurado no Roteador 3. O terceiro AS está no caminho como 42000000 como configurado no Roteador 2.
A saída de comando mostra o caminho AS para a rota 10.3.2.1 conforme anunciado pelo Roteador 2 ao Roteador 1. Na saída de comando, você vê AS 64596 primeiro e AS 65003 segundos.show route
show route
O AS 420000000 não está na saída de comando porque o comando foi inserido no roteador configurado com AS 420000000.show route
user@Router2# show route advertising-protocol bgp 192.168.1.10 ... Prefix Nexthop MED Lclpref AS path 10.3.2.1/32 Self 65003 64596 I
Quando o Roteador 1 vê seu próprio número AS, AS 64596, no caminho, ele detecta um loop de roteamento.
Consulte também
Estabelecendo uma relação entre um roteador com capacidade de 4 byte e um roteador com capacidade para 2 Byte usando um número AS de 2 Byte
Esta seção descreve o que acontece quando um roteador que oferece suporte a números AS de 4 byte estabelece uma relação de peer com um roteador que só oferece suporte a números AS de 2 byte se ambos os roteadores estiverem configurados com números AS na faixa de número AS de 2 byte.
Em Figura 6, o Roteador 1 está executando o Junos OS Release 9.2 que oferece suporte a números AS de 4 byte. O roteador 1 está configurado para usar um número AS de 2 byte, AS 12596. O roteador 2 está executando o Junos OS Release 8.5 que oferece suporte a números AS de 2 byte. O roteador 2 está configurado com um número AS de 2 byte, AS 60000.
O exemplo a seguir mostra a parte relevante da configuração do Roteador 1.
user@Router1# show configuration … autonomous-system 12596; … local-address 192.168.1.10; export static-to-bgp; peer-as 60000;
Para verificar se o caminho AS da rota 1.2.3.4 contém AS 12596, use o comando no Roteador 2. O exemplo a seguir mostra que a sessão de peer BGP está estabelecida da maneira normal e que o caminho AS da rota 1.2.3.4 contém AS 12596:
show route
user@Router2# show route 1.2.3.4 1.2.3.4/32 *[BGP/170] 00:01:29, localpref 100, from 192.168.1.10 AS path: 12596 I > via at-0/1/0.1001
Para exibir as mensagens de estabelecimento de sessão registradas no Roteador 1, use o comando.
show log messages
O exemplo a seguir mostra que o Roteador 1 descobre que o Roteador 2 não oferece suporte a números AS de 4 byte:user@Router1# show log messages Nov 7 09:41:39.443493 bgp_4byte_aspath_add_cap():153 AS4-Peer 192.168.1.9 (External AS 60000)(SEND): 4 byte AS capability added, AS 12596 Nov 7 09:41:39.443582 bgp_send: sending 67 bytes to 192.168.1.9 (External AS 60000) […] Nov 7 09:41:39.448055 bgp_4byte_aspath_adjust():1279 AS4-Peer 192.168.1.9 (External AS 60000)(SEND): Adjust BGP update to Old/New BGP speaker format Nov 7 09:41:39.448132 bgp_4byte_aspath_adjust():1290 AS4-Peer 192.168.1.9 (External AS 60000)(SEND): Cached information of previous update format is not used Nov 7 09:41:39.448162 bgp_generate_2byte_aspath():422 AS4-Peer 192.168.1.9 (External AS 60000)(SEND): Generating 2 byte AS path from 4 byte as-path Nov 7 09:41:39.448198 bgp_send: sending 64 bytes to 192.168.1.9 (External AS 60000)
Consulte também
Estabelecendo uma relação entre um roteador com capacidade para 4 byte e um roteador com capacidade para 2 Byte usando um número AS de 4 byte
Esta seção descreve o que acontece quando um roteador que oferece suporte a números AS de 4 byte estabelece uma relação de peer com um roteador que só oferece suporte a números AS de 2 byte se o primeiro roteador estiver configurado com um número AS fora da faixa de número AS de 2 byte.
Em Figura 7, o roteador 2 está executando o Junos OS Release 9.2 que oferece suporte a números AS de 4 byte. O roteador 2 está configurado para usar um número AS de 4 byte, AS 100000. O roteador 3 está executando o Junos OS Release 8.5 que oferece suporte a números AS de 2 byte. O roteador 3 está configurado com um número AS de 2 byte, AS 60000.
Você pode configurar um número DE local para ser usado apenas durante a criação da sessão BGP com um vizinho BGP, mas para ficar escondido no caminho AS enviado para peers BGP externos. Para configurar o número AS local, inclua a declaração, especifique o número AS de 2 byte a ser usado, 65530 e inclua a opção .local-as
private
Com essa configuração, apenas o número DE global, 1000000, está incluído no caminho de AS enviado para pares externos. O exemplo a seguir mostra a parte relevante da configuração do Roteador 2:
user@Router2# show configuration … autonomous-system 1000000; … local-address 192.168.1.9; export static-to-bgp; neighbor 192.168.1.3 { peer-as 60000; local-as 65530 private; }
O número DE peer no Roteador 3 deve ser igual ao número de AS local no Roteador 1. O exemplo a seguir mostra a parte relevante da configuração do Roteador 3:
user@Router3# show configuration … autonomous-system 60000; … local-address 192.168.1.3; neighbor 192.168.1.9 { peer-as 65530;
Para verificar se o caminho AS da rota 22.1.2.3 contém AS 65530, use o comando no Roteador 3. O exemplo a seguir mostra que a sessão de peer BGP está estabelecida e que o caminho AS da rota 22.1.2.3 contém AS 65530:show route
user@Router3# show route 22.1.2.3 ... 22.1.2.3/32 *[BGP/170] 01:39:55, localpref 100, from 192.168.1.9 AS path: 65530 I > via so-1/0/3.0
Consulte também
Exemplo: Aplicar o número correto do sistema autônomo no AS-Path na rede BGP
Este exemplo mostra como a declaração, definida no nível de hierarquia, pode ser usada como medida de segurança.enforce-first-as
[edit protocols bgp]
Configurar essa declaração cria uma verificação de consistência para garantir que um peer BGP seja um remetente legítimo de informações de roteamento.
Requisitos
Antes de começar, configure uma rede BGP com pelo menos três sistemas autônomos. Três roteadores separados são suficientes.
Visão geral
A declaração reforça que o primeiro número de sistema autônomo (ASN) (esquerda) no caminho AS é consistente com a ASN do vizinho publicitário.enforce-first-as
A topologia é configurada com a publicidade do Roteador C no BGP uma rota estática para o Roteador B, que depois readverte a rota para o Roteador A. Em seguida, uma política de exportação para o Roteador A para preparar uma ASN não relacionada é adicionada ao Roteador B. Por fim, a declaração está configurada no Roteador A em direção ao Roteador B. Quando o roteador A recebe AS-path, ele verifica se a ASN mais esquerda no caminho AS é a ASN do vizinho anterior e invalida a rota vinda do Roteador B.enforce-first-as
Topologia
Configure a declaração de enforce-first-as para verificar rotas
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 qualquer quebra de linha, altere todos 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 hierarquia.[edit]
Configuração inicial no roteador A
set interfaces ge-1/0/0 unit 0 family inet address 192.0.2.1/29 set interfaces ge-1/0/0 unit 0 family mpls set interfaces lo0 unit 0 family inet address 10.127.0.1/32 set routing-options router-id 10.127.0.1 set routing-options autonomous-system 65541 set protocols mpls interface ge-1/0/0.0 set protocols bgp group pe type external set protocols bgp group pe peer-as 65542 set protocols bgp group pe neighbor 192.0.2.2 set protocols ospf area 0.0.0.0 interface lo0.0 passive set protocols ospf area 0.0.0.0 interface ge-1/0/0.0 set protocols ldp interface ge-1/0/0.0 set protocols ldp interface lo0.0
Configuração inicial no roteador B
set interfaces ge-0/0/0 unit 0 family inet address 192.0.2.2/29 set interfaces ge-0/0/0 unit 0 family mpls set interfaces ge-0/0/1 unit 0 family inet address 198.51.100.1/29 set interfaces ge-0/0/1 unit 0 family mpls set interfaces lo0 unit 0 family inet address 10.127.0.2/32 set routing-options router-id 10.127.0.2 set routing-options autonomous-system 65542 set protocols bgp group pe1 type external set protocols bgp group pe1 peer-as 65541 set protocols bgp group pe1 neighbor 192.0.2.1 set protocols bgp group pe3 type external set protocols bgp group pe3 peer-as 65543 set protocols bgp group pe3 neighbor 198.51.100.2
Configuração inicial no roteador C
set interfaces ge-1/0/0 unit 0 family inet address 198.51.100.2/29 set interfaces ge-1/0/0 unit 0 family mpls set interfaces lo0 unit 0 family inet address 10.127.0.3/32 set routing-options router-id 10.127.0.3 set routing-options autonomous-system 65543 set protocols mpls interface ge-1/0/0.0 set protocols bgp group pe type external set protocols bgp group pe peer-as 65542 set protocols bgp group pe neighbor 198.51.100.1 set protocols ospf area 0.0.0.0 interface lo0.0 passive set protocols ospf area 0.0.0.0 interface ge-1/0/0.0 set protocols ldp interface ge-1/0/0.0 set protocols ldp interface lo0.0
Procedimento
Procedimento passo a passo
Configure uma rota estática no roteador C.
C-re0# set routing-options static route 198.51.100.17/29 next-hop 198.51.100.20 C-re0# set routing-options static route 198.51.100.17/29 readvertise C-re0# commit
Configure uma política de exportação para a rota estática.
C-re0# set policy-options policy-statement export-static from protocol bgp C-re0# set policy-options policy-statement export-static then accept C-re0# set protocols bgp group pe export export-static C-re0# commit
Verifique se a rota estática está chegando ao roteador B e ao roteador A.
B-re0# run show route 198.51.100.17 inet.0: 49 destinations, 49 routes (49 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 198.51.100.17/29 *[BGP/170] 00:11:40, localpref 100 AS path: 65543 I, validation-state: unverified > to 198.51.100.2 via ge-0/0/1.0 A-re0# run show route 198.51.100.17 inet.0: 49 destinations, 49 routes (49 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 198.51.100.17/29 *[BGP/170] 00:10:31, localpref 100 AS path: 65542 65543 I, validation-state: unverified > to 192.0.2.2 via ge-1/0/0.0
Observe que no Roteador A, a rota é mostrada com um caminho AS de 65542 65543. A rota do roteador B para o roteador A teve a ASN para roteador A preparada para o caminho AS.
Definir uma política de exportação para preparar ASN do Roteador B.
B-re0# set policy-options policy-statement as-prepender from neighbor 198.51.100.2 B-re0# set policy-options policy-statement as-prepender then as-path-prepend 65555 B-re0# set protocols bgp group pe1 export as-prepender B-re0# commit
Verifique a rota 198.51.100.17 no roteador A.
A-re0# run show route 198.51.100.17 inet.0: 49 destinations, 49 routes (49 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 198.51.100.17/29 *[BGP/170] 00:00:50, localpref 100 AS path: 65555 65542 65543 I, validation-state: unverified > to 192.0.2.2 via ge-1/0/0.0 [edit] A-re0#
Observe que a ASN 65555 está preparatória para o caminho AS.
-
Configure a declaração no Roteador A.
enforce-first-as
A-re0# set protocols bgp enforce-first-as A-re0# commit
Quando você verifica a rota novamente, você vê que a rota 198.51.100.17 não está mais passando pelo Roteador A.
Verificação
- Verifique a sessão bgp
- Verifique a rota estática
- Verifique a política de exportação do Prepend
- Verifique se a declaração de enforce-first-as está funcionando
Verifique a sessão bgp
Propósito
Verifique se uma sessão BGP foi estabelecida e com quais vizinhos o roteador estabeleceu uma sessão de peering.
Ação
A partir do modo operacional, execute o comando.show bgp summary
B-re0> show bgp summary Groups: 2 Peers: 2 Down peers: 0 Table Tot Paths Act Paths Suppressed History Damp State Pending inet.0 0 0 0 0 0 0 Peer AS InPkt OutPkt OutQ Flaps Last Up/Dwn State|#Active/Received/Accepted/Damped... 192.0.2.1 65541 367 369 0 0 2:43:57 0/0/0/0 0/0/0/0 198.51.100.2 65543 369 368 0 0 2:44:00 0/0/0/0 0/0/0/0
Significado
A primeira linha mostra o número de grupos configurados e o número de pares que estão para cima ou para baixo. Essa saída mostra que há dois pares, 192,0,2,1 e 198,51,100,2, em alta. A parte da tabela mostra que não há caminhos na tabela inet.0. Podemos ver que o roteador B tem dois pares, 65541 e 65543. Quando a coluna mostra três números separados por slashes, a sessão BGP está ativa.State
Verifique a rota estática
Propósito
Verifique se uma rota estática está sendo exportada para os roteadores B e A do Roteador C.
Ação
A partir do modo operacional, execute o comando.show bgp neighbor
C-re0#> show bgp neighbor Peer: 198.51.100.1+179 AS 65542 Local: 198.51.100.2+62588 AS 65543 Type: External State: Established Flags: <Sync> Last State: OpenConfirm Last Event: RecvKeepAlive Last Error: None Export: [ export-static ]
A partir do modo operacional, execute o comando.show bgp summary
B-re0> show bgp summary Groups: 2 Peers: 2 Down peers: 0 Table Tot Paths Act Paths Suppressed History Damp State Pending inet.0 1 1 0 0 0 0 Peer AS InPkt OutPkt OutQ Flaps Last Up/Dwn State|#Active/Received/Accepted/Damped... 192.0.2.1 65541 8 10 0 0 2:59 0/0/0/0 0/0/0/0 198.51.100.2 65543 10 10 0 0 3:02 1/1/1/0 0/0/0/0
A partir do modo operacional, execute o comando.show route protocol bgp
A-re0> show route protocol bgp inet.0: 49 destinations, 49 routes (49 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 198.51.100.17/29 *[BGP/170] 00:12:35, localpref 100 AS path: 65542 65543 I, validation-state: unverified > to 192.0.2.2 via ge-1/0/0.0 iso.0: 1 destinations, 1 routes (1 active, 0 holddown, 0 hidden) mpls.0: 4 destinations, 4 routes (4 active, 0 holddown, 0 hidden) inet6.0: 2 destinations, 2 routes (2 active, 0 holddown, 0 hidden)
Significado
Com o comando, você pode ver a política de exportação pelo nome.show bgp neighbor
Com o comando, você pode ver que agora existe uma rota na tabela inet.0, mostrando que a tabela aprendeu essa rota.show bgp summary
O comando confirma que o roteador são rotas de aprendizado.show route protocol bgp
Você pode ver a rota e o caminho AS. Observe que no Roteador A podemos ver que o caminho AS é apensado com as ASNs dos roteadores C e B (65543 e 65542).
Verifique a política de exportação do Prepend
Propósito
Verifique se as ASNs estão no caminho AS do roteador que recebe do roteador B.
mostrar bgp vizinho. Lista os roteadores BGP aos quais este roteador está conectado. Mostra com quais vizinhos o roteador estabeleceu sessões de peering.
mostrar resumo bgp. Lista as informações de grupo BGP, peer e estado de sessão. Ajuda a determinar se uma sessão BGP foi estabelecida.
mostrar protocolo de rota bgp. Lista as rotas aprendidas com o BGP. Confirma que o roteador é rotas de aprendizado apenas dos vizinhos desejados.
Ação
A partir do modo operacional, execute o comando.show route protocol bgp
A-re0> show route protocol bgp inet.0: 49 destinations, 49 routes (49 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 198.51.100.17/29 *[BGP/170] 00:00:24, localpref 100 AS path: 65555 65542 65543 I, validation-state: unverified > to 192.0.2.2 via ge-1/0/0.0 iso.0: 1 destinations, 1 routes (1 active, 0 holddown, 0 hidden) mpls.0: 4 destinations, 4 routes (4 active, 0 holddown, 0 hidden) inet6.0: 2 destinations, 2 routes (2 active, 0 holddown, 0 hidden)
Significado
Você pode ver que o 65555 foi pré-preparado para o caminho AS.
Verifique se a declaração de enforce-first-as está funcionando
Propósito
Verifique se o roteador está aprendendo rotas apenas dos vizinhos desejados.
Ação
Verifique a rota 198.51.100.17.
A-re0> show route 198.51.100.17 all detail inet.0: 49 destinations, 49 routes (48 active, 0 holddown, 1 hidden) 198.51.100.17/29 (1 entry, 0 announced) BGP /-101 Next hop type: Router, Next hop index: 581 Address: 0x9db5ad0 Next-hop reference count: 1 Source: 192.0.2.2 Next hop: 192.0.2.2 via ge-1/0/0.0, selected Session Id: 0x141 State: <Hidden Ext> Local AS: 65541 Peer AS: 65542 Age: 1w2d 23:48:47 Validation State: unverified Task: BGP_65542.192.0.2.2 AS path: 65555 65542 65543 I Localpref: 100 Router ID: 10.127.0.2 Hidden reason: fails enforce-first-as check
Se você emitir o comando, as informações da rota não são exibidas.show route
A-re0> show route 198.51.100.17 A-re0>
Significado
A rota estática está oculta porque contém uma ASN não relacionada e a declaração foi configurada.enforce-first-as
Tabela de histórico de alterações
A compatibillidadde com o recurso dependerá da platadorma e versão utilizada. Use o Feature Explorer para saber se o recurso é compatível com sua plataforma.