As 8 comunidades BGP mais comuns
o que é uma comunidade BGP?
uma comunidade BGP é um atributo BGP opcional e transitivo que é reconhecido e passado para outros pares BGP. Você pode ver uma comunidade BGP como uma tag anexada às rotas BGP trocadas entre dois pares BGP.
para começar, vamos ver como é uma comunidade BGP definida como uma rota em uma mensagem de atualização. Considere esta rede simples, onde R111 anuncia a rota 10.10.10.0 / 24 para o peer as 11 BGP. R111 define a comunidade 1: 110 nas rotas que anuncia para R11.
ao olhar para a mensagem de atualização BGP de R111 (1.1.3.2) para R11 (1.1.3.1), podemos ver vários atributos BGP junto com seu valor. Um desses atributos BGP é a comunidade. Lembre-se, este atributo é opcional e está aparecendo porque foi definido na rota antes de ser anunciado:
Quando verificamos o percurso no R11 (porque R11 aceitou a rota e também não é executada qualquer operação na comunidade), podemos ver o percurso tendo o 1:110 comunidade:
R11#show ip bg 10.10.10.0/24BGP routing table entry for 10.10.10.0/24, version 2Paths: (1 available, best #1, table default) Advertised to update-groups: 1 Refresh Epoch 1 111 1.1.3.2 from 1.1.3.2 (10.10.10.1) Origin IGP, metric 0, localpref 100, valid, external, best Community: 1:110 rx pathid: 0, tx pathid: 0x0R11#
Agora que você já viu o que um BGP comunidade parece dentro de uma mensagem de Atualização, vamos começar a explorar os mais avançados conceitos em torno deste atributo.
conceitos avançados da Comunidade BGP
uma comunidade é um valor de 32 bits dividido em duas seções de 16 bits. Os primeiros 16 bits codificam o número AS que originou a comunidade e os últimos 16 bits representam um número exclusivo atribuído pelo AS. Como cada número AS é único, cada comunidade também é única na internet. Isso significa que um AS com o ASN 9999 (que em hex é 0x270f) pode ter comunidades na faixa 0x270F0000 – 0x270FFFFF.
comunidades BGP bem conhecidas
a seguir estão algumas comunidades bem conhecidas que devem ser reconhecidas por todas as implementações BGP conscientes da comunidade.
comunidade sem publicidade
quando uma comunidade sem publicidade é anexada a uma rota, o alto-falante BGP não anunciará a rota para nenhum par BGP interno ou externo.
o exemplo a seguir mostra uma rota sem publicidade (10.10.10.0/24) não sendo anunciada pelo R1 aos pares R11, R12, R111.
Não-Exportação Comunidade
Quando um Não-Exportação de comunidade é anexado a uma rota, o roteador não anunciar a rota externa de pares-a interna pares.
o exemplo a seguir mostra uma rota sem exportação (10.10.10.0/24) não sendo anunciada por R1, R11 ou R12 para seu par externo, R111.
neste caso específico, R1 não vai anunciar a rota para R111, apenas para R11 e R12, porque esses dois são BGP interno pares. Posteriormente, R11 e R12 não anunciarão nenhuma rota para R111 porque é um par BGP externo.
Local as Community
para evitar quaisquer loops de roteamento BGP, existe uma regra importante em relação aos vizinhos BGP internos: um vizinho IBGP não pode anunciar uma rota para um vizinho IBGP se recebeu essa rota de outro vizinho IBGP.
o exemplo a seguir mostra uma rota Local as (10.10.10.0 / 24) não sendo anunciada entre vizinhos IBGP (R11 e R111) dentro do local AS.
Mais exatamente, R11 anuncia a rota para R22, mas R22 não anunciar a rota para R111, com base na regra mencionada acima. Para que o R111 tenha a rota, existem várias soluções, como criar uma malha completa de sessões IBGP entre os roteadores do AS11 ou dividir o AS 11 em um sub-As dentro de uma confederação.
O mundo fora de AS11 tem conhecimento de COMO 1000 e AS1001. Isso permite que o R111 receba a rota 10.10.10.0/24 sem ter peering BGP de malha completa. A comunidade Local-AS não anuncia rotas fora do sub-AS.
comunidade de desligamento Graciosa
a comunidade Graceful_SHUTDOWN (65535:0) é usada para desligar suavemente os caminhos que um roteador pode usar quando seu roteador peer está prestes a ser desligado intencionalmente. Por exemplo, suponha que R111 esteja usando R11 para alcançar a sub-rede 10.10.10.0 / 24, mas R11 diminuirá para que uma reinicialização seja atualizada:
uma Vez R11 anuncia esta comunidade, R111 responde por comutação de tráfego sobre a R12, com o mínimo de impacto:
Comunidade
Uma extensa comunidade é um valor de 8 bytes que é dividido em duas seções principais:
- os 2 Primeiros bytes: Especifica o tipo de comunidade
- Últimos 6 bytes: Fornece informações exclusivas específicas para o tipo de comunidade
uma comunidade estendida tem três campos:tipo, administrador, número atribuído (tipo:administrador: número atribuído). Com base no valor do byte de alta ordem no campo Tipo, o campo administrador pode ser um AS ou um endereço IP.
o aplicativo mais conhecido para comunidades estendidas está no MPLS-VPN, que faz uso de duas comunidades estendidas:
- comunidade de destino de rota: identifica os roteadores que podem receber um conjunto específico de rotas.
- comunidade de origem da rota: Identifica os roteadores que injetam um conjunto específico de rotas no BGP.
um roteamento Virtual e encaminhamento (VRF) é uma tabela de roteamento virtual que pode ter suas próprias políticas de roteamento separadas separadas da tabela de roteamento global ou de outros VRFs. Basicamente, você pode conectar vários sites de um cliente e ter uma tabela de roteamento separada (VRF) em toda a rede apenas para esse cliente e implementar políticas de roteamento diferentes das políticas de roteamento de outro cliente.
esta separação é possível devido a Extensões BGP multiprotocolo e MPLS.
comunidade de destino de rota
a comunidade de destino de rota é usada em ambientes MPLS VPN para separar duas tabelas de roteamento de clientes, conforme mostrado no diagrama a seguir:
neste caso específico, VRF Cliente VERMELHO está presente apenas em R1 a R12 e FRV Cliente AZUL está presente apenas em R11 e R22, mas poderia ter sido presente em todos os quatro roteadores.
quando uma rota é exportada através do BGP do VRF Red, a rota-alvo 100:100 é atribuída à rota via export. Quando a rota atinge R12, ela importa a rota de R1 para que os sites conectados a R1 e R12 possam se comunicar.
comunidade de origem de rota
em um ambiente VPN MPLS, a comunidade de origem de rota é usada para identificar de onde as rotas se originaram, para que a readvertisement de volta a esse site seja evitada.
nesse caso, quando o PE1 recebe a rota do CE1, além do destino da rota anexado à rota (usando export), ele também anexa a comunidade de origem da rota.
a rota chega ao PE2, mas o PE2 não a anuncia ao CE2, pois sabe que veio do site.
grandes comunidades
uma grande comunidade é uma comunidade BGP de 12 bytes que foi desenvolvida quando os 4 bytes começaram a ser alocados. Como cada uma das Comunidades padrão ou estendidas usa valores de 2 bytes para o AS, UM 4-byte AS não se encaixaria no valor padrão de 2 bytes.
The Large community is displayed as follows:
32-bit-ASN:32-bit-value:32-bit-value.
BGP best Path Selection Algorithm
como você viu, as comunidades BGP têm vários aplicativos. Eles são importantes para marcar rotas, manipular tráfego e executar várias ações nos atributos BGP de rotas que correspondem a comunidades específicas.
sempre que um roteador deve determinar qual caminho de muitos levar para um determinado destino, ele deve seguir o algoritmo de seleção de melhor caminho BGP, que avalia os atributos BGP. Você pode ler mais sobre o melhor algoritmo de seleção de caminho BGP em nosso artigo anterior, atributos BGP.
exemplos da Comunidade BGP
esta seção demonstra como uma comunidade BGP anexada a uma rota pode influenciar o tráfego de upload e download de e para hosts desse prefixo.
Upload
existem várias maneiras de influenciar o caminho de tráfego de upload, mas o mais comum é fazer uso da preferência local.
como você viu no artigo BGP Attributes, quanto maior o valor da preferência local por uma rota, maior a probabilidade de que o caminho seja escolhido pelo algoritmo de seleção de melhor caminho BGP.
na ilustração a seguir, R11 e R12 são configurados para:
- defina a preferência local para 205 se eles receberem uma rota com a comunidade 1:205.
- defina a preferência local para 210 se eles receberem uma rota com a comunidade 1:210.
ambos os roteadores anunciam as rotas para R1, que deve decidir qual caminho usar. Nesse caso, R1 usa o caminho de R11, o que significa que o tráfego fluirá assim:
saída do roteador de Upload
R1#sh ip bgp 10.10.10.0BGP routing table entry for 10.10.10.0/24, version 2Paths: (2 available, best #1, table default) Not advertised to any peer Refresh Epoch 1 111 1.1.3.2 (metric 20) from 1.1.1.2 (1.1.100.11) Origin IGP, metric 0, localpref 210, valid, internal, best Community: 1:210 rx pathid: 0, tx pathid: 0x0 Refresh Epoch 1 111 1.1.4.2 (metric 20) from 1.1.2.2 (1.1.100.12) Origin IGP, metric 0, localpref 205, valid, internal Community: 1:205 rx pathid: 0, tx pathid: 0R1#
baixar
uma maneira comum de influenciar o seu caminho de tráfego de download (ou como outros enviam tráfego para o seu AS), é executar as_path prepend para o seu AS. Quanto maior o AS_PATH, menor a probabilidade de que o caminho seja selecionado pelo melhor algoritmo de seleção de caminho.
na próxima ilustração, como 1 prefere que o tráfego encaminhado de AS 111 é enviado de R12.
como 111 (por causa de R111) tem uma política afirmando que se como 1 anuncia um prefixo com a comunidade 1:1, Execute um prepend as_path. Portanto, R111 define o AS_PATH da rota como . Se a rota estiver chegando com a comunidade de 1:3, execute três as_path prepends ().
R111 recebe os dois caminhos e deve agir com base na comunidade que acompanham esses caminhos. Como prefere a rota de R12, o tráfego flui assim:
baixar saída do roteador
R111#sh ip bgp 10.10.10.0/24BGP routing table entry for 10.10.10.0/24, version 4Paths: (2 available, best #2, table default) Advertised to update-groups: 6 Refresh Epoch 2 1 1 1 1 1.1.3.1 from 1.1.3.1 (1.1.100.11) Origin IGP, metric 100, localpref 100, valid, external Community: 1:3 rx pathid: 0, tx pathid: 0 Refresh Epoch 2 1 1 1.1.4.1 from 1.1.4.1 (1.1.100.12) Origin IGP, localpref 100, valid, external, best Community: 1:1 rx pathid: 0, tx pathid: 0x0R111#
resumo
neste artigo, discutimos as comunidades BGP mais comuns disponíveis para o atributo BGP Community e como elas são usadas para direcionar o tráfego. Embora as comunidades BGP sejam atributos opcionais, elas são poderosas para roteamento de tráfego interno e externo. Você pode até usá-los para preparar o redirecionamento de tráfego para reinicializações e desligamentos planejados.
para obter mais informações sobre conceitos de BGP, confira o guia do administrador de rede.
Leave a Reply