Entendendo as comunidades BGP, comunidades estendidas e grandes comunidades como condições de correspondência de política de roteamento
Uma comunidade BGP é um grupo de destinos que compartilham uma propriedade comum. As informações da comunidade são incluídas como um atributo do caminho nas mensagens de atualização do BGP. Essas informações identificam os membros da comunidade e permitem que você execute ações em um grupo sem precisar elaborar cada membro. Você pode usar atributos de comunidade e comunidades estendidas para disparar decisões de roteamento, como aceitação, rejeição, preferência ou redistribuição.
Você pode atribuir tags de comunidade a rotas não BGP por meio de configuração (para rotas estáticas, agregadas ou geradas) ou de uma política de roteamento de importação. Essas tags podem ser correspondidas quando o BGP exporta as rotas.
Um valor de comunidade é um campo de 32 bits dividido em duas seções principais. Os primeiros 16 bits do valor codificam o número AS da rede que originou a comunidade, enquanto os últimos 16 bits carregam um número exclusivo atribuído pelo AS. Esse sistema tenta garantir um conjunto globalmente único de valores comunitários para cada SA na Internet. O Junos OS usa uma notação de as-number:community-value, em que cada valor é um número decimal. Os valores de AS de 0 e 65.535 são reservados, assim como todos os valores de comunidade dentro desses números de AS. Cada comunidade, ou conjunto de comunidades, recebe um nome dentro da [edit policy-options] hierarquia de configuração. O nome da comunidade a identifica exclusivamente para o dispositivo de roteamento e serve como o método pelo qual as rotas são categorizadas. Por exemplo, uma rota com um valor de comunidade de 64510:1111 pode pertencer à comunidade chamada AS64510-routes. O nome da comunidade também é usado em uma política de roteamento como um critério de correspondência ou como uma ação. A sintaxe de comando para criar uma comunidade é: policy-options community name members [community-ids]. Eles community-ids são um único valor de comunidade ou vários valores de comunidade. Quando mais de um valor é atribuído a um nome de comunidade, o dispositivo de roteamento interpreta isso como um AND lógico dos valores da comunidade. Em outras palavras, uma rota deve ter todos os valores configurados antes de receber o nome da comunidade.
O atributo de comunidade regular é de quatro octetos. Os aprimoramentos de rede, como VPNs, têm requisitos de funcionalidade que podem ser atendidos por um atributo, como uma comunidade. No entanto, o valor da comunidade de 4 octetos não fornece expansão e flexibilidade suficientes para acomodar os requisitos de VPN. Isso leva à criação de comunidades estendidas. Uma comunidade estendida é um valor de 8 octetos que também é dividido em duas seções principais. Os primeiros 2 octetos da comunidade codificam um campo de tipo, enquanto os últimos 6 octetos carregam um conjunto exclusivo de dados em um formato definido pelo campo de tipo. As comunidades estendidas fornecem uma gama maior para agrupar ou categorizar comunidades.
O formato de atributo de comunidades estendidas do BGP tem três campos: type:administrator:assigned-number. O dispositivo de roteamento espera que você use as palavras target ou represente origin o campo de tipo. O campo de administrador usa um número decimal para o AS ou um endereço IPv4, enquanto o campo de número atribuído espera um número decimal não maior que o tamanho do campo (65.535 para 2 octetos ou 4.294.967.295 para 4 octetos).
Ao especificar IDs de comunidade para atributos de comunidade padrão e estendidos, você pode usar expressões regulares no estilo UNIX. A única exceção é para políticas de importação de VPN (vrf-import), que não dão suporte a expressões regulares para o atributo de comunidades estendidas.
Os atributos de comunidades BGP regulares são um atributo de comprimento variável que consiste em um conjunto de um ou mais valores de 4 bytes que foram divididos em valores de 16 bits. A palavra mais significativa é interpretada como um número AS e a palavra menos significativa é um valor definido localmente atribuído pelo operador do AS. Desde a adoção de ASNs de 4 bytes, a comunidade regular de BGP de 4 bytes e a comunidade estendida de BGP de 6 bytes não podem mais oferecer suporte a atributos de comunidade BGP. Os operadores geralmente codificam o número AS na parte local da comunidade BGP, o que significa que, às vezes, o formato da comunidade é ASN:ASN. Com o ASN de 4 bytes, você precisa de 8 bytes para codificá-lo. Embora a comunidade estendida do BGP permita que um AS de 4 bytes seja codificado como o campo de administrador global, o campo de administrador local tem apenas 2 bytes de espaço disponível. Assim, o atributo de comunidade estendida de 6 bytes também é inadequado. Para superar isso, o Junos OS permite que você configure o atributo do caminho transitivo opcional — uma grande comunidade BGP de 12 bytes que fornece o valor mais significativo de 4 bytes para codificar o número do sistema autônomo como o administrador global e os dois números atribuídos de 4 bytes restantes para codificar os valores locais, conforme definido no RFC 8092. Você pode configurar a grande comunidade BGP nos [edit policy-options community community-name members] níveis de hierarquia e [edit routing-options static route ip-address community] . O formato de atributos de comunidade grande BGP tem quatro campos: large:global administrator:assigned number:assigned number.
A comunidade estendida específica do endereço unicast BGP IPv6 é codificada como um conjunto de valor de 20 bytes. O valor de 20 bytes é interpretado no seguinte formato:
-
Os 2 bytes mais significativos codificam o valor Tipo e Subtipo (valor alto (byte mais significativo) e Valor baixo (segundo byte mais significativo)).
-
Os próximos 16 bytes codificam o endereço unicast IPv6. É o administrador global no RFC da IETF.
-
Os últimos 2 bytes codificam os valores locais definidos pelo operador. É administrador local no RFC da IETF.
O endereço IPv6 unicast atributos de comunidade específicos BGP estendidos são representados por uma palavra-chave ipv6-target, ipv6-originou ipv6-extended seguidos por IPv6 e administrador local separados por <, > e :.
O comprimento do valor do atributo de comunidades grandes BGP deve ser um múltiplo diferente de zero de 12.