BGP flapping sur Calico avec des routes massives

Posté par zfabre le 10/05/2026
RÉSOLU

zfabre

Membre depuis le 13/03/2025

actif

jsais pas ce qui se passe depuis ce matin mais mes sessions bgp calico arretent pas de tomber dès quon depasse les 1000 routes par node

on est sur du bare metal avec des juniper en face et bird cote nodes. ca flap toutes les 5 minutes et les logs bird sont pas clairs du tout

jai rien change sur la conf calico recemment donc si quelquun a une idee je prends

Commentaires

plemoine

Membre depuis le 11/07/2024

mec regarde tes hold timers dans bird. si ca flap sous la charge cest souvent que les keepalives arrivent pas a passer a cause de la congestion ou dun scheduler qui galere

isabelle57

Membre depuis le 26/08/2024

fais un tcpdump sur le port 179 pendant que ca tombe. check si tu vois des paquets fragmented. si tes updates bgp sont trop gros et que t'as un mismatch mtu ca pardonne pas

zfabre

Membre depuis le 13/03/2025

actif

jai sorti ca des logs bird

2024-05-12 10:12:45 <INFO> Neighbor 10.0.0.1: BGP Error: Hold timer expired
2024-05-12 10:12:45 <INFO> Neighbor 10.0.0.1: State changed from ESTABLISHED to IDLE

pour la mtu on est a 1500 partout cest hyper standard

plemoine

Membre depuis le 11/07/2024

1500 partout cest ce que tout le monde dit et cest jamais vrai. verifie ton interface vlan sur le juniper et la mtu de ton interface physique sur les nodes

isabelle57

Membre depuis le 26/08/2024

si cest calico check ton encapsulation. si t'as du ipip ou vxlan ca bouffe de la place. si t'as 1500 sur eth0 tes paquets de 1500 passeront jamais avec l'overhead

zfabre

Membre depuis le 13/03/2025

actif

on fait pas dencap on est en direct routing bgp pur. jai check le juniper la mtu est a 1500 sur le port. cote node cest 1500 aussi

plemoine

Membre depuis le 11/07/2024

les updates bgp peuvent etre gros. lance cette commande voir si tu droppes des paquets avec le bit df

ping -M do -s 1472 10.0.0.1

zfabre

Membre depuis le 13/03/2025

actif

putain ca passe pas avec 1472. ca me dit frag needed. ca marche que a 1460

isabelle57

Membre depuis le 26/08/2024

voila ton probleme. ton switch entre les deux doit avoir une mtu un peu plus basse ou un header qui traine quelque part. ton juniper doit dropper les fragments bgp par secu

plemoine

Membre depuis le 11/07/2024

fais gaffe aussi au filtrage icmp. si tu bloques le type 3 code 4 le pmtu discovery marche pas et bgp s'effondre des que le paquet est trop gros

zfabre

Membre depuis le 13/03/2025

actif

jai trouve. un switch de distrib avait une mtu a 1500 mais incluait pas les tags vlan dans le calcul alors que les nodes envoient du double tag. jai passe le switch a 9000 pour etre tranquille

isabelle57

Membre depuis le 26/08/2024

9000 cest bourrin mais ca regle le souci. verifie quand meme tes retransmissions tcp sur le port 179 avec netstat

plemoine

Membre depuis le 11/07/2024

maintenant que t'as de la marge check si calico felix arrete de gueuler dans les logs. ca devrait etre beaucoup plus stable

zfabre

Membre depuis le 13/03/2025

actif

plus aucun flap depuis 1h. les 2000 routes sont montees direct sans broncher. cetait bien cette histoire de mtu sur le switch de transit. merci les gars

Laisser une réponse

Vous devez être connecté pour poster un message !

Rejoindre la communauté

Recevoir les derniers articles gratuitement en créant un compte !

S'inscrire