From 382901b1249172dba27c79823744ca6a4e6aec47 Mon Sep 17 00:00:00 2001 From: afeiszli Date: Mon, 9 Aug 2021 12:43:09 -0400 Subject: [PATCH] changed logs --- config/config.go | 4 -- controllers/common.go | 31 ++++++----- controllers/controller.go | 1 - controllers/dnsHttpController.go | 15 +++-- controllers/extClientHttpController.go | 77 ++++---------------------- controllers/networkHttpController.go | 6 +- controllers/nodeGrpcController.go | 7 +-- controllers/nodeHttpController.go | 3 - controllers/userHttpController.go | 2 +- controllers/userHttpController_test.go | 4 +- database/database.go | 1 - functions/helpers.go | 8 ++- functions/local.go | 7 +-- models/node.go | 30 +++++++++- netclient/server/grpc.go | 2 +- netclient/wireguard/kernel.go | 4 +- serverctl/serverctl.go | 6 +- 17 files changed, 82 insertions(+), 126 deletions(-) diff --git a/config/config.go b/config/config.go index 2235c214..ead2b5c2 100644 --- a/config/config.go +++ b/config/config.go @@ -73,10 +73,6 @@ func readConfig() *EnvironmentConfig { f, err := os.Open(file) var cfg EnvironmentConfig if err != nil { - //log.Fatal(err) - //os.Exit(2) - //log.Println("Unable to open config file at config/environments/" + getEnv()) - //log.Println("Will proceed with defaults or enironment variables (no config file).") return &cfg } defer f.Close() diff --git a/controllers/common.go b/controllers/common.go index 638fbcbb..d7689530 100644 --- a/controllers/common.go +++ b/controllers/common.go @@ -2,11 +2,9 @@ package controller import ( "encoding/json" - "log" "strconv" "strings" "time" - "github.com/gravitl/netmaker/database" "github.com/gravitl/netmaker/functions" "github.com/gravitl/netmaker/models" @@ -23,20 +21,19 @@ func GetPeersList(networkName string) ([]models.Node, error) { if database.IsEmptyRecord(err) { return peers, nil } - log.Println(err) + functions.PrintUserLog("",err.Error(),2) return nil, err } udppeers, errN := database.GetPeers(networkName) if errN != nil { - log.Println("failed to collect udp peers") - log.Println(errN) + functions.PrintUserLog("",errN.Error(),2) } for _, value := range collection { var node models.Node var peer models.Node err := json.Unmarshal([]byte(value), &node) if err != nil { - log.Println(err) + functions.PrintUserLog("",err.Error(),2) continue } if node.IsEgressGateway == "yes" { // handle egress stuff @@ -62,7 +59,7 @@ func GetPeersList(networkName string) ([]models.Node, error) { } } } - functions.PrintUserLog("netmaker", "sending peer "+peer.MacAddress+" "+peer.Endpoint, 2) + functions.PrintUserLog(models.NODE_SERVER_NAME, "sending peer "+peer.MacAddress+" "+peer.Endpoint, 2) peers = append(peers, peer) } } @@ -87,12 +84,12 @@ func GetExtPeersList(macaddress string, networkName string) ([]models.ExtPeersRe var extClient models.ExtClient err = json.Unmarshal([]byte(value), &peer) if err != nil { - functions.PrintUserLog("netmaker", "failed to unmarshal peer", 2) + functions.PrintUserLog(models.NODE_SERVER_NAME, "failed to unmarshal peer", 2) continue } err = json.Unmarshal([]byte(value), &extClient) if err != nil { - functions.PrintUserLog("netmaker", "failed to unmarshal ext client", 2) + functions.PrintUserLog(models.NODE_SERVER_NAME, "failed to unmarshal ext client", 2) continue } if extClient.Network == networkName && extClient.IngressGatewayID == macaddress { @@ -125,7 +122,7 @@ func DeleteNode(key string, exterminate bool) error { } } else { if err := database.DeleteRecord(database.DELETED_NODES_TABLE_NAME, key); err != nil { - log.Println(err) + functions.PrintUserLog("",err.Error(),2) } } if err := database.DeleteRecord(database.NODES_TABLE_NAME, key); err != nil { @@ -197,6 +194,12 @@ func CreateNode(node models.Node, networkName string) (models.Node, error) { node.Network = networkName + if node.Name == models.NODE_SERVER_NAME { + if node.CheckIsServer() { + node.IsServer = "yes" + } + } + node.SetDefaults() node.Address, err = functions.UniqueAddress(networkName) if err != nil { @@ -216,7 +219,6 @@ func CreateNode(node models.Node, networkName string) (models.Node, error) { if err != nil { return node, err } - key, err := functions.GetRecordKey(node.MacAddress, node.Network) if err != nil { return node, err @@ -242,12 +244,11 @@ func CreateNode(node models.Node, networkName string) (models.Node, error) { func SetNetworkServerPeers(networkName string) { if currentPeersList, err := serverctl.GetPeers(networkName); err == nil { if database.SetPeers(currentPeersList, networkName) { - log.Println("set new peers on network", networkName) - } else { - log.Println("attempted to set peers on network", networkName) + functions.PrintUserLog(models.NODE_SERVER_NAME,"set new peers on network "+networkName,1) } } else { - log.Println("could not set server peers on network", networkName) + functions.PrintUserLog(models.NODE_SERVER_NAME,"could not set peers on network "+networkName,1) + functions.PrintUserLog(models.NODE_SERVER_NAME,err.Error(),1) } } diff --git a/controllers/controller.go b/controllers/controller.go index 87a62160..9fa2cff4 100644 --- a/controllers/controller.go +++ b/controllers/controller.go @@ -7,7 +7,6 @@ import ( "os" "os/signal" "sync" - "github.com/gorilla/handlers" "github.com/gorilla/mux" "github.com/gravitl/netmaker/servercfg" diff --git a/controllers/dnsHttpController.go b/controllers/dnsHttpController.go index ec1d06f1..bdca4951 100644 --- a/controllers/dnsHttpController.go +++ b/controllers/dnsHttpController.go @@ -2,10 +2,7 @@ package controller import ( "encoding/json" - "fmt" - "log" "net/http" - "github.com/go-playground/validator/v10" "github.com/gorilla/mux" "github.com/gravitl/netmaker/database" @@ -319,7 +316,7 @@ func deleteDNS(w http.ResponseWriter, r *http.Request) { return } entrytext := params["domain"] + "." + params["network"] - functions.PrintUserLog("netmaker", "deleted dns entry: "+entrytext, 1) + functions.PrintUserLog(models.NODE_SERVER_NAME, "deleted dns entry: "+entrytext, 1) err = SetDNS() if err != nil { returnErrorResponse(w, r, formatError(err, "internal")) @@ -401,7 +398,7 @@ func pushDNS(w http.ResponseWriter, r *http.Request) { returnErrorResponse(w, r, formatError(err, "internal")) return } - log.Println("pushed DNS updates to nameserver") + functions.PrintUserLog(r.Header.Get("user"),"pushed DNS updates to nameserver",1) json.NewEncoder(w).Encode("DNS Pushed to CoreDNS") } @@ -422,7 +419,7 @@ func ValidateDNSCreate(entry models.DNSEntry) error { err := v.Struct(entry) if err != nil { for _, e := range err.(validator.ValidationErrors) { - fmt.Println(e) + functions.PrintUserLog("", e.Error(),1) } } return err @@ -442,7 +439,9 @@ func ValidateDNSUpdate(change models.DNSEntry, entry models.DNSEntry) error { }) _ = v.RegisterValidation("network_exists", func(fl validator.FieldLevel) bool { _, err := functions.GetParentNetwork(change.Network) - fmt.Println(err, entry.Network) + if err != nil { + functions.PrintUserLog("",err.Error(),0) + } return err == nil }) @@ -464,7 +463,7 @@ func ValidateDNSUpdate(change models.DNSEntry, entry models.DNSEntry) error { if err != nil { for _, e := range err.(validator.ValidationErrors) { - fmt.Println(e) + functions.PrintUserLog("", e.Error(),1) } } return err diff --git a/controllers/extClientHttpController.go b/controllers/extClientHttpController.go index 6b4f5bf7..b59534b6 100644 --- a/controllers/extClientHttpController.go +++ b/controllers/extClientHttpController.go @@ -6,12 +6,9 @@ import ( "fmt" "io" "math/rand" - - // "fmt" "net/http" "strconv" "time" - "github.com/gorilla/mux" "github.com/gravitl/netmaker/database" "github.com/gravitl/netmaker/functions" @@ -31,43 +28,6 @@ func extClientHandlers(r *mux.Router) { r.HandleFunc("/api/extclients/{network}/{macaddress}", securityCheck(false, http.HandlerFunc(createExtClient))).Methods("POST") } -// TODO: Implement Validation -func ValidateExtClientCreate(networkName string, extclient models.ExtClient) error { - // v := validator.New() - // _ = v.RegisterValidation("macaddress_unique", func(fl validator.FieldLevel) bool { - // var isFieldUnique bool = functions.IsFieldUnique(networkName, "macaddress", extclient.MacAddress) - // return isFieldUnique - // }) - // _ = v.RegisterValidation("network_exists", func(fl validator.FieldLevel) bool { - // _, err := extclient.GetNetwork() - // return err == nil - // }) - // err := v.Struct(extclient) - - // if err != nil { - // for _, e := range err.(validator.ValidationErrors) { - // fmt.Println(e) - // } - // } - return nil -} - -// TODO: Implement Validation -func ValidateExtClientUpdate(networkName string, extclient models.ExtClient) error { - // v := validator.New() - // _ = v.RegisterValidation("network_exists", func(fl validator.FieldLevel) bool { - // _, err := extclient.GetNetwork() - // return err == nil - // }) - // err := v.Struct(extclient) - // if err != nil { - // for _, e := range err.(validator.ValidationErrors) { - // fmt.Println(e) - // } - // } - return nil -} - func checkIngressExists(network string, macaddress string) bool { node, err := functions.GetNodeByMacAddress(network, macaddress) if err != nil { @@ -178,14 +138,14 @@ func getExtClientConf(w http.ResponseWriter, r *http.Request) { gwnode, err := functions.GetNodeByMacAddress(client.Network, client.IngressGatewayID) if err != nil { - fmt.Println("Could not retrieve Ingress Gateway Node " + client.IngressGatewayID) + functions.PrintUserLog(r.Header.Get("user"),"Could not retrieve Ingress Gateway Node " + client.IngressGatewayID,1) returnErrorResponse(w, r, formatError(err, "internal")) return } network, err := functions.GetParentNetwork(client.Network) if err != nil { - fmt.Println("Could not retrieve Ingress Gateway Network " + client.Network) + functions.PrintUserLog(r.Header.Get("user"),"Could not retrieve Ingress Gateway Network " + client.Network,1) returnErrorResponse(w, r, formatError(err, "internal")) return } @@ -238,7 +198,7 @@ Endpoint = %s } return } - + functions.PrintUserLog(r.Header.Get("user"),"retrieved ext client config",2) w.WriteHeader(http.StatusOK) json.NewEncoder(w).Encode(client) } @@ -263,9 +223,7 @@ func CreateExtClient(extclient models.ExtClient) error { } if extclient.ClientID == "" { - clientid := StringWithCharset(7, charset) - clientname := "client-" + clientid - extclient.ClientID = clientname + extclient.ClientID = models.GenerateNodeName() } extclient.LastModified = time.Now().Unix() @@ -284,10 +242,10 @@ func CreateExtClient(extclient models.ExtClient) error { err = SetNetworkNodesLastModified(extclient.Network) return err } - -//This one's a doozy -//To create a extclient -//Must have valid key and be unique +/** + * To create a extclient + * Must have valid key and be unique + */ func createExtClient(w http.ResponseWriter, r *http.Request) { w.Header().Set("Content-Type", "application/json") @@ -295,9 +253,6 @@ func createExtClient(w http.ResponseWriter, r *http.Request) { networkName := params["network"] macaddress := params["macaddress"] - //Check if network exists first - //TODO: This is inefficient. Let's find a better way. - //Just a few rows down we grab the network anyway ingressExists := checkIngressExists(networkName, macaddress) if !ingressExists { returnErrorResponse(w, r, formatError(errors.New("ingress does not exist"), "internal")) @@ -319,11 +274,6 @@ func createExtClient(w http.ResponseWriter, r *http.Request) { returnErrorResponse(w, r, formatError(err, "internal")) return } - err = ValidateExtClientCreate(params["network"], extclient) - if err != nil { - returnErrorResponse(w, r, formatError(err, "badrequest")) - return - } err = CreateExtClient(extclient) if err != nil { @@ -340,14 +290,8 @@ func updateExtClient(w http.ResponseWriter, r *http.Request) { var newExtClient models.ExtClient var oldExtClient models.ExtClient - // we decode our body request params _ = json.NewDecoder(r.Body).Decode(&newExtClient) - // TODO: Validation for update. - // err := ValidateExtClientUpdate(params["network"], params["clientid"], newExtClient) - // if err != nil { - // returnErrorResponse(w, r, formatError(err, "badrequest")) - // return - // } + key, err := functions.GetRecordKey(params["clientid"], params["network"]) if err != nil { returnErrorResponse(w, r, formatError(err, "internal")) @@ -362,7 +306,6 @@ func updateExtClient(w http.ResponseWriter, r *http.Request) { returnErrorResponse(w, r, formatError(err, "internal")) return } - newclient, err := UpdateExtClient(newExtClient.ClientID, params["network"], oldExtClient) if err != nil { returnErrorResponse(w, r, formatError(err, "internal")) @@ -404,7 +347,7 @@ func DeleteGatewayExtClients(gatewayID string, networkName string) error { for _, extClient := range currentExtClients { if extClient.IngressGatewayID == gatewayID { if err = DeleteExtClient(networkName, extClient.ClientID); err != nil { - functions.PrintUserLog("netmaker", "failed to remove ext client "+extClient.ClientID, 2) + functions.PrintUserLog(models.NODE_SERVER_NAME, "failed to remove ext client "+extClient.ClientID, 2) continue } } diff --git a/controllers/networkHttpController.go b/controllers/networkHttpController.go index 2fa84ab3..158e3e1c 100644 --- a/controllers/networkHttpController.go +++ b/controllers/networkHttpController.go @@ -4,11 +4,9 @@ import ( "encoding/base64" "encoding/json" "errors" - "log" "net/http" "strings" "time" - "github.com/go-playground/validator/v10" "github.com/gorilla/mux" "github.com/gravitl/netmaker/database" @@ -181,7 +179,7 @@ func ValidateNetworkUpdate(network models.Network) error { if err != nil { for _, e := range err.(validator.ValidationErrors) { - log.Println(e) + functions.PrintUserLog("validator",e.Error(),1) } } return err @@ -517,7 +515,7 @@ func CreateAccessKey(accesskey models.AccessKey, network models.Network) (models err = v.Struct(accesskey) if err != nil { for _, e := range err.(validator.ValidationErrors) { - log.Println(e) + functions.PrintUserLog("validator",e.Error(),1) } return models.AccessKey{}, err } diff --git a/controllers/nodeGrpcController.go b/controllers/nodeGrpcController.go index 538d4b1b..b57ea2c0 100644 --- a/controllers/nodeGrpcController.go +++ b/controllers/nodeGrpcController.go @@ -4,9 +4,7 @@ import ( "context" "encoding/json" "errors" - "log" "strings" - "github.com/gravitl/netmaker/functions" nodepb "github.com/gravitl/netmaker/grpc" "github.com/gravitl/netmaker/models" @@ -25,7 +23,6 @@ func (s *NodeServiceServer) ReadNode(ctx context.Context, req *nodepb.Object) (* } node, err := GetNode(macAndNetwork[0], macAndNetwork[1]) if err != nil { - log.Println("could not get node "+macAndNetwork[0]+" "+macAndNetwork[1], err) return nil, err } node.SetLastCheckIn() @@ -71,7 +68,6 @@ func (s *NodeServiceServer) CreateNode(ctx context.Context, req *nodepb.Object) node, err = CreateNode(node, node.Network) if err != nil { - log.Println("could not create node on network " + node.Network + " (gRPC controller)") return nil, err } nodeData, err := json.Marshal(&node) @@ -121,7 +117,6 @@ func (s *NodeServiceServer) DeleteNode(ctx context.Context, req *nodepb.Object) err := DeleteNode(nodeID, true) if err != nil { - log.Println("Error deleting node (gRPC controller).") return nil, err } @@ -139,7 +134,7 @@ func (s *NodeServiceServer) GetPeers(ctx context.Context, req *nodepb.Object) (* if err != nil { return nil, err } - if node.Name == "netmaker" { + if node.IsServer == "yes" { SetNetworkServerPeers(macAndNetwork[1]) } peers, err := GetPeersList(macAndNetwork[1]) diff --git a/controllers/nodeHttpController.go b/controllers/nodeHttpController.go index a9f28f41..11ffa8da 100644 --- a/controllers/nodeHttpController.go +++ b/controllers/nodeHttpController.go @@ -3,11 +3,9 @@ package controller import ( "encoding/json" "errors" - "log" "net/http" "strings" "time" - "github.com/gorilla/mux" "github.com/gravitl/netmaker/database" "github.com/gravitl/netmaker/functions" @@ -648,7 +646,6 @@ func CreateIngressGateway(netid string, macaddress string) (models.Node, error) network, err := functions.GetParentNetwork(netid) if err != nil { - log.Println("Could not find network.") return models.Node{}, err } node.IsIngressGateway = "yes" diff --git a/controllers/userHttpController.go b/controllers/userHttpController.go index e709ce81..bfedc208 100644 --- a/controllers/userHttpController.go +++ b/controllers/userHttpController.go @@ -396,7 +396,7 @@ func UpdateUser(userchange models.User, user models.User) (models.User, error) { if err = database.Insert(user.UserName, string(data), database.USERS_TABLE_NAME); err != nil { return models.User{}, err } - functions.PrintUserLog("netmaker", "updated user "+queryUser, 1) + functions.PrintUserLog(models.NODE_SERVER_NAME, "updated user "+queryUser, 1) return user, nil } diff --git a/controllers/userHttpController_test.go b/controllers/userHttpController_test.go index a7d25a64..c6d07b48 100644 --- a/controllers/userHttpController_test.go +++ b/controllers/userHttpController_test.go @@ -13,7 +13,7 @@ import ( gconf.ServerGRPC = "localhost:8081" gconf.PortGRPC = "50051" //err := SetGlobalConfig(gconf) - collection := REMOVE.Client.Database("netmaker").Collection("config") + collection := REMOVE.Client.Database(models.NODE_SERVER_NAME).Collection("config") ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second) defer cancel() //create, _, err := functions.GetGlobalConfig() @@ -24,7 +24,7 @@ import ( //drop network, nodes, and user collections var collections = []string{"networks", "nodes", "users", "dns"} for _, table := range collections { - collection := REMOVE.Client.Database("netmaker").Collection(table) + collection := REMOVE.Client.Database(models.NODE_SERVER_NAME).Collection(table) ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second) defer cancel() err := collection.Drop(ctx) diff --git a/database/database.go b/database/database.go index 0e4ac8e7..1362ae4e 100644 --- a/database/database.go +++ b/database/database.go @@ -131,6 +131,5 @@ func FetchRecords(tableName string) (map[string]string, error) { if len(records) == 0 { return nil, errors.New(NO_RECORDS) } - // log.Println(records) return records, nil } diff --git a/functions/helpers.go b/functions/helpers.go index 590bda7e..45e6266f 100644 --- a/functions/helpers.go +++ b/functions/helpers.go @@ -252,6 +252,9 @@ func NetworkNodesUpdateAction(networkName string, action string) error { fmt.Println("error in node address assignment!") return err } + if action == models.NODE_UPDATE_KEY && node.StaticPubKey == "yes" { + continue + } if node.Network == networkName { node.Action = action data, err := json.Marshal(&node) @@ -261,8 +264,7 @@ func NetworkNodesUpdateAction(networkName string, action string) error { node.SetID() database.Insert(node.ID, string(data), database.NODES_TABLE_NAME) } - } - + } return nil } @@ -763,7 +765,7 @@ func DecrimentKey(networkName string, keyvalue string) { } if newNetworkData, err := json.Marshal(&network); err != nil { - PrintUserLog("netmaker", "failed to decrement key", 2) + PrintUserLog(models.NODE_SERVER_NAME, "failed to decrement key", 2) return } else { database.Insert(network.NetID, string(newNetworkData), database.NETWORKS_TABLE_NAME) diff --git a/functions/local.go b/functions/local.go index 71ce6495..6b0dc888 100644 --- a/functions/local.go +++ b/functions/local.go @@ -2,7 +2,6 @@ package functions import ( "io/ioutil" - "log" "os" ) @@ -23,7 +22,7 @@ func SetDNSDir() error { if os.IsNotExist(err) { os.Mkdir(dir+"/config/dnsconfig", 744) } else if err != nil { - log.Println("couldnt find or create /config/dnsconfig") + PrintUserLog("","couldnt find or create /config/dnsconfig",0) return err } return nil @@ -38,7 +37,7 @@ func SetCorefile(domains string) error { if os.IsNotExist(err) { os.Mkdir(dir+"/config/dnsconfig", 744) } else if err != nil { - log.Println("couldnt find or create /config/dnsconfig") + PrintUserLog("","couldnt find or create /config/dnsconfig",0) return err } @@ -55,8 +54,6 @@ func SetCorefile(domains string) error { err = ioutil.WriteFile(dir+"/config/dnsconfig/Corefile", corebytes, 0644) if err != nil { - log.Println(err) - log.Println("") return err } return err diff --git a/models/node.go b/models/node.go index aeaf158b..8b68f899 100644 --- a/models/node.go +++ b/models/node.go @@ -18,6 +18,7 @@ const TEN_YEARS_IN_SECONDS = 300000000 // == ACTIONS == (can only be set by GRPC) const NODE_UPDATE_KEY = "updatekey" +const NODE_SERVER_NAME = "netmaker" const NODE_DELETE = "delete" const NODE_IS_PENDING = "pending" const NODE_NOOP = "noop" @@ -56,12 +57,13 @@ type Node struct { IsIngressGateway string `json:"isingressgateway" bson:"isingressgateway" yaml:"isingressgateway"` EgressGatewayRanges []string `json:"egressgatewayranges" bson:"egressgatewayranges" yaml:"egressgatewayranges"` IngressGatewayRange string `json:"ingressgatewayrange" bson:"ingressgatewayrange" yaml:"ingressgatewayrange"` - StaticIP string `json:"staticip" bson:"staticip" yaml:"staticip"` - StaticPubKey string `json:"staticpubkey" bson:"staticpubkey" yaml:"staticpubkey"` + StaticPubKey string `json:"staticpubkey" bson:"staticpubkey" yaml:"staticpubkey" validate:"checkyesorno"` + StaticIP string `json:"staticip" bson:"staticip" yaml:"staticip" validate:"checkyesorno"` UDPHolePunch string `json:"udpholepunch" bson:"udpholepunch" yaml:"udpholepunch" validate:"checkyesorno"` PullChanges string `json:"pullchanges" bson:"pullchanges" yaml:"pullchanges" validate:"checkyesorno"` DNSOn string `json:"dnson" bson:"dnson" yaml:"dnson" validate:"checkyesorno"` IsDualStack string `json:"isdualstack" bson:"isdualstack" yaml:"isdualstack" validate:"checkyesorno"` + IsServer string `json:"isserver" bson:"isserver" yaml:"isserver" validate:"checkyesorno"` Action string `json:"action" bson:"action" yaml:"action"` IsLocal string `json:"islocal" bson:"islocal" yaml:"islocal" validate:"checkyesorno"` LocalRange string `json:"localrange" bson:"localrange" yaml:"localrange"` @@ -111,6 +113,12 @@ func (node *Node) SetIsDualStackDefault() { } } +func (node *Node) SetIsServerDefault() { + if node.IsServer != "yes" { + node.IsServer = "no" + } +} + func (node *Node) SetLastModified() { node.LastModified = time.Now().Unix() } @@ -137,6 +145,23 @@ func (node *Node) SetDefaultName() { } } +func (node *Node) CheckIsServer() bool { + nodeData, err := database.FetchRecords(database.NODES_TABLE_NAME) + if err != nil && !database.IsEmptyRecord(err) { + return false + } + for _, value := range nodeData { + var tmpNode Node + if err := json.Unmarshal([]byte(value), &tmpNode); err != nil { + continue + } + if tmpNode.Network == node.Network && tmpNode.MacAddress != node.MacAddress { + return false + } + } + return true +} + func (node *Node) GetNetwork() (Network, error) { var network Network @@ -204,6 +229,7 @@ func (node *Node) SetDefaults() { node.SetPullChangesDefault() node.SetDefaultAction() node.SetID() + node.SetIsServerDefault() node.KeyUpdateTimeStamp = time.Now().Unix() } diff --git a/netclient/server/grpc.go b/netclient/server/grpc.go index 5a4c1d67..81306d57 100644 --- a/netclient/server/grpc.go +++ b/netclient/server/grpc.go @@ -232,7 +232,7 @@ func GetPeers(macaddress string, network string, server string, dualstack bool, } allowedips = append(allowedips, addr6) } - if nodecfg.Name == "netmaker" { + if nodecfg.IsServer == "yes" { peer = wgtypes.PeerConfig{ PublicKey: pubkey, PersistentKeepaliveInterval: &keepaliveserver, diff --git a/netclient/wireguard/kernel.go b/netclient/wireguard/kernel.go index c240e3c8..cfeecc49 100644 --- a/netclient/wireguard/kernel.go +++ b/netclient/wireguard/kernel.go @@ -80,7 +80,9 @@ func InitWireguard(node *models.Node, privkey string, peers []wgtypes.PeerConfig nodeport = int(node.ListenPort) conf := wgtypes.Config{} - if nodecfg.UDPHolePunch == "yes" && nodecfg.Name != "netmaker" { + if nodecfg.UDPHolePunch == "yes" && + nodecfg.IsServer == "no" && + nodecfg.IsIngressGateway == "no" { conf = wgtypes.Config{ PrivateKey: &key, ReplacePeers: true, diff --git a/serverctl/serverctl.go b/serverctl/serverctl.go index 669c4084..e724c167 100644 --- a/serverctl/serverctl.go +++ b/serverctl/serverctl.go @@ -163,10 +163,12 @@ func AddNetwork(network string) (bool, error) { log.Println("could not change netclient directory permissions") return false, err } - log.Println("executing network join: " + "/etc/netclient/netclient " + "join " + "-t " + token + " -name " + "netmaker" + " -endpoint " + pubip) + functions.PrintUserLog(models.NODE_SERVER_NAME,"executing network join: " + "/etc/netclient/netclient " + "join " + "-t " + token + " -name " + models.NODE_SERVER_NAME + " -endpoint " + pubip,0) - joinCMD := exec.Command("/etc/netclient/netclient", "join", "-t", token, "-name", "netmaker", "-endpoint", pubip) + joinCMD := exec.Command("/etc/netclient/netclient", "join", "-t", token, "-name", models.NODE_SERVER_NAME, "-endpoint", pubip) err = joinCMD.Start() + + if err != nil { log.Println(err) }