Browse Source

removed allowedip for egress gateways

worker-9 4 years ago
parent
commit
013230eb1e
2 changed files with 14 additions and 18 deletions
  1. 1 1
      controllers/nodeHttpController.go
  2. 13 17
      netclient/server/grpc.go

+ 1 - 1
controllers/nodeHttpController.go

@@ -588,7 +588,7 @@ func deleteEgressGateway(w http.ResponseWriter, r *http.Request) {
 		returnErrorResponse(w, r, formatError(err, "internal"))
 		returnErrorResponse(w, r, formatError(err, "internal"))
 		return
 		return
 	}
 	}
-	functions.PrintUserLog(r.Header.Get("user"), "delete egress gateway "+nodeMac+" on network "+netid, 1)
+	functions.PrintUserLog(r.Header.Get("user"), "deleted egress gateway "+nodeMac+" on network "+netid, 1)
 	w.WriteHeader(http.StatusOK)
 	w.WriteHeader(http.StatusOK)
 	json.NewEncoder(w).Encode(node)
 	json.NewEncoder(w).Encode(node)
 }
 }

+ 13 - 17
netclient/server/grpc.go

@@ -4,7 +4,6 @@ import (
 	"context"
 	"context"
 	"crypto/tls"
 	"crypto/tls"
 	"encoding/json"
 	"encoding/json"
-	"fmt"
 	"log"
 	"log"
 	"net"
 	"net"
 	"strconv"
 	"strconv"
@@ -19,7 +18,6 @@ import (
 	"google.golang.org/grpc"
 	"google.golang.org/grpc"
 	"google.golang.org/grpc/credentials"
 	"google.golang.org/grpc/credentials"
 	"google.golang.org/grpc/metadata"
 	"google.golang.org/grpc/metadata"
-	//homedir "github.com/mitchellh/go-homedir"
 )
 )
 
 
 func getGrpcClient(cfg *config.ClientConfig) (nodepb.NodeServiceClient, error) {
 func getGrpcClient(cfg *config.ClientConfig) (nodepb.NodeServiceClient, error) {
@@ -82,7 +80,7 @@ func RemoveNetwork(network string) error {
 	}
 	}
 	servercfg := cfg.Server
 	servercfg := cfg.Server
 	node := cfg.Node
 	node := cfg.Node
-	fmt.Println("Deleting remote node with MAC: " + node.MacAddress)
+	log.Println("Deleting remote node with MAC: " + node.MacAddress)
 
 
 	var wcclient nodepb.NodeServiceClient
 	var wcclient nodepb.NodeServiceClient
 	var requestOpts grpc.DialOption
 	var requestOpts grpc.DialOption
@@ -115,9 +113,9 @@ func RemoveNetwork(network string) error {
 			)
 			)
 			if err != nil {
 			if err != nil {
 				log.Printf("Encountered error deleting node: %v", err)
 				log.Printf("Encountered error deleting node: %v", err)
-				fmt.Println(err)
+				log.Println(err)
 			} else {
 			} else {
-				fmt.Println("Deleted node " + node.MacAddress)
+				log.Println("Deleted node " + node.MacAddress)
 			}
 			}
 		}
 		}
 	}
 	}
@@ -188,7 +186,7 @@ func GetPeers(macaddress string, network string, server string, dualstack bool,
 	for _, node := range nodes {
 	for _, node := range nodes {
 		pubkey, err := wgtypes.ParseKey(node.PublicKey)
 		pubkey, err := wgtypes.ParseKey(node.PublicKey)
 		if err != nil {
 		if err != nil {
-			fmt.Println("error parsing key")
+			log.Println("error parsing key")
 			return peers, hasGateway, gateways, err
 			return peers, hasGateway, gateways, err
 		}
 		}
 
 
@@ -217,12 +215,11 @@ func GetPeers(macaddress string, network string, server string, dualstack bool,
 				gateways = append(gateways, iprange)
 				gateways = append(gateways, iprange)
 				_, ipnet, err := net.ParseCIDR(iprange)
 				_, ipnet, err := net.ParseCIDR(iprange)
 				if err != nil {
 				if err != nil {
-					fmt.Println("ERROR ENCOUNTERED SETTING GATEWAY")
-					fmt.Println("NOT SETTING GATEWAY")
-					fmt.Println(err)
+					log.Println("ERROR ENCOUNTERED SETTING GATEWAY")
 				} else {
 				} else {
-					fmt.Println("    Gateway Range: " + iprange)
-					allowedips = append(allowedips, *ipnet)
+					if !ipnet.Contains(net.IP(node.Endpoint)) {
+						allowedips = append(allowedips, *ipnet)
+					}
 				}
 				}
 			}
 			}
 		}
 		}
@@ -270,8 +267,7 @@ func GetPeers(macaddress string, network string, server string, dualstack bool,
 		if err == nil {
 		if err == nil {
 			peers = append(peers, extPeers...)
 			peers = append(peers, extPeers...)
 		} else {
 		} else {
-			fmt.Println("ERROR RETRIEVING EXTERNAL PEERS")
-			fmt.Println(err)
+			log.Println("ERROR RETRIEVING EXTERNAL PEERS")
 		}
 		}
 	}
 	}
 	return peers, hasGateway, gateways, err
 	return peers, hasGateway, gateways, err
@@ -301,15 +297,15 @@ func GetExtPeers(macaddress string, network string, server string, dualstack boo
 	ctx := context.Background()
 	ctx := context.Background()
 	ctx, err = auth.SetJWT(wcclient, network)
 	ctx, err = auth.SetJWT(wcclient, network)
 	if err != nil {
 	if err != nil {
-		fmt.Println("Failed to authenticate.")
+		log.Println("Failed to authenticate.")
 		return peers, err
 		return peers, err
 	}
 	}
 	var header metadata.MD
 	var header metadata.MD
 
 
 	responseObject, err := wcclient.GetExtPeers(ctx, req, grpc.Header(&header))
 	responseObject, err := wcclient.GetExtPeers(ctx, req, grpc.Header(&header))
 	if err != nil {
 	if err != nil {
-		fmt.Println("Error retrieving peers")
-		fmt.Println(err)
+		log.Println("Error retrieving peers")
+		log.Println(err)
 		return nil, err
 		return nil, err
 	}
 	}
 	var extPeers []models.Node
 	var extPeers []models.Node
@@ -319,7 +315,7 @@ func GetExtPeers(macaddress string, network string, server string, dualstack boo
 	for _, extPeer := range extPeers {
 	for _, extPeer := range extPeers {
 		pubkey, err := wgtypes.ParseKey(extPeer.PublicKey)
 		pubkey, err := wgtypes.ParseKey(extPeer.PublicKey)
 		if err != nil {
 		if err != nil {
-			fmt.Println("error parsing key")
+			log.Println("error parsing key")
 			return peers, err
 			return peers, err
 		}
 		}