From ff53390785ad08899e40533d408bfb0c4e34643f Mon Sep 17 00:00:00 2001
From: Maximilian Wilhelm <max@sdn.clinic>
Date: Wed, 4 Jul 2018 17:52:23 +0200
Subject: [PATCH] If we are a route reflector and no ClusterID was set, use our
 RouterID.

Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
---
 protocols/bgp/server/peer.go | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/protocols/bgp/server/peer.go b/protocols/bgp/server/peer.go
index 7e33cd5c..02cf053b 100644
--- a/protocols/bgp/server/peer.go
+++ b/protocols/bgp/server/peer.go
@@ -126,6 +126,12 @@ func newPeer(c config.Peer, rib *locRIB.LocRIB, server *bgpServer) (*peer, error
 		routeReflectorClient: c.RouteReflectorClient,
 		clusterID:            c.RouteReflectorClusterID,
 	}
+
+	// If we are a route reflector and no ClusterID was set, use our RouterID
+	if p.routeReflectorClient && p.clusterID == 0 {
+		p.clusterID = c.RouterID
+	}
+
 	p.fsms = append(p.fsms, NewActiveFSM2(p))
 
 	caps := make(packet.Capabilities, 0)
-- 
GitLab