mirror of
https://github.com/gravitl/netmaker.git
synced 2025-10-06 01:07:41 +08:00
add allowed networks
This commit is contained in:
@@ -158,17 +158,20 @@ func GetPeerUpdateForHost(network string, host *models.Host, allNodes []models.N
|
|||||||
}
|
}
|
||||||
defaultUserPolicy, _ := GetDefaultPolicy(models.NetworkID(node.Network), models.UserPolicy)
|
defaultUserPolicy, _ := GetDefaultPolicy(models.NetworkID(node.Network), models.UserPolicy)
|
||||||
defaultDevicePolicy, _ := GetDefaultPolicy(models.NetworkID(node.Network), models.DevicePolicy)
|
defaultDevicePolicy, _ := GetDefaultPolicy(models.NetworkID(node.Network), models.DevicePolicy)
|
||||||
if node.NetworkRange.IP != nil {
|
|
||||||
hostPeerUpdate.FwUpdate.Networks = append(hostPeerUpdate.FwUpdate.Networks, node.NetworkRange)
|
if defaultDevicePolicy.Enabled && defaultUserPolicy.Enabled {
|
||||||
}
|
if node.NetworkRange.IP != nil {
|
||||||
if node.NetworkRange6.IP != nil {
|
hostPeerUpdate.FwUpdate.AllowedNetworks = append(hostPeerUpdate.FwUpdate.AllowedNetworks, node.NetworkRange)
|
||||||
hostPeerUpdate.FwUpdate.Networks = append(hostPeerUpdate.FwUpdate.Networks, node.NetworkRange6)
|
}
|
||||||
|
if node.NetworkRange6.IP != nil {
|
||||||
|
hostPeerUpdate.FwUpdate.AllowedNetworks = append(hostPeerUpdate.FwUpdate.AllowedNetworks, node.NetworkRange6)
|
||||||
|
}
|
||||||
|
|
||||||
|
} else {
|
||||||
|
hostPeerUpdate.FwUpdate.AllowAll = false
|
||||||
|
hostPeerUpdate.FwUpdate.AclRules = GetAclRulesForNode(&node)
|
||||||
}
|
}
|
||||||
|
|
||||||
if !defaultDevicePolicy.Enabled || !defaultUserPolicy.Enabled {
|
|
||||||
hostPeerUpdate.FwUpdate.AllowAll = false
|
|
||||||
}
|
|
||||||
hostPeerUpdate.FwUpdate.AclRules = GetAclRulesForNode(&node)
|
|
||||||
currentPeers := GetNetworkNodesMemory(allNodes, node.Network)
|
currentPeers := GetNetworkNodesMemory(allNodes, node.Network)
|
||||||
for _, peer := range currentPeers {
|
for _, peer := range currentPeers {
|
||||||
peer := peer
|
peer := peer
|
||||||
|
@@ -94,13 +94,13 @@ type KeyUpdate struct {
|
|||||||
|
|
||||||
// FwUpdate - struct for firewall updates
|
// FwUpdate - struct for firewall updates
|
||||||
type FwUpdate struct {
|
type FwUpdate struct {
|
||||||
AllowAll bool `json:"allow_all"`
|
AllowAll bool `json:"allow_all"`
|
||||||
Networks []net.IPNet `json:"networks"`
|
AllowedNetworks []net.IPNet `json:"networks"`
|
||||||
IsEgressGw bool `json:"is_egress_gw"`
|
IsEgressGw bool `json:"is_egress_gw"`
|
||||||
IsIngressGw bool `json:"is_ingress_gw"`
|
IsIngressGw bool `json:"is_ingress_gw"`
|
||||||
EgressInfo map[string]EgressInfo `json:"egress_info"`
|
EgressInfo map[string]EgressInfo `json:"egress_info"`
|
||||||
IngressInfo map[string]IngressInfo `json:"ingress_info"`
|
IngressInfo map[string]IngressInfo `json:"ingress_info"`
|
||||||
AclRules map[string]AclRule `json:"acl_rules"`
|
AclRules map[string]AclRule `json:"acl_rules"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// FailOverMeReq - struct for failover req
|
// FailOverMeReq - struct for failover req
|
||||||
|
Reference in New Issue
Block a user