natesales / pathvector

Declarative routing platform that automates BGP route optimization and control plane configuration with secure and repeatable routing policy.
https://pathvector.io
MIT License
206 stars 26 forks source link

feat: Add peer settings for `next-hop-self-ebgp` and `next-hop-self-ibgp` #194

Closed zachomedia closed 9 months ago

zachomedia commented 11 months ago

According to the Bird docs, next hop self has a few additional choices than just on/off:

next hop self switch|ibgp|ebgp

Always advertise our own local address as a next hop, even in cases where the current Next Hop attribute should be used unchanged. This is sometimes used for routes propagated from EBGP to IBGP when IGP routing does not cover inter-AS links, therefore IP addreses of EBGP neighbors are not resolvable through IGP. Can be enabled for all routes, or just for routes received from IBGP / EBGP neighbors. Default: disabled.

This MR adds support for the ibgp and ebgp variants.

natesales commented 9 months ago

Sorry for the huge delay here. Thanks for the PR!