next-hop self

Protocolo BGP: Next-Hop Self

Neste artigo, vou explicar o funcionamento do parâmetro Next-Hop Self, um mecanismo essencial no protocolo BGP (Border Gateway Protocol). Esse recurso é amplamente utilizado em redes que utilizam sessões IBGP e EBGP, garantindo que o roteamento funcione de forma correta em cenários mais complexos.

O parâmetro Next-Hop Self foi introduzido na RFC 6774 e desempenha um papel fundamental na propagação de rotas dentro de um Sistema Autônomo (AS).

Exemplo prático: quando o Next-Hop Self é necessário?

Vamos imaginar o seguinte cenário:

O roteador R1 do ASN 65001 estabelece uma sessão EBGP com o roteador R1 do ASN 65200.

O AS65001-R1 anuncia suas rotas para o AS65200-R1.

Se testarmos a conectividade para uma dessas rotas a partir do R1 do AS65200, conseguiremos chegar ao destino com sucesso. Isso acontece porque o Next-Hop (próximo salto) é um IP diretamente conectado.

No entanto, se tentarmos o mesmo teste partindo do R2 do AS65200, não conseguiremos acessar essas rotas.

Por que isso acontece?

O problema ocorre porque o Next-Hop para essas rotas é o IP da interface entre AS65001-R1 e AS65200-R1. O roteador R2, que está dentro do AS65200, não possui rota para esse IP diretamente conectado — e, portanto, não sabe como chegar até o destino final.

Como o Next-Hop Self resolve o problema?

Quando configuramos sessões IBGP entre roteadores dentro do mesmo AS (neste caso, o AS65200), é necessário ativar o parâmetro Next-Hop Self nos roteadores que receberão rotas de sessões EBGP.

Podemos seguir o exemplo abaixo em plataformas como Cisco IOS, outras plataformas seguem um padrão parecido.

router bgp 65200
	address-family ipv4 
		neighbor 192.168.0.2 next-hop-self

O que isso faz?

Ao ativar o Next-Hop Self, o roteador altera o valor do atributo Next-Hop nas rotas que repassa para seus vizinhos IBGP. Em vez de manter o IP original do próximo salto (no caso, a interface do AS65001), ele substitui esse valor pelo seu próprio IP.

Aplicando ao nosso exemplo:

O R1 do AS65200 recebe rotas via EBGP de R1 do AS65001.

Com o Next-Hop Self ativado, ao repassar essas rotas para o R2 do AS65200, o R1 usa o seu próprio IP como Next-Hop.

Agora, o R2 sabe como alcançar o próximo salto e consegue encaminhar os pacotes corretamente.

Sempre que seu roteador estiver recebendo rotas de um vizinho EBGP e repassando para outros roteadores internos, lembre-se de configurar o Next-Hop Self nos vizinhos internos. Isso evita problemas de roteamento e mantém a consistência da tabela de rotas em todo o AS.

Back To Top