mirror of
https://github.com/gravitl/netmaker.git
synced 2025-10-04 16:33:49 +08:00
call UpdateDNS on node update if DNSOn
This commit is contained in:
@@ -13,6 +13,7 @@ import (
|
|||||||
mqtt "github.com/eclipse/paho.mqtt.golang"
|
mqtt "github.com/eclipse/paho.mqtt.golang"
|
||||||
"github.com/gravitl/netmaker/models"
|
"github.com/gravitl/netmaker/models"
|
||||||
"github.com/gravitl/netmaker/netclient/config"
|
"github.com/gravitl/netmaker/netclient/config"
|
||||||
|
"github.com/gravitl/netmaker/netclient/local"
|
||||||
"github.com/gravitl/netmaker/netclient/ncutils"
|
"github.com/gravitl/netmaker/netclient/ncutils"
|
||||||
"github.com/gravitl/netmaker/netclient/wireguard"
|
"github.com/gravitl/netmaker/netclient/wireguard"
|
||||||
"golang.zx2c4.com/wireguard/wgctrl/wgtypes"
|
"golang.zx2c4.com/wireguard/wgctrl/wgtypes"
|
||||||
@@ -151,6 +152,17 @@ var NodeUpdate mqtt.MessageHandler = func(client mqtt.Client, msg mqtt.Message)
|
|||||||
ncutils.Log("error restarting wg after node update " + err.Error())
|
ncutils.Log("error restarting wg after node update " + err.Error())
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
//deal with DNS
|
||||||
|
if newNode.DNSOn == "on" {
|
||||||
|
if err = local.UpdateDNS(cfg.Node.Interface, cfg.Network, cfg.Server.CoreDNSAddr); err != nil {
|
||||||
|
ncutils.Log("error applying dns" + err.Error())
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
_, err := ncutils.RunCmd("resolvectrl revert "+cfg.Node.Interface, true)
|
||||||
|
if err != nil {
|
||||||
|
ncutils.Log("error applying dns" + err.Error())
|
||||||
|
}
|
||||||
|
}
|
||||||
}()
|
}()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -424,9 +424,9 @@ func UpdateWgInterface(file, privateKey, nameserver string, node models.Node) er
|
|||||||
if node.Address6 != "" {
|
if node.Address6 != "" {
|
||||||
wireguard.Section(section_interface).Key("Address").SetValue(node.Address6)
|
wireguard.Section(section_interface).Key("Address").SetValue(node.Address6)
|
||||||
}
|
}
|
||||||
if node.DNSOn == "yes" {
|
//if node.DNSOn == "yes" {
|
||||||
wireguard.Section(section_interface).Key("DNS").SetValue(nameserver)
|
// wireguard.Section(section_interface).Key("DNS").SetValue(nameserver)
|
||||||
}
|
//}
|
||||||
if node.PostUp != "" {
|
if node.PostUp != "" {
|
||||||
wireguard.Section(section_interface).Key("PostUp").SetValue(node.PostUp)
|
wireguard.Section(section_interface).Key("PostUp").SetValue(node.PostUp)
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user