Resumo
- BGP Confederation apresenta vários Member-AS como um único AS Confederation Identifier. AS_CONFED_SEQUENCE e AS_CONFED_SET preservam o percurso interno, mas são obrigatoriamente retirados antes do anúncio a um vizinho externo.
- A remoção reduz complexidade para a Internet; não comprova unidade operacional. Membership, LOCAL_PREF, MED, NEXT_HOP, candidate visibility e route reflection podem mudar reachability sem qualquer alteração no AS_PATH público.
- Leadership deve autorizar essa compressão apenas com um ledger anterior à sanitização, owner em cada fronteira, prova de RIB/FIB e packets e um rollback que restaure identidade, policy e estado de rota.
À 01h40, o router Delta entra na última etapa de uma reorganização. Ele deixa Member-AS 65021 e passa a 65031, ambos integrantes da confederação 64500. A intenção é legítima: transit, customers e parceiros não precisam reconfigurar BGP porque a empresa redesenhou seus domínios internos.
O change system confirma a aplicação. Sessions externas estão verdes. O collector ainda mostra 64500; a autorização pública de origin não mudou. Para o dashboard executivo, a migração preservou continuidade.
O neighbor Echo conserva a definição antiga. Delta envia OPEN como 65031; Echo espera 65021. Uma implementação não forma a adjacency. Por outra saída, uma rota sobrevive com NEXT_HOP que o novo IGP não resolve. Em outro ponto, a mudança do candidate set altera a comparação de MED. O customer peer continua Established enquanto a rota útil não chega à FIB.
O incidente é sintético, mas o mecanismo é normativo. RFC 5065 manda retirar o histórico de Member-AS no border externo. O caminho público não perdeu informação acidentalmente; recebeu a visão reduzida que o protocolo promete. A falha de governance começa quando a organização tenta usar essa visão para provar fatos internos que ela foi criada para esconder.
Um nome público não elimina domínios internos
AS Confederation Identifier é o ASN que representa a confederação perante speakers de fora. Cada Member-AS é um domínio interno identificado por Member-AS Number. Em transações externas, o router usa o identifier no OPEN e no AS_SEQUENCE; entre membros, usa o número interno.
Links entre membros têm mecânica EBGP, mas determinadas decisões tratam as rotas como internas à mesma confederação. A arquitetura reduz o full mesh do grande AS e permite dividir policy por região ou função. Ainda assim, cada member mantém seu próprio mesh ou RR topology, possivelmente seu IGP e sua equipe.
O ASN externo fornece a coordenação mínima: diz quem apresenta a rota. Não informa quem a aceitou, quem definiu LOCAL_PREF, onde NEXT_HOP é alcançável nem qual hardware encaminha packets. Identidade pública e autoridade operacional são camadas diferentes.
A sequência existe até o border
AS_CONFED_SEQUENCE lista em ordem os Member-AS atravessados; AS_CONFED_SET guarda um conjunto sem ordem associado a informação agregada. Ao anunciar para outro membro, o speaker acrescenta seu número à sequência.
O histórico impede loops. Se o router encontra seu próprio Member-AS no segment, rejeita a rota como retorno. Se encontra o próprio Confederation Identifier no caminho comum, trata-o como o AS local.
Ao exportar para fora, o border remove todos os AS_CONFED segments e então acrescenta o identifier como AS_SEQUENCE normal. RFC 6793 também proíbe esses segments em AS4_PATH. A transição four-octet não deve revelar o percurso interno.
Assim, o collector conhece AS 64500, mas não consegue reconstruir 65021, 65017 ou 65009. A compressão é correta para external policy. Para investigação interna, o último path antes da sanitização precisa ser preservado localmente.
Membership é configuração bilateral
Um desenho não cria adjacency. Os dois lados precisam concordar sobre local AS, peer AS e confederação. A documentação Juniper atual informa que neighbors em desacordo sobre a pertença não formam adjacency.
RFC 5065 exige AS_CONFED_SEQUENCE no início da rota vinda de outro Member-AS e proíbe enviar esses segments a um externo. Todos os participantes internos devem entendê-los. Receber um segment confederado de fora constitui AS_PATH malformado.
RFC 7606 normalmente aplica treat-as-withdraw ao AS_PATH malformado. A session pode continuar, mas os NLRI afetados são retirados. Isso reduz blast radius e, ao mesmo tempo, separa session health de route health. O proof chain deve verificar configuração, OPEN, segment, policy, RIB, recursion, FIB e packets.
EBGP por fora da sessão, interno na seleção
Rota de outro membro é tratada como internal no passo IBGP-versus-EBGP. CONFED_SEQUENCE e CONFED_SET não contam no AS_PATH length. LOCAL_PREF pode atravessar members; NEXT_HOP e MED podem permanecer iguais.
Se os membros compartilham IGP, o next hop preservado talvez seja alcançável. Com IGPs independentes, ele pode falhar; RFC 5065 admite policy para alterá-lo. Uma rota aceita por BGP pode nunca ser instalada.
MED normalmente é comparado ignorando os segments confederados e olhando o primeiro AS_SEQUENCE comum. Implementações podem oferecer alternativas. Quando a migração muda candidates visíveis, muda também a decisão, mesmo que os atributos públicos permaneçam iguais.
O runbook precisa registrar por família a policy de attributes, o scope de next hop, a comparação MED, os candidate sources e o owner. O rótulo “confed EBGP” não contém esse contrato.
Oscilação escondida atrás do caminho estável
RFC 5065 alerta para duplicates, desperdício, flaps e convergence delay. Confederations e route reflectors também podem mostrar candidatos distintos a decision points diferentes. Com certos MED, o persistent route oscillation de RFC 3345 torna-se possível.
Um node escolhe A e deixa de propagar B; a ausência de B muda a escolha seguinte; essa escolha faz B reaparecer. Cada decisão local pode obedecer às regras e ainda assim o sistema não converge. O collector externo vê somente o winner sanitizado.
IGP metrics alinhadas à topology, tie-break consistente, filtros de duplicate e candidate distribution mais completa ajudam em situações específicas. A prova real preserva todos os candidatos, MED comparáveis, reject reasons e topology epoch.
Private ASN exige registro de colisão
RFC 6996 reserva 64512–65534 e 4200000000–4294967294 para private use. Muitos operadores usam esses valores como Member-AS porque os segments somem no border. RFC 5065 não exige que o número seja privado.
Duas redes isoladas podem usar 65021. Uma merger ou interconnect aproxima os scopes e transforma a repetição em conflito para loop detection, filters, logging e ownership. O inventário deve relacionar número, owner, região, IGP, RR cluster, AFI/SAFI, four-octet capability e retirement.
remove-private não é a sanitização da confederação. Juniper documenta que ele atua depois que os member segments já foram removidos. São controles diferentes e precisam de readback separado.
Evidência antes da remoção
Por adjacency e AFI/SAFI, guarde local member, peer esperado, identifier, OPEN observado, capabilities, raw AS_PATH, policy version, LOCAL_PREF, MED, NEXT_HOP, best-path reason e error action.
Ligue pre/post-policy Adj-RIB-In, Loc-RIB candidates, pre/post-policy Adj-RIB-Out para o próximo member e o export externo sanitizado. Hashes de topology e policy associam a decisão ao estado executado.
Depois verifique recursion, FIB/ASIC e packet path. Segment correto não prova next-hop reachability; FIB presente não prova egress pretendido. O collector confirma a declaração externa, não substitui os witnesses internos.
Alertas devem capturar OPEN divergente, confed segment externo, segment ausente entre members, collision, treat-as-withdraw com session viva, best-path change sem mudança pública e ciclos repetidos de MED.
Migrar o número como protocolo
Member-AS move altera path prepend, loop identity, policy match, telemetry, peer classification e possivelmente RR domain. O old-to-new map cobre routers, sessions, policies, communities, monitoring, collectors e owners.
O canary limita-se a uma fronteira redundante, uma AFI/SAFI e prefixes controlados. Compara OPEN, segments, candidates, selection, recursion, FIB e packets em ambas as direções, com janela suficiente para MED cycles e efeitos atrasados de reflection.
Rollback restaura number, membership list, peer type, policy, RR relationship, labels e route state. Também define limpeza de stale routes. Voltar apenas o texto da configuração não demonstra recuperação.
Briefing para membros
Contexto aprofundado do perfil
Faça login com o nível de assinatura correto para desbloquear o briefing completo e as notas das fontes.
Apenas para Strategic Circle
Strategic Circle
Aberto a todos os leitores. Desbloqueie Briefings de perfil após se inscrever e fazer login.
Junte-se ao Strategic CircleSomente para Leadership Alliance
Leadership Alliance
Para proprietários e gestores qualificados de ativos de PI; faça login para desbloquear os briefings da Leadership Alliance.
Junte-se ao Leadership Alliance
