Habilitando o BFD na sessão BGP do Huawei
O BFD é um protocolo Hello que funciona de maneira muito parecida com outros “atributos” de protocolos de roteamento. Basicamente você estabelece uma sessão com seu par e utiliza parâmetros que vão reger o comportamento.
A comunicação só é considerada estabelecida se a comunicação bidirecional estiver funcionando entre os pares. Caso algo aconteça e essa comunicação seja interrompida o status irá mudar para “falhou”.
Você pode definir, por exemplo, que a cada 15 segundos (mais ou menos) a comunicação de verificação aconteça. É importante estar ciente de que isso pode ocasionar problemas para o CPU.
No caso de uso bem específico com o BGP a nossa intenção é fazer com que a convergência da Operadora A que está com Peer DOWN aconteça no menor tempo possível para a Operadora B. Aqui no exemplo configurei o tempo de 5 segundos por 3 vezes, se a verificação falhar o BFD irá atuar para que a convergência aconteça da maneira menos impactante para a empresa.
Caso você queira entender melhor o protocolo e como ele funciona, recomendo muito que leia a RFC 5880 e RFC 5881.
RFC 5880: https://datatracker.ietf.org/doc/html/rfc5880
RFC 5881: https://www.rfc-editor.org/rfc/rfc5881
Documentação da Huawei: https://support.huawei.com/enterprise/en/doc/EDOC1000178171/14038c9c/example-for-configuring-bfd-for-bgp
Configuração do BFD para IPv4 e IPv6
O método de configuração e lógica para as sessões em IPv4 e IPv6 são os mesmos, somente alterando o Endereço IP.
1 – Configure o Peer BFD com o mesmo IP utilizado para estabelecer a sessão BGP com sua Operadora.
198.51.100.2 -> IP que fecha o Peer BGP
1 – Habilite o BFD em modo global
[~Roteador-Erick] bfd
2 – Entre nas configurações do BGP
# bgp 65555
3 – Se não lembrar os IPs das sessões faça um display.
IPv4
[~Roteador-Erick-bgp] dis bgp peer
IPv6
[~Roteador-Erick-bgp] dis bgp ipv6 peer
4 – Agora que você sabe os IPs, vamos configurar o BFD em cada sessão
Habilite o BFD na sessão
[~Roteador-Erick-bgp] peer 198.51.100.2 bfd enable
Configure o tempo de verificação
min-tx-interval: Intervalo mínimo transmitido
min-rx-interval: Intervalo mínimo recebido
detect-multiplier: Quantidade em que os intervalos de tempo serão multiplicados, 5000 equivalem a 5 segundos por 3 vezes, totalizando 15 segundos para convergir. Por padrão o valor é 3 mas você pode aumentar ou diminuir os intervalos e a multiplicação, mas fique ciente que isso pode impactar diretamente sua operação.
[~Roteador-Erick-bgp] peer 198.51.100.2 bfd min-tx-interval 5000 min-rx-interval 5000 detect-multiplier 3
5 – Aplique as novas configurações e salve.
[~Roteador-Erick] commit
[~Roteador-Erick] run save
6 – Verifique se as sessẽos BFD foram estabelecidas com sucesso, o State precisa estar como Up
[~Roteador-Erick] dis bfd session all
Saída do comando
(w): State in WTR
(*): State is invalid
--------------------------------------------------------------------------------
Local Remote PeerIpAddr State Type InterfaceName
--------------------------------------------------------------------------------
16385 16448 2001:db8::1
Up D_IP_PEER -
16386 16447 198.51.100.2 Up D_IP_PEER -
--------------------------------------------------------------------------------
Total UP/DOWN Session Number : 2/0
Para críticas, dúvidas e sugestões, envie um e-mail para erick{“arrob4”}erickandrade.com.br.