From f2ad89fe93c2f7c73b6e7ffaa5c19b9b87c044db Mon Sep 17 00:00:00 2001 From: Abhishek Kondur Date: Mon, 13 Feb 2023 19:54:38 +0400 Subject: [PATCH] add routes for all ext clients in the network --- logic/peers.go | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/logic/peers.go b/logic/peers.go index 6ee93534..482d5e20 100644 --- a/logic/peers.go +++ b/logic/peers.go @@ -395,7 +395,21 @@ func GetPeerUpdateForHost(host *models.Host) (models.HostPeerUpdate, error) { } peerConfig.AllowedIPs = allowedips if node.IsIngressGateway || node.IsEgressGateway { - + if peer.IsIngressGateway { + _, extPeerIDAndAddrs, err := getExtPeers(&peer) + if err == nil { + for _, extPeerIdAndAddr := range extPeerIDAndAddrs { + nodePeerMap[extPeerIdAndAddr.ID] = models.PeerRouteInfo{ + PeerAddr: net.IPNet{ + IP: net.ParseIP(extPeerIdAndAddr.Address), + Mask: getCIDRMaskFromAddr(extPeerIdAndAddr.Address), + }, + PeerKey: extPeerIdAndAddr.ID, + Allow: true, + } + } + } + } nodePeerMap[peerHost.PublicKey.String()] = models.PeerRouteInfo{ PeerAddr: net.IPNet{ IP: net.ParseIP(peer.PrimaryAddress()),