Skip to content

enhancement: internal iBGP route reflector on control plane nodes#218

Open
qinqon wants to merge 1 commit into
openperouter:mainfrom
qinqon:enhancement-router-reflector
Open

enhancement: internal iBGP route reflector on control plane nodes#218
qinqon wants to merge 1 commit into
openperouter:mainfrom
qinqon:enhancement-router-reflector

Conversation

@qinqon
Copy link
Copy Markdown
Contributor

@qinqon qinqon commented Feb 4, 2026

/kind design

What this PR does / why we need it:

Adds the enhancement document for an internal iBGP Route Reflector running on control plane nodes.

In cloud environments where the ToR does not support EVPN, east/west traffic cannot be distributed via the fabric. This enhancement adds an internal RR so EVPN routes are reflected between router pods and VXLAN data plane goes directly node-to-node, avoiding the ToR.

Design highlights:

  • RR runs as a DaemonSet on control plane nodes (stable, known IPs, no rescheduling)
  • Two modes based on runOnMaster:
    • true: reuse existing router pods + hostcontroller on CP, add RR config via RawFRRConfig
    • false: deploy additional RR-only router pods on CP with a separate Underlay CR (NIC + ASN, no ToR, no EVPN data plane)
  • Client discovery: users manually add CP node IPs as iBGP neighbors (same ASN) in the Underlay CR
  • Inter-RR peering: automatic — RR controllers discover each other on CP nodes
  • bgp listen range on RR side for accepting dynamic clients
  • allowas-in only on eBGP neighbors (template conditional fix needed)
  • No auto-discovery mechanism, no underlay-ips annotation, no hostcontroller cache extension

Special notes for your reviewer:

This is the enhancement document only, no code changes.

Release note:

NONE

Loading
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants