allow adding address

This commit is contained in:
afeiszli
2022-02-01 15:27:00 -05:00
parent eeb658595b
commit d2467e13f3
4 changed files with 27 additions and 12 deletions

View File

@@ -214,18 +214,27 @@ func CreateNode(node *models.Node) error {
node.DNSOn = "no" node.DNSOn = "no"
} }
} }
SetNodeDefaults(node) SetNodeDefaults(node)
if node.IsServer == "yes" { if node.IsServer == "yes" {
node.Address, err = UniqueAddressServer(node.Network) if node.Address, err = UniqueAddressServer(node.Network); err != nil {
} else { return err
node.Address, err = UniqueAddress(node.Network) }
} else if node.Address == "" {
if node.Address, err = UniqueAddress(node.Network); err != nil {
return err
}
} else if !IsIPUnique(node.Network, node.Address, database.NODES_TABLE_NAME, false) {
return fmt.Errorf("invalid address: ipv4 " + node.Address + " is not unique")
} }
if err != nil {
return err if node.Address6 == "" {
} if node.Address6, err = UniqueAddress6(node.Network); err != nil {
node.Address6, err = UniqueAddress6(node.Network) return err
if err != nil { }
return err } else if !IsIPUnique(node.Network, node.Address6, database.NODES_TABLE_NAME, true) {
return fmt.Errorf("invalid address: ipv6 " + node.Address6 + " is not unique")
} }
// TODO: This covers legacy nodes, eventually want to remove legacy check // TODO: This covers legacy nodes, eventually want to remove legacy check

View File

@@ -77,6 +77,7 @@ func (config *ClientConfig) ReadConfig() {
nofile := false nofile := false
//home, err := homedir.Dir() //home, err := homedir.Dir()
home := ncutils.GetNetclientPathSpecific() home := ncutils.GetNetclientPathSpecific()
file := fmt.Sprintf(home + "netconfig-" + config.Network) file := fmt.Sprintf(home + "netconfig-" + config.Network)
//f, err := os.Open(file) //f, err := os.Open(file)
f, err := os.OpenFile(file, os.O_RDONLY, 0600) f, err := os.OpenFile(file, os.O_RDONLY, 0600)

View File

@@ -42,11 +42,17 @@ func SetupSystemDDaemon(interval string) error {
} }
systemservice := `[Unit] systemservice := `[Unit]
Description=Netclient message queue Description=Netclient Daemon
Documentation=https://docs.netmaker.org https://k8s.netmaker.org
After=network-online.target
Wants=network-online.target systemd-networkd-wait-online.service
[Service] [Service]
User=root
Type=simple Type=simple
ExecStart=/usr/sbin/netclient daemon ExecStart=/sbin/netclient daemon
Restart=on-failure
RestartSec=15s
[Install] [Install]
WantedBy=multi-user.target WantedBy=multi-user.target

View File

@@ -116,7 +116,6 @@ func JoinNetwork(cfg config.ClientConfig, privateKey string) error {
cfg.Node.DNSOn = "no" cfg.Node.DNSOn = "no"
} }
} }
if ncutils.IsFreeBSD() { if ncutils.IsFreeBSD() {
cfg.Node.UDPHolePunch = "no" cfg.Node.UDPHolePunch = "no"
} }