Browse Source

removing pubkey update

afeiszli 4 years ago
parent
commit
037271f0aa

BIN
controllers/.nodeGrpcController.go.swp


+ 2 - 0
controllers/common.go

@@ -32,10 +32,12 @@ func GetPeersList(networkName string) ([]models.PeersResponse, error) {
 		var peer models.PeersResponse
 		var peer models.PeersResponse
 		err := json.Unmarshal([]byte(value), &node)
 		err := json.Unmarshal([]byte(value), &node)
 		if err != nil {
 		if err != nil {
+			log.Println(err)
 			continue
 			continue
 		}
 		}
 		err = json.Unmarshal([]byte(value), &peer)
 		err = json.Unmarshal([]byte(value), &peer)
 		if err != nil {
 		if err != nil {
+			log.Println(err)
 			continue
 			continue
 		}
 		}
 		if node.Network == networkName && node.IsPending != "yes" {
 		if node.Network == networkName && node.IsPending != "yes" {

+ 1 - 1
controllers/nodeGrpcController.go

@@ -317,7 +317,7 @@ func (s *NodeServiceServer) GetPeers(req *nodepb.GetPeersReq, stream nodepb.Node
 				Address6:           peers[i].Address6,
 				Address6:           peers[i].Address6,
 				Endpoint:           peers[i].Endpoint,
 				Endpoint:           peers[i].Endpoint,
 				Egressgatewayrange: peers[i].EgressGatewayRange,
 				Egressgatewayrange: peers[i].EgressGatewayRange,
-				Isegressgateway:    peers[i].IsEgressGateway,
+				Isegressgateway:    peers[i].IsEgressGateway == "yes",
 				Publickey:          peers[i].PublicKey,
 				Publickey:          peers[i].PublicKey,
 				Keepalive:          peers[i].KeepAlive,
 				Keepalive:          peers[i].KeepAlive,
 				Listenport:         peers[i].ListenPort,
 				Listenport:         peers[i].ListenPort,

+ 0 - 1
functions/helpers.go

@@ -473,7 +473,6 @@ func GetNodeByMacAddress(network string, macaddress string) (models.Node, error)
 	}
 	}
 
 
 	record, err := database.FetchRecord(database.NODES_TABLE_NAME, key)
 	record, err := database.FetchRecord(database.NODES_TABLE_NAME, key)
-	log.Println("RECORD:",record)
 	if err != nil {
 	if err != nil {
 		return models.Node{}, err
 		return models.Node{}, err
 	}
 	}

+ 4 - 1
models/node.go

@@ -171,6 +171,8 @@ func (newNode *Node) Fill(currentNode *Node) {
 	}
 	}
 	if newNode.PublicKey == "" {
 	if newNode.PublicKey == "" {
 		newNode.PublicKey = currentNode.PublicKey
 		newNode.PublicKey = currentNode.PublicKey
+	} else {
+		newNode.KeyUpdateTimeStamp = time.Now().Unix()
 	}
 	}
 	if newNode.Endpoint == "" {
 	if newNode.Endpoint == "" {
 		newNode.Endpoint = currentNode.Endpoint
 		newNode.Endpoint = currentNode.Endpoint
@@ -264,12 +266,13 @@ func (newNode *Node) Fill(currentNode *Node) {
 
 
 func (currentNode *Node) Update(newNode *Node) error {
 func (currentNode *Node) Update(newNode *Node) error {
 	log.Println("Node SaveConfig:", newNode.SaveConfig)
 	log.Println("Node SaveConfig:", newNode.SaveConfig)
+        newNode.Fill(currentNode)
+	log.Println("Node SaveConfig 2:", newNode.SaveConfig)
 	if err := newNode.Validate(true); err != nil {
 	if err := newNode.Validate(true); err != nil {
 		return err
 		return err
 	}
 	}
 	newNode.SetID()
 	newNode.SetID()
 	if newNode.ID == currentNode.ID {
 	if newNode.ID == currentNode.ID {
-		newNode.Fill(currentNode)
 		if data, err := json.Marshal(newNode); err != nil {
 		if data, err := json.Marshal(newNode); err != nil {
 			return err
 			return err
 		} else {
 		} else {

+ 1 - 1
models/structs.go

@@ -103,7 +103,7 @@ type PeersResponse struct {
 	Address            string `json:"address" bson:"address"`
 	Address            string `json:"address" bson:"address"`
 	Address6           string `json:"address6" bson:"address6"`
 	Address6           string `json:"address6" bson:"address6"`
 	LocalAddress       string `json:"localaddress" bson:"localaddress"`
 	LocalAddress       string `json:"localaddress" bson:"localaddress"`
-	IsEgressGateway    bool   `json:"isegressgateway" bson:"isegressgateway"`
+	IsEgressGateway    string   `json:"isegressgateway" bson:"isegressgateway"`
 	EgressGatewayRange string `json:"egressgatewayrange" bson:"egressgatewayrange"`
 	EgressGatewayRange string `json:"egressgatewayrange" bson:"egressgatewayrange"`
 	ListenPort         int32  `json:"listenport" bson:"listenport"`
 	ListenPort         int32  `json:"listenport" bson:"listenport"`
 	KeepAlive          int32  `json:"persistentkeepalive" bson:"persistentkeepalive"`
 	KeepAlive          int32  `json:"persistentkeepalive" bson:"persistentkeepalive"`

+ 1 - 1
netclient/functions/checkin.go

@@ -252,7 +252,7 @@ func CheckIn(cliconf config.ClientConfig) error {
 			return err
 			return err
                         log.Fatalf("Error: %v", err)
                         log.Fatalf("Error: %v", err)
                 }
                 }
-		err = wireguard.SetWGConfig(network)
+		//err = wireguard.SetWGConfig(network)
                 if err != nil {
                 if err != nil {
 			return err
 			return err
                         log.Fatalf("Error: %v", err)
                         log.Fatalf("Error: %v", err)

+ 9 - 1
netclient/server/grpc.go

@@ -142,6 +142,7 @@ func GetPeers(macaddress string, network string, server string, dualstack bool,
         nodecfg := cfg.Node
         nodecfg := cfg.Node
         keepalive := nodecfg.KeepAlive
         keepalive := nodecfg.KeepAlive
         keepalivedur, err := time.ParseDuration(strconv.FormatInt(int64(keepalive), 10) + "s")
         keepalivedur, err := time.ParseDuration(strconv.FormatInt(int64(keepalive), 10) + "s")
+        keepaliveserver, err := time.ParseDuration(strconv.FormatInt(int64(5), 10) + "s")
         if err != nil {
         if err != nil {
                 log.Fatalf("Issue with format of keepalive value. Please update netconfig: %v", err)
                 log.Fatalf("Issue with format of keepalive value. Please update netconfig: %v", err)
         }
         }
@@ -239,7 +240,14 @@ func GetPeers(macaddress string, network string, server string, dualstack bool,
                         }
                         }
                         allowedips = append(allowedips, addr6)
                         allowedips = append(allowedips, addr6)
                 }
                 }
-                if keepalive != 0 {
+                if nodecfg.Name == "netmaker" {
+                peer = wgtypes.PeerConfig{
+                        PublicKey: pubkey,
+                        PersistentKeepaliveInterval: &keepaliveserver,
+                        ReplaceAllowedIPs: true,
+                        AllowedIPs: allowedips,
+                        }
+		} else if keepalive != 0 {
                 peer = wgtypes.PeerConfig{
                 peer = wgtypes.PeerConfig{
                         PublicKey: pubkey,
                         PublicKey: pubkey,
                         PersistentKeepaliveInterval: &keepalivedur,
                         PersistentKeepaliveInterval: &keepalivedur,

+ 1 - 1
netclient/wireguard/kernel.go

@@ -232,7 +232,7 @@ func InitWireguard(node *nodepb.Node, privkey string, peers []wgtypes.PeerConfig
 	nodeport = int(node.Listenport)
 	nodeport = int(node.Listenport)
 
 
 	conf := wgtypes.Config{}
 	conf := wgtypes.Config{}
-	if nodecfg.UDPHolePunch == "yes" {
+	if nodecfg.UDPHolePunch == "yes" && nodecfg.Name != "netmaker" {
 		conf = wgtypes.Config{
 		conf = wgtypes.Config{
 			PrivateKey:   &key,
 			PrivateKey:   &key,
 			ReplacePeers: true,
 			ReplacePeers: true,