From e11a15dfff5211ac29288475868cf08a8d54af66 Mon Sep 17 00:00:00 2001 From: afeiszli Date: Sat, 10 Jul 2021 20:11:19 -0400 Subject: [PATCH] figured out how to get GRPC working --- controllers/nodeHttpController.go | 2 +- models/node.go | 2 +- netclient/functions/join.go | 19 +++++++++++++++++-- 3 files changed, 19 insertions(+), 4 deletions(-) diff --git a/controllers/nodeHttpController.go b/controllers/nodeHttpController.go index 722ad135..149f5299 100644 --- a/controllers/nodeHttpController.go +++ b/controllers/nodeHttpController.go @@ -578,7 +578,7 @@ func CreateEgressGateway(gateway models.EgressGatewayRequest) (models.Node, erro } var nodechange models.Node nodechange.IsEgressGateway = true - nodechange.EgressGatewayRange = gateway.RangeString + nodechange.EgressGatewayRanges = gateway.Ranges nodechange.PostUp = "iptables -A FORWARD -i " + node.Interface + " -j ACCEPT; iptables -t nat -A POSTROUTING -o " + gateway.Interface + " -j MASQUERADE" nodechange.PostDown = "iptables -D FORWARD -i " + node.Interface + " -j ACCEPT; iptables -t nat -D POSTROUTING -o " + gateway.Interface + " -j MASQUERADE" if gateway.PostUp != "" { diff --git a/models/node.go b/models/node.go index 884fa1cd..14dff64a 100644 --- a/models/node.go +++ b/models/node.go @@ -45,7 +45,7 @@ type Node struct { IsPending bool `json:"ispending" bson:"ispending"` IsEgressGateway bool `json:"isegressgateway" bson:"isegressgateway"` IsIngressGateway bool `json:"isingressgateway" bson:"isingressgateway"` - EgressGatewayRange string `json:"egressgatewayrange" bson:"egressgatewayrange"` + EgressGatewayRanges []string `json:"egressgatewayranges" bson:"egressgatewayranges"` IngressGatewayRange string `json:"ingressgatewayrange" bson:"ingressgatewayrange"` PostChanges string `json:"postchanges" bson:"postchanges"` } diff --git a/netclient/functions/join.go b/netclient/functions/join.go index fe6dc37a..298e2371 100644 --- a/netclient/functions/join.go +++ b/netclient/functions/join.go @@ -1,6 +1,8 @@ package functions import ( + "google.golang.org/grpc/credentials" + "crypto/tls" "fmt" "errors" "context" @@ -139,11 +141,18 @@ func JoinNetwork(cfg config.ClientConfig) error { } var wcclient nodepb.NodeServiceClient var requestOpts grpc.DialOption - requestOpts = grpc.WithInsecure() - conn, err := grpc.Dial(cfg.Server.GRPCAddress, requestOpts) + log.Println("cant believe we made it") + //requestOpts = grpc.WithInsecure() + h2creds := credentials.NewTLS(&tls.Config{NextProtos: []string{"h2"}}) + requestOpts = grpc.WithTransportCredentials(h2creds) + + conn, err := grpc.Dial(cfg.Server.GRPCAddress, requestOpts) + if err != nil { log.Fatalf("Unable to establish client connection to localhost:50051: %v", err) } + log.Println("cant believe we made it 2") + wcclient = nodepb.NewNodeServiceClient(conn) postnode := &nodepb.Node{ @@ -165,12 +174,16 @@ func JoinNetwork(cfg config.ClientConfig) error { if err != nil { return err } + log.Println("cant believe we made it 3") + res, err := wcclient.CreateNode( context.TODO(), &nodepb.CreateNodeReq{ Node: postnode, }, ) + log.Println(res) + log.Println("cant believe we made it 3.5") if err != nil { return err } @@ -179,6 +192,7 @@ func JoinNetwork(cfg config.ClientConfig) error { return err } + log.Println("cant believe we made it 3.75") if node.Dnsoff==true { cfg.Node.DNS = "yes" } @@ -189,6 +203,7 @@ func JoinNetwork(cfg config.ClientConfig) error { } node.Endpoint = node.Localaddress } + log.Println("cant believe we made it 4") err = config.ModConfig(node) if err != nil {