gravitl / netmaker

Netmaker makes networks with WireGuard. Netmaker automates fast, secure, and distributed virtual networks.
https://netmaker.io
Other
9.4k stars 547 forks source link

Support hub-and-spoke model #266

Closed rubencosta closed 3 years ago

rubencosta commented 3 years ago

I am currently using Netmaker for routing routing all traffic out of a server in which I control the IP address in order to whitelist that IP address in certain services. This way users that need access to those services only need to connect to the Netmaker network.

Current setup

Single node configured as ingress and egress gateway. Egress gateway ranges are 0.0.0.0/0. All other clients are added as external clients for the following reasons:

Proposal 1

Remove the check mentioned above.

Proposal 2

Invert the logic and configure wireguard so that certain IP addrs (the public endpoint IP addrs of the peers) are not present in AllowedIPs

Proposal 3

Allow defining domains in addition to IP ranges on the egress gateway config. This avoids the need to define a 0.0.0.0/0 egress gateway for my use case. (I can do the same manually but the IP addresses of the services are dynamic).

Priority

I would say proposal 1 is a must have just for the sake of supporting the internet gateway use-case with Netclient and proposal 3 would be really awesome to have.

0xdcarns commented 3 years ago

This is currently supported with ext clients and setting and ingress and egress gateway to 0.0.0.0 and default ext client DNS like 8.8.8.8.