mirror of
https://github.com/gravitl/netmaker.git
synced 2025-09-07 13:44:17 +08:00
set egress6 ranges
This commit is contained in:
parent
dc24e359cb
commit
8e5a3d02c3
3 changed files with 9 additions and 3 deletions
|
@ -688,7 +688,7 @@ func getExtPeerEgressRoute(node models.Node, extPeer models.ExtClient) (egressRo
|
|||
return
|
||||
}
|
||||
|
||||
func getExtpeerEgressRanges(node models.Node) (ranges []net.IPNet) {
|
||||
func getExtpeerEgressRanges(node models.Node) (ranges, ranges6 []net.IPNet) {
|
||||
extPeers, err := GetNetworkExtClients(node.Network)
|
||||
if err != nil {
|
||||
return
|
||||
|
@ -703,7 +703,12 @@ func getExtpeerEgressRanges(node models.Node) (ranges []net.IPNet) {
|
|||
for _, allowedRange := range extPeer.ExtraAllowedIPs {
|
||||
_, ipnet, err := net.ParseCIDR(allowedRange)
|
||||
if err == nil {
|
||||
ranges = append(ranges, *ipnet)
|
||||
if ipnet.IP.To4() != nil {
|
||||
ranges = append(ranges, *ipnet)
|
||||
} else {
|
||||
ranges6 = append(ranges6, *ipnet)
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -301,9 +301,9 @@ func GetPeerUpdateForHost(network string, host *models.Host, allNodes []models.N
|
|||
Network6: node.NetworkRange6,
|
||||
AllowAll: defaultDevicePolicy.Enabled && defaultUserPolicy.Default,
|
||||
StaticNodeIps: GetStaticNodeIps(node),
|
||||
EgressRanges: getExtpeerEgressRanges(node),
|
||||
Rules: GetFwRulesOnIngressGateway(node),
|
||||
}
|
||||
ingFwUpdate.EgressRanges, ingFwUpdate.EgressRanges6 = getExtpeerEgressRanges(node)
|
||||
hostPeerUpdate.FwUpdate.IngressInfo[node.ID.String()] = ingFwUpdate
|
||||
}
|
||||
hostPeerUpdate.EgressRoutes = append(hostPeerUpdate.EgressRoutes, egressRoutes...)
|
||||
|
|
|
@ -41,6 +41,7 @@ type IngressInfo struct {
|
|||
Rules []FwRule `json:"rules"`
|
||||
AllowAll bool `json:"allow_all"`
|
||||
EgressRanges []net.IPNet `json:"egress_ranges"`
|
||||
EgressRanges6 []net.IPNet `json:"egress_ranges6"`
|
||||
}
|
||||
|
||||
// EgressInfo - struct for egress info
|
||||
|
|
Loading…
Add table
Reference in a new issue