[GTER] BGP Excessively Prepends Quagga

Uesley Correa uesleycorrea at gmail.com
Mon Oct 2 10:11:42 -03 2017


Informação importante:

Um bug no Quagga faz com que as conexões iBGP caiam devido a anúncios
recebidos com prepends excessivos (geralmente, um número próximo a 50
prepends). Ele foi amplamente tratado aqui (
https://lists.quagga.net/pipermail/quagga-users/2017-September/014830.html)
e aqui (https://mailman.nanog.org/pipermail/nanog/2017-September/092536.html).
O ASN 262197 exportou muitos prepends na tabela global e isso causou o
estouro do limite de path no Quagga (
https://stat.ripe.net/data/bgplay/data.json?resource=AS262197&starttime=1504760781&rrcs=1).
Como muitos sabem, o VyOS utiliza Quagga como engine de roteamento e feitos
os testes, foi descoberto que o VyOS também sofre o mesmo bug nesse
cenário. Seguem abaixo as regras para filtrar prepend's excessivos em VyOS.
Compartilhem essas regras com os seus amigos que utilizarem o cenário de
iBGP para que evitem ter problemas de queda / instabilidade de sessão. Caso
tenham regras de outros soft-routers que utilizam Quagga como engine, podem
colaborar com o compartilhamento

vyos at vyos# show policy route-map
route-map FiltraPrepend {
rule 10 {
action deny
match {
as-path PrependExcessivo
}
}
rule 100 {
action permit
}
}

vyos at vyos# show policy as-path-list
as-path-list PrependExcessivo {
rule 10 {
action permit
regex ([0-9]+)_\1_\1_\1_\1_
}
}

Onde a expressão \1 significa a quantidade de vezes que o regex será aceito
(ou seja, no cenário acima, 4 vezes). Altere para o valor que você achar
necessário.


Uesley Corrêa - Analista de Telecomunicações
Instrutor Network Education
CEO Telecom Conectividade



More information about the gter mailing list