Merge pull request #632 from gravitl/master

update workflows branch to master
This commit is contained in:
Matthew R Kasun 2022-01-19 18:24:56 -05:00 committed by GitHub
commit 11ebab103e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
127 changed files with 4196 additions and 8418 deletions

View file

@ -8,7 +8,7 @@
<p align="center">
<a href="https://github.com/gravitl/netmaker/releases">
<img src="https://img.shields.io/badge/Version-0.9.3-informational?style=flat-square" />
<img src="https://img.shields.io/badge/Version-0.9.4-informational?style=flat-square" />
</a>
<a href="https://hub.docker.com/r/gravitl/netmaker/tags">
<img src="https://img.shields.io/docker/pulls/gravitl/netmaker" />

View file

@ -3,7 +3,7 @@ version: "3.4"
services:
netmaker:
container_name: netmaker
image: gravitl/netmaker:v0.9.3
image: gravitl/netmaker:v0.9.4
volumes:
- /var/run/dbus/system_bus_socket:/var/run/dbus/system_bus_socket
- /run/systemd/system:/run/systemd/system

View file

@ -3,7 +3,7 @@ version: "3.4"
services:
netmaker:
container_name: netmaker
image: gravitl/netmaker:v0.9.3
image: gravitl/netmaker:v0.9.4
volumes:
- dnsconfig:/root/config/dnsconfig
- /usr/bin/wg:/usr/bin/wg

View file

@ -3,7 +3,7 @@ version: "3.4"
services:
netmaker:
container_name: netmaker
image: gravitl/netmaker:v0.9.3
image: gravitl/netmaker:v0.9.4
volumes:
- /usr/bin/wg:/usr/bin/wg
- sqldata:/root/data

View file

@ -11,7 +11,7 @@ services:
container_name: netmaker
depends_on:
- rqlite
image: gravitl/netmaker:v0.9.3
image: gravitl/netmaker:v0.9.4
volumes: # Volume mounts necessary for CLIENT_MODE to control wireguard networking on host (except dnsconfig, which is where dns config files are stored for use by CoreDNS)
- dnsconfig:/root/config/dnsconfig # Netmaker writes Corefile to this location, which gets mounted by CoreDNS for DNS configuration.
- /usr/bin/wg:/usr/bin/wg

View file

@ -3,7 +3,7 @@ version: "3.4"
services:
netmaker:
container_name: netmaker
image: gravitl/netmaker:v0.9.3
image: gravitl/netmaker:v0.9.4
volumes:
- /var/run/dbus/system_bus_socket:/var/run/dbus/system_bus_socket
- /run/systemd/system:/run/systemd/system

View file

@ -227,7 +227,7 @@ func createNetwork(w http.ResponseWriter, r *http.Request) {
if servercfg.IsClientMode() != "off" {
var success bool
success, err = serverctl.AddNetwork(network.NetID)
success, err = serverctl.AddNetwork(&network)
if err != nil || !success {
logic.DeleteNetwork(network.NetID)
if err == nil {

View file

@ -13,7 +13,7 @@ import (
)
func serverHandlers(r *mux.Router) {
r.HandleFunc("/api/server/addnetwork/{network}", securityCheckServer(true, http.HandlerFunc(addNetwork))).Methods("POST")
// r.HandleFunc("/api/server/addnetwork/{network}", securityCheckServer(true, http.HandlerFunc(addNetwork))).Methods("POST")
r.HandleFunc("/api/server/getconfig", securityCheckServer(false, http.HandlerFunc(getConfig))).Methods("GET")
r.HandleFunc("/api/server/removenetwork/{network}", securityCheckServer(true, http.HandlerFunc(removeNetwork))).Methods("DELETE")
}
@ -91,19 +91,21 @@ func getConfig(w http.ResponseWriter, r *http.Request) {
//w.WriteHeader(http.StatusOK)
}
func addNetwork(w http.ResponseWriter, r *http.Request) {
// Set header
w.Header().Set("Content-Type", "application/json")
// func addNetwork(w http.ResponseWriter, r *http.Request) {
// // Set header
// w.Header().Set("Content-Type", "application/json")
// get params
var params = mux.Vars(r)
// // get params
// var params = mux.Vars(r)
// var networkName = params["network"]
// var networkSettings, err := logic.GetNetwork(netwnetworkName)
success, err := serverctl.AddNetwork(params["network"])
// success, err := serverctl.AddNetwork(params["network"])
if err != nil || !success {
json.NewEncoder(w).Encode("Could not add server to network " + params["network"])
return
}
// if err != nil || !success {
// json.NewEncoder(w).Encode("Could not add server to network " + params["network"])
// return
// }
json.NewEncoder(w).Encode("Server added to network " + params["network"])
}
// json.NewEncoder(w).Encode("Server added to network " + params["network"])
// }

View file

@ -1,19 +1,33 @@
{
# LetsEncrypt account
email YOUR_EMAIL
# LetsEncrypt account
email YOUR_EMAIL
}
# Dashboard
https://dashboard.NETMAKER_BASE_DOMAIN {
reverse_proxy http://127.0.0.1:8082
# Apply basic security headers
header {
# Enable HTTP Strict Transport Security (HSTS)
Strict-Transport-Security "max-age=31536000;"
# Enable cross-site filter (XSS) and tell browser to block detected attacks
X-XSS-Protection "1; mode=block"
# Disallow the site to be rendered within a frame on a foreign domain (clickjacking protection)
X-Frame-Options "SAMEORIGIN"
# Prevent search engines from indexing
X-Robots-Tag "none"
# Remove the server name
-Server
}
reverse_proxy http://127.0.0.1:8082
}
# API
https://api.NETMAKER_BASE_DOMAIN {
reverse_proxy http://127.0.0.1:8081
reverse_proxy http://127.0.0.1:8081
}
# gRPC
https://grpc.NETMAKER_BASE_DOMAIN {
reverse_proxy h2c://127.0.0.1:50051
reverse_proxy h2c://127.0.0.1:50051
}

View file

@ -0,0 +1,39 @@
FROM debian:buster as builder
# add glib support daemon manager
RUN apt update -y && apt install -y wget bash gcc musl-dev openssl golang git build-essential libmnl-dev iptables
RUN wget -O go.tgz https://dl.google.com/go/go1.17.1.linux-amd64.tar.gz
RUN tar -C /usr/local -xzf go.tgz
WORKDIR /usr/local/go/src
RUN chmod +x make.bash
RUN ./make.bash
ENV PATH="/usr/local/go/bin:$PATH"
ENV GOPATH=/opt/go/
ENV PATH=$PATH:$GOPATH/bin
WORKDIR /app
COPY . .
ENV GO111MODULE=auto
RUN GOOS=linux GOARCH=amd64 CGO_ENABLED=0 /usr/local/go/bin/go build -ldflags="-w -s" -o netclient-app netclient/main.go
FROM debian:buster
WORKDIR /root/
RUN apt update -y && apt install -y bash curl wget traceroute procps dnsutils iptables openresolv iproute2
COPY --from=builder /app/netclient-app ./netclient
COPY --from=builder /app/scripts/netclient.sh .
RUN chmod 0755 netclient && chmod 0755 netclient.sh
ENTRYPOINT ["/bin/sh", "./netclient.sh"]

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
docs/_build/doctrees/upgrades.doctree vendored Normal file

Binary file not shown.

Binary file not shown.

View file

@ -1,4 +1,4 @@
# Sphinx build info version 1
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
config: 7d73735f557dbf90d3004bb9dfde743b
config: cabfca75dd75f057ab5b5002a892c622
tags: 645f666f9bcd5a90fca523b33c5a78b7

BIN
docs/_build/html/_images/egress1.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 117 KiB

BIN
docs/_build/html/_images/egress2.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 116 KiB

BIN
docs/_build/html/_images/egress3.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

BIN
docs/_build/html/_images/egress4.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

BIN
docs/_build/html/_images/egress5.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

BIN
docs/_build/html/_images/egress7.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 102 KiB

BIN
docs/_build/html/_images/ingress1.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

BIN
docs/_build/html/_images/relay1.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 119 KiB

BIN
docs/_build/html/_images/ui-1.jpg vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 88 KiB

BIN
docs/_build/html/_images/ui-10.jpg vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

BIN
docs/_build/html/_images/ui-11.jpg vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB

BIN
docs/_build/html/_images/ui-2.jpg vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 79 KiB

BIN
docs/_build/html/_images/ui-3.jpg vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 109 KiB

BIN
docs/_build/html/_images/ui-4.jpg vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 131 KiB

BIN
docs/_build/html/_images/ui-5.jpg vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 181 KiB

BIN
docs/_build/html/_images/ui-6.jpg vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

BIN
docs/_build/html/_images/ui-7.jpg vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 45 KiB

BIN
docs/_build/html/_images/ui-8.jpg vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 94 KiB

View file

@ -1,6 +1,6 @@
===============
==========
About
===============
==========
What is Netmaker?
==================

View file

@ -12,7 +12,7 @@ Authentication
==============
API calls must be authenticated via a header of the format `-H "Authorization: Bearer <YOUR_SECRET_KEY>"` There are two methods to obtain YOUR_SECRET_KEY:
1. Using the masterkey. By default, this value is "secret key," but you should change this on your instance and keep it secure. This value can be set via env var at startup or in a config file (config/environments/< env >.yaml). See the [general usage](./USAGE.md) documentation for more details.
2. Using a JWT recieved for a node. This can be retrieved by calling the `/api/nodes/<network>/authenticate` endpoint, as documented below.
2. Using a JWT received for a node. This can be retrieved by calling the `/api/nodes/<network>/authenticate` endpoint, as documented below.
Format of Calls for Curl

View file

@ -21,7 +21,7 @@ WireGuard
WireGuard is a relatively new but very important technology which was recently added to the Linux kernel. WireGuard creates very fast but simple encrypted tunnels between devices. From the `WireGuard <https://www.wireguard.com/>`_ website, "it might be regarded as the most secure, easiest to use, and simplest VPN solution in the industry."
Previous solutions like OpenVPN and IPSec are considerably more heavy and complex, while being less performant. All existing VPN tunnelling solutions will cause a significant increase in your network latency. WireGuard is the first to achieve near over-the-line network speeds, meaning you see no signigifant performance impact. With the release of WireGuard, there is little reason to use any other existing tunnel encryption technology.
Previous solutions like OpenVPN and IPSec are considerably more heavy and complex, while being less performant. All existing VPN tunneling solutions will cause a significant increase in your network latency. WireGuard is the first to achieve near over-the-line network speeds, meaning you see no significant performance impact. With the release of WireGuard, there is little reason to use any other existing tunnel encryption technology.
Mesh Network
-------------
@ -56,7 +56,7 @@ Netmaker does a lot of work to set configurations for you, so that you don't hav
Node
------
A machine in a Netmaker network, which is managed by the Netclient, is referred to as a Node, as you will see in the UI. A Node can be a VM, a bare metal server, a desktop computer, an IoT device, or any other number of internet-connected machines on which the netclient is installed. A node is simply an endpoint in the network, which can send traffic to all the other nodes, and recieve traffic from all of the other nodes.
A machine in a Netmaker network, which is managed by the Netclient, is referred to as a Node, as you will see in the UI. A Node can be a VM, a bare metal server, a desktop computer, an IoT device, or any other number of internet-connected machines on which the netclient is installed. A node is simply an endpoint in the network, which can send traffic to all the other nodes, and receive traffic from all of the other nodes.
SystemD
-------
@ -107,7 +107,7 @@ The check in process is what allows Netmaker to create dynamic mesh networks. As
Database (sqlite, rqlite, postgres)
-------------------------------------
As of v0.8, Netmaker uses sqlite by default as a database. It can also use PostgreSQL, or rqlite, a distributed (RAFT consensus) databaseand. Netmaker interacts with this database to store and retrieve information about nodes, networks, and users.
As of v0.8, Netmaker uses sqlite by default as a database. It can also use PostgreSQL, or rqlite, a distributed (RAFT consensus) database. Netmaker interacts with this database to store and retrieve information about nodes, networks, and users.
Additional database support (besides sqlite and rqlite) is very easy to implement for special use cases. Netmaker uses simple key value lookups to run the networks, and the database was designed to be extensible, so support for key-value stores and other SQL-based databases can be achieved by changing a single file.
@ -153,7 +153,7 @@ Below is a high level, step-by-step overview of the flow of communications withi
9. Netmaker server verifies information and creates the node, setting default values for any missing information.
10. Timestamp is set for the network (see #16).
11. Netmaker returns settings as response to netclient. Some settings may be added or modified based on the network.
12. Netclient recieves response. If successful, it takes any additional info returned from Netmaker and configures the local system/WireGuard
12. Netclient receives response. If successful, it takes any additional info returned from Netmaker and configures the local system/WireGuard
13. Netclient sends another request to Netmaker's GRPC server, this time to retrieve the peers list (all other clients in the network).
14. Netmaker sends back peers list, including current known configurations of all nodes in network.
15. Netclient configures WireGuard with this information. At this point, the node is fully configured as a part of the network and should be able to reach the other nodes via private address.

View file

@ -1,6 +1,6 @@
====================
Client Installation
====================
================================
Advanced Client Installation
================================
This document tells you how to install the netclient on machines that will be a part of your Netmaker network, as well as non-compatible systems.

View file

@ -0,0 +1,96 @@
=====================================
Egress Gateway
=====================================
Introduction
===============
.. image:: images/egress1.png
:width: 80%
:alt: Gateway
:align: center
Netmaker allows your clients to reach external networks via an Egress Gateway. The Egress Gateway is a netclient which has been deployed to a server or router with access to a given subnet.
In the netmaker UI, that node is set as an "egress gateway." Range(s) are specified which this node has access to. Once created, all clients (and all new ext clients) in the network will be able to reach those ranges via the gateway.
Configuring an Egress Gateway
==================================
Configuring an Egress Gateway is very straight forward. As a prerequisite, you must know what you are trying to access remotely. For instance:
- a VPC
- a Kubernetes network
- a home network
- an office network
- a data center
After you have determined this, you must next deploy a netclient in a compatible location where the network is accessible. For instance, a Linux server or router in the office, or a Kubernetes worker node. This machine should be stable and relatively static (not expected to change its IP frequently or shut down unexpectedly).
Next, you must determine which interface to use in order to reach the internal network. As an example, lets say there is a machine in the network at 10.10.10.2, and you have deployed the netclient on a different machine. You can run
.. code-block::
ip route get 10.10.10.2
This should return the interface used to reach that address (e.x. "eth2")
Finally, once you have determined the interface, the subnet, and deployed your netclient, you can go to your Netmaker UI and set the node as a gateway.
.. image:: images/egress7.png
:width: 80%
:alt: Gateway
:align: center
At this point simply insert the range(s) into the first field, and the interface name into the second field, and click "create".
.. image:: images/ui-6.jpg
:width: 80%
:alt: Gateway
:align: center
Netmaker will set iptables rules on the node, which will then implement these rules, allowing it to route traffic from the network to the specified range(s).
Use Cases
============
1) Remote Access
-------------------
A common scenario would be to combine this with an "Ingress Gateway" to create a simple method for accessing a home or office network. Such a setup would typically have only two nodes: the ingress and egress gateways. The Ingress Gateway should usually be globally accessible, which makes the Netmaker server itself a good candidate. This means you need only the netmaker server as the Ingress, and one additional machine (in the private network you wish to reach), as the Egress.
.. image:: images/egress2.png
:width: 80%
:alt: Gateway
:align: center
In some scenarios, a single node will act as both ingress and egress! For instance, you can enable acess to a VPC using your Netmaker server, deployed with a public IP. Traffic comes in over the public IP (encrypted of course) and then routes to the VPC subnet via the egress gateway.
.. image:: images/egress3.png
:width: 50%
:alt: Gateway
:align: center
2) VPN / NAT Gateway
-----------------------
Most people think of a VPN as a remote server that keeps your internet traffic secure while you browse the web, or as a tool for accessing internet services in another country,using a VPN server based in that country.
These are not typical use cases for Netmaker, but can be easily enabled.
**The most important note is this: Do not use 0.0.0.0/0 as your egress gateway.** This is how you typically set up a "standard" VPN with WireGuard, however, it will not work with Netmaker. The Netclient specifically ignores gateways that overlap with local ranges (for efficiency ranges). 0.0.0.0 overlaps with everything, so it is always ignored.
Instead, use the following list of ranges:
.. code-block::
0.0.0.0/5,8.0.0.0/7,11.0.0.0/8,12.0.0.0/6,16.0.0.0/4,32.0.0.0/3,64.0.0.0/2,128.0.0.0/3,160.0.0.0/5,168.0.0.0/6,172.0.0.0/12,172.32.0.0/11,172.64.0.0/10,172.128.0.0/9,173.0.0.0/8,174.0.0.0/7,176.0.0.0/4,192.0.0.0/9,192.128.0.0/11,192.160.0.0/13,192.169.0.0/16,192.170.0.0/15,192.172.0.0/14,192.176.0.0/12,192.192.0.0/10,193.0.0.0/8,194.0.0.0/7,196.0.0.0/6,200.0.0.0/5,208.0.0.0/4
This list encompasses the standard "public" network ranges, and ignores the standard "private" network ranges.
Simply paste this list into your "egress gateway ranges" and your clients should begin routing public-facing traffic over the gateway.
.. image:: images/egress5.png
:width: 50%
:alt: Gateway
:align: center

View file

@ -1,10 +1,15 @@
================
External Clients
================
=====================================
Ingress + External Clients
=====================================
Introduction
===============
.. image:: images/ingress1.png
:width: 50%
:alt: Gateway
:align: center
Netmaker allows for "external clients" to reach into a network and access services via an Ingress Gateway. So what is an "external client"? An external client is any machine which cannot or should not be meshed. This can include:
- Phones
- Laptops

View file

@ -23,68 +23,71 @@ Netmaker is a platform for creating and managing fast, secure, and dynamic virtu
This documentation covers Netmaker's :doc:`installation <./server-installation>`, :doc:`usage <./usage>`, :doc:`troubleshooting <./support>`, and customization, as well as reference documents for the :doc:`API <./api>`, UI and Agent configuration. All of the `source code <https://github.com/gravitl/netmaker>`_ for Netmaker is on GitHub.
.. :raw-html:`<br />`
.. .. raw:: html
.. :file: youtube-1.html
**For Kubernetes-specific guidance, please see the** `Netmaker Kubernetes Documentation. <https://nm-k8s.readthedocs.io>`_
About
------
A quick overview of Netmaker, explaining what it is, how it works, and why you should be using it.
--------
High-level information about what Netmaker is and how it works.
.. toctree::
:maxdepth: 2
about
Architecture
---------------
architecture
A technical overview of Netmaker, including design decisions and limitations.
Getting Started
------------------------------------
How to install Netmaker and set up your first network.
.. toctree::
:maxdepth: 2
architecture
Install
------------------------------------
Choose the right install method for you.
.. toctree::
:maxdepth: 1
install
Quick Start
---------------
A quick start guide to getting up and running with Netmaker and WireGuard as quickly as possible.
.. toctree::
:maxdepth: 2
quick-start
.. toctree::
:maxdepth: 2
getting-started
Quick Start Nginx (depreciated)
------------------------------------
Ingress, Egress, and Relays
------------------------------
An older guide to getting up and running with Netmaker using Nginx as quickly as possible.
How to give machines outside of the Netmaker network access to network resources via an Ingress Gateway:
.. toctree::
:maxdepth: 1
:maxdepth: 2
quick-start-nginx
external-clients
Server Installation
--------------------
How to give machines inside the Netmaker network access to external network resources via an Egress Gateway:
.. toctree::
:maxdepth: 2
egress-gateway
How to make machines inside the network reachable if they are blocked by NAT/Firewall:
.. toctree::
:maxdepth: 2
relay-server
Kubernetes Documentation
---------------------------
.. toctree::
Kubernetes <https://nm-k8s.readthedocs.io>
`Netmaker Kubernetes Documentation <https://nm-k8s.readthedocs.io>`_
Advanced Server Installation
-------------------------------
A detailed guide to installing the Netmaker server (API, DB, UI, DNS), and configuration options.
@ -93,6 +96,17 @@ A detailed guide to installing the Netmaker server (API, DB, UI, DNS), and confi
server-installation
Advanced Client Installation
--------------------------------
A detailed guide to installing the Netmaker agent (netclient) on devices and configuration options.
.. toctree::
:maxdepth: 2
client-installation
Oauth Configuration
--------------------
@ -104,27 +118,7 @@ A simple guide to configuring OAuth for Netmaker.
oauth
Client Installation
--------------------
A detailed guide to installing the Netmaker agent (netclient) on devices and configuration options.
.. toctree::
:maxdepth: 2
client-installation
External Clients
--------------------
A detailed guide to give clients outside of the Netmaker network access to network resources.
.. toctree::
:maxdepth: 2
external-clients
Guides
External Guides
----------------
A handful of guides for use cases including site-to-site, Kubernetes, private DNS, and more.
@ -134,18 +128,37 @@ A handful of guides for use cases including site-to-site, Kubernetes, private DN
usage
UI Reference
---------------
A reference document for the Netmaker Server UI, with annotated screenshot detailing each field.
.. toctree::
:maxdepth: 2
ui-reference
API Reference
---------------
A reference document for the Netmaker Server API, and example API calls for various use cases.
**Coming Soon:** Swagger Documentation
.. toctree::
:maxdepth: 1
api
Upgrades
----------------
Upgrading the Netmaker server and clients.
.. toctree::
:maxdepth: 1
upgrades
Troubleshooting
----------------

View file

@ -35,7 +35,7 @@ Instructions for Microsoft Azure AD: https://oauth2-proxy.github.io/oauth2-proxy
Configuring Netmaker
======================
After you have configured your OAuth provider, take note of the CLIENT_ID and CLIENT_SECRET.
After you have configured your OAuth provider, take note of the CLIENT_ID and CLIENT_SECRET. If you are using Azure for oauth, you may also want to note down the Azure tenant ID you wish to use.
Next, Configure Netmaker with the following environment variables. If any are left blank, OAuth will fail.
@ -46,7 +46,7 @@ Next, Configure Netmaker with the following environment variables. If any are le
CLIENT_SECRET: "<client secret of your oauth provider>"
SERVER_HTTP_HOST: "api.<netmaker base domain>"
FRONTEND_URL: "https://dashboard.<netmaker base domain>"
AZURE_TENANT: "<only for azure, you may optionally specify the tenant for the OAuth>"
After restarting your server, the Netmaker logs will indicate if the OAuth provider was successfully initialized:

View file

@ -0,0 +1,36 @@
=====================================
Relay Servers
=====================================
Introduction
===============
.. image:: images/relay1.png
:width: 80%
:alt: Relay
:align: center
Sometimes nodes are in hard-to-reach places. Typically this will be due to a CGNAT, Double NAT, or restrictive firewall. In such scenarios, a direct peer-to-peer connection with all other nodes might be impossible.
For this reason, Netmaker has a Relay Server functionality. At any time you may designate a publicly reachable node (such as the Netmaker Server) as a Relay, and tell it which machines it should relay. Then, all traffic routing to and from that machine will go through the relay. This allows you to circumvent the above issues and ensure connectivity when direct measures do not work.
Configuring a Relay
==================================
To create a relay, you can use any node in your network, but it should have a public IP address (not behind a NAT). Your Netmaker server can be a relay server and makes for a good default choice if you are unsure of which node to select.
Simply click the relay button in the nodes list. Then, specify the nodes which it should relay. You can either enter the IP's directly, select from a list, or click "Select All."
.. image:: images/ui-7.jpg
:width: 80%
:alt: Relay
:align: center
If you choose "select all" this essentially turns your network into a hub-and-spoke network. All traffic now routes over the relay node. This can create a bottleneck and slow down your network, but in some scenarios may simplify network operations.
After creation, you can change the list of relayed nodes by clicking "edit node" and editing the list (Field #12 below).
.. image:: images/ui-5.jpg
:width: 40%
:alt: Relay
:align: center

View file

@ -5,25 +5,10 @@ Support
FAQ
======
Does/Will Netmaker Support X Operating System?
--------------------------------------------------
Netmaker is initially available on a limited number of operating systems for good reason: Every operating system is designed differently. With a small team, we can either focus on making Netmaker do a lot on a few number of operating systems, or a little on a bunch of operating systems. We chose the first option. You can view the System Compatibility docs for more info, but in general, you should only be using Netmaker on systemd linux right now.
However, via "external clients", any device that supports WireGuard can be added to the network.
In future iterations will expand the operating system support for Netclient, and devices that must use the "external client" feature can switch to Netclient.
How do I install the Netclient on X?
---------------------------------------
As per the above, there are many unsupported operating systems. You are still welcome to try, it is just an executable binary file after all. If the system is unix-based and has kernel WireGuard installed, netclient may very well mesh the device into the network. However, the service likely will encounter problems retrieving updates.
Is Netmaker a VPN like NordNPN?
--------------------------------
No. Netmaker makes Virtual Networks, which are technically VPNs, but different. It's more like a corporate VPN, or a VPC (if you're familiar with AWS).
No. Netmaker makes Virtual Networks, which are technically VPNs, but different. It's more like a corporate VPN, or a VPC (if you're familiar with AWS). Netmaker is often compared to OpenVPN, Tailscale, or Nebula.
If you're looking to achieve self-hosted web browsing, with functionality similar to NordVPN, ExpressVPN, Surfshark, Tunnelbear, or Private Internet Access, this is probably not the project for you. Technically, you can accomplish this with Netmaker, but it would be a little like using a all-terrain vehicle for stock car racing.
@ -34,23 +19,25 @@ https://github.com/pivpn/pivpn
https://github.com/subspacecloud/subspace
https://github.com/mullvad/mullvadvpn-app
Do you offer any enterprise support?
--------------------------------------
Do you have an 'Exit Nodes' feature?
---------------------------------------
If you are interested in enterprise support for your project, please contact info@gravitl.com.
Please see the :doc:`Egress Gateway <./egress-gateway>` documentation.
Do you offer any business or enterprise support?
---------------------------------------------------
Yes, please contact info@gravitl.com or visit https://gravitl.com/plans.
Why the SSPL License?
----------------------
We thought long and hard about the license. Ultimately, we think this is the best way to support and ensure the health of the project long term. The community deserves something that is well-maintained, and in order to do that, eventually we need some financial support. We won't do that by limiting the project, but we will offer some additional support, and hosted options for things people would end up paying for anyway (relay servers, load balancing support, backups).
As of now, we think the SSPL is the best way to ensure the long-term viability of the project, but we are regularly evaluating this to see if an OSI-approved license makes more sense.
While SSPL is not an OSI-approved open source license, it let's people generally run the project however they want, both for private use and business use, without running into the issue of someone else monetizing the project and making it financially untenable. We are working on making the guidelines clear, and will make sure that the license does not impact the communities ability to use and modify the project.
If you have concerns about the license leading to project restrictions down the road, just know that there are other paid, closed-source/closed-core options out there, so beyond not wanting to follow that path, we also don't think it's a good idea economically either. We firmly believe that having the project open is not only right, but the best option.
All that said, we will re-evaluate the license on a regular basis and determine if an OSI-approved license makes more sense. It's just easier to move from SSPL to another license than vice-versa.
We believe the SSPL lets most people run the project the way they want, for both for private use and business use, while giving us a path to maintain viability. We are working to make sure the guidelines clear, and do not want the license to impact the community's ability to use and modify the project.
If you believe the SSPL will negatively impact your ability to use the project, please do not hesitate to reach out.
Contact
===========

View file

@ -0,0 +1,184 @@
=================
UI Reference
=================
This page contains annotated screenshots of most UI components, detailing the configuration options of each field across Nodes, Networks, DNS, Ext Clients, Users, and more.
Dashboard
=================
.. image:: images/ui-1.jpg
:width: 80%
:alt: dashboard
:align: center
Networks
=================
Create
--------
.. image:: images/ui-2.jpg
:width: 80%
:alt: create network
:align: center
.. code-block::
(1) **Autofill:** Provides sensible defaults for network details and makes up a name.
(2) **Network Name:** The name of the network. Character limited, as this translates to the interface name on hosts (nm-<network name>)
(3) **Address Range:** The CIDR of the network. Must be a valid IPv4 Subnet and should be a private address range.
(4) **Udp Hole Punching:** Enables or disables "UDP Hole Punching" on the network. When on, clients will first reach out to the server. The server will keep track of public addresses / ports and send these to all other clients in the network. This increases NAT traversibility, but can also cause issues depending on the server environment (if server is in a private network, for example). Typically good to enable if clients will "roam" frequently or are user devices. Typically better to disable if most clients will be servers with well-defined endpoints / ports. If enabled, you can also disable UDP Hole Punching on any individual machine via the UI (see Node section) but it will be enabled by default.
(5) **Is Local Network:** Turn on if all clients in the network will be in the same "local" network. This is a very rare situation and depends on the use case. Almost always leave this off. Turn on if you are in a large data center with a large private address space over which clients should communicate. Can also enable if using a VPC and are treating a single client as "egress" for the VPC. If enabled, fill out the address range of the local network which should determine endpoints.
(6) **Is Dual Stack:** Turn on to add private ipv6 addresses to all clients in addition to their ipv4 addresses. Not typically necessary. If on, enter a private ipv6 address range to pull from.
Edit
--------
.. image:: images/ui-3.jpg
:width: 80%
:alt: edit network
:align: center
**NOTE:** With the exception of Address Ranges (1-2) any setting that affects nodes will not take effect on existing nodes. It will only set the settings on any **new** node, after the setting has been changed.
(1) **Address Range (ipv4):** The ipv4 private network CIDR. If edited, Netmaker will go through all nodes and update private addresses based on the new range.**
(2) **Address Range (ipv6):** The ipv6 private network CIDR. If edited, Netmaker will go through all nodes and update private addresses based on the new range.**
(3) **Local Range:** Only relevant if "Is Local" was switched on during creation. Specifies the local range that nodes will base their Endpoint off of (note: if a node cannot find an enpoint within the range it will fallback to public ip).
(4) **Display Name:** The display name of the network. Network Name cannot be changed (acts as a unique ID) but display name can be changed. Only effects appearance in UI.
(5) **Default Interface:** The default network interface name configured on each node. This defaults to "nm-<network name>".
(6) **Default Port:** The default WireGuard port each node will attempt to use. Nodes will iterate up from this port until they find a free port.
(7) **Default PostUp:** A default post-up command to run on each node (after interface has been configured). Disabled by default to prevent RCE vulnerabilities.
(8) **Default PostDown:** A default post-down command to run on each node (after interface has been removed). Disabled by default to prevent RCE vulnerabilities.
(9) **Default Keepalive:** How often nodes should send packets to keep connection alive with all peers (in seconds).
(10) **Default Ext Client DNS:** If set, adds a "DNS=<value>" line to each ext client config. Set this to add DNS to clients. Typically will set this to the server's public IP.
(11) **Default MTU:** Default MTU for interfaces of all clients in network. Can be useful to set lower in certain difficult environments such as Kubernetes.
(12) **Allow Node Signup Without Keys:** Allows nodes to join the network without a valid Access Key. Nodes will be put in "pending" status until approved via UI by an admin. Useful if an arbitrary number of people need to join the network and there is no easy way to distribute keys to users.
(13) **Is Dual Stack:** Enable the Dual Stack feature of networks and add ipv6 addresses to nodes.
(14) **Default Saveconfig:** Typically ignore this. Sets the SaveConfig field on wireguard config.
(15) **UDP Hole Punching:** Whether or not UDP Hole Punching is turned on (see Network Create notes). Only effects new nodes. Enables or disables "UDP Hole Punching" on the network. When on, clients will first reach out to the server. The server will keep track of public addresses / ports and send these to all other clients in the network. This increases NAT traversibility, but can also cause issues depending on the server environment (if server is in a private network, for example). Typically good to enable if clients will "roam" frequently or are user devices. Typically better to disable if most clients will be servers with well-defined endpoints / ports. If enabled, you can also disable UDP Hole Punching on any individual machine via the UI (see Node section) but it will be enabled by default.
Nodes
========
Node List
-------------
.. image:: images/ui-4.jpg
:width: 80%
:alt: dashboard
:align: center
(1) **Search Nodes:** Look up a node by name.
(2) **Select Network:** Filter nodes by network.
(3) **Node Name:** Name of node. By default set to hostname of machine.
(4) **IP Address:** Private IP of node within network.
(5) **Network:** Network the node is in.
(6) **Egress:** Indicates if node is an egress gateway. Click to convert into egress gateway. Egress gateways route traffic from the network into a specific subnet or subnets. Egress gateways should be servers in a static location with a reliable IP.
(7) **Ingress:** Indicates if the node is an ingress. Click to convert into ingress gateway. Ingress gateways route traffic into the network over the WireGuard interface using "ext clients," which are static WireGuard config files. Ingress gateways should be servers in a static location with a reliable IP.
(8) **Relay:** Indicates if the node is a relay. Click to convert into relay. Relays route traffic to specified nodes for the network (typically hard to reach / CGNAT'ted nodes. Relays should be servers in a static location with a reliable IP.
(9) **Status:** Indicates how recently the node checked into the server. Displays "Warning" after 5 minutes and "Error" after 30 minutes without a check in. Does **not** indicate the health of the node's virtual network connections.
(10) **Delete:** Delete the node.
Create Egress
---------------
.. image:: images/ui-6.jpg
:width: 80%
:alt: dashboard
:align: center
(1) **Egress Gateway Ranges:** A comma-separated list of the subnets for which the gateway will route traffic. For instance, with Kubernetes this could be both the Service Network and Pod Network. For a standard VPN, Netmaker can use a list of the public CIDR's (see the docs). Typically, this will be something like a data center network, VPC, or home network.
(2) **Interface:** The interface on the machine used to access the provided egress gateway ranges. For instance, on a typical linux machine, the interface for public traffic would be "eth0". Usually you will need to check on the machine first to find the right interface. For instance, on Linux, you can find the interface by running this: ip route get <address in subnet>.
Create Relay
-------------
.. image:: images/ui-7.jpg
:width: 80%
:alt: dashboard
:align: center
(1) **Relay Addresses:** Specify which private addresses (of nodes) that this node should relay for.
(2) **Select Nodes:** Rather than specify by IP, you can just select from a list of node names instead.
(3) **Select All:** Rather than select a list, you can "select all", which converts the network from "pure mesh" into "hub-and-spoke", meaning there are no p2p connections, everything goes through this relay first.
Edit Node / Node Details
--------------------------
.. image:: images/ui-5.jpg
:width: 80%
:alt: dashboard
:align: center
(1) **IP Address:** The primary private IP address of the node. Assigned automatically by Netmaker but can be changed to whatever you want within the Network CIDR.
(2) **IPv6 Address:** (Only if running dual stack) the primary private IPv6 address of the node. Assigned automatically by Netmaker but can be changed to whatever you want within the Network CIDR.
(3) **Local Address:** The "locally reachable" address of the node. Other nodes will take note of this to see if this node is on the same network. If so, they will use this address instead of the public "Endpoint." If running a few nodes inside of a VPC, home network, or similar, make sure the local address is populated correctly for faster and more secure inter-node communication.
(4) **Node Name:** The name of the node within the network. Hostname by default but can be anything (within the character limits).
(5) **Port:** The port used by the node locally. **This value is ignored if UDP Hole Punching is on,** because port is set dynamically every time interface is created. If UDP Hole Punching is off, the port can be set to any reasonable (and available) value you'd like for the local machine. Typi
(6) **Public Key:** (Uneditable) The public key of the node, distributed to other peers in the network.
(7) **Endpoint:** The (typically public) IP of the machine, which peers will use to reach it, in combination with the port. If changing this value, make sure Roaming is turned off, since otherwise, the node will check to see if there is a change in the public IP regularly and update it.
(8) **PostUp:** Uneditable by default to disable RCE. Commands to run after the interface is created. If an ingress or egress gateway are created, this field will populate automatically with appropriate iptables commands.
(9) **PostDown:** Uneditable by default to disable RCE. Commands to run after the interface is brought down. If an ingress or egress gateway are created, this field will populate automatically with appropriate iptables commands.
(10) **Allowed IPs:** Additional private addresses given to the node (in addition to the IPAddress and IPv6Address). Useful in some scenarios where there is a known address a server should have. Any IPs added here will be tacked onto the AllowedIPs of other peers, so this node will be shown to have multiple reachable private addresses.
(11) **Persistent Keepalive:** How often packets are sent to keep connections open with other peers.
(12) **Relay Addresses:** If "Relay" is enabled on this node, this field can be edited to add and remove nodes from the relay. So if you are currently relaying just one node but wish to relay an additional node, just add it's private IP here.
(13) **Node Expiration Datetime:** If a node should become invalid after a length of time, you can set it in this field, after which time, it will lose access to the network and will not populate to other nodes. Useful for scenarios where temporary access is granted to 3rd parties.
(14) **Last Checkin:** Unix timestamp of the last time the node checked in with the server. Used to determine generic health of node.
(15) **Mac Address:** The hardware mac address of the machine. Used to be used as the unique ID, but is being depreciated.
(16) **Network:** The network this 1node belongs to.
(17) **Egress Gateway Ranges:** If Egress is enabled, the gateway ranges that this machine routes to.
(18) **Local Range:** If IsLocal has been enabled on the network, this is the local range in which the node will look for a private address from it's local interfaces, to use as an endpoint.
(19) **Node Operating System:** The OS of the machine.
(20) **MTU:** The MTU that the node will use on the interface. If "wg show" displays a valid handshake but pings are not working, many times the issue is MTU. Making this value lower can solve this issue. Some typical values are 1024, 1280, and 1420.
(21) **Saveconfig:** Usually best to ignore this. Sets the "SaveConfig" value on wireguard config files.
(22) **Is Static:** Ports and Endpoints can be changed automatically by the netclient. Switching on "Is Static" means the port and endpoint will stay the same until you change it. This can be good to set if the machine is a server sitting in a location that is not expected to change. It is also good to have Is Static switched on for Ingress, Egress, and Relay Servers, since they should be in a reliable location.
(23) **UDP Hole Punching:** If on, the node's port will be randomized. The port and endpoint distributed to other nodes are no longer determined by the settings in this file. Instead, the node will "check in" with the server regularly. The server will track the IP and port used to open a connection, and store these values. These values then get distributed to nodes. This is helpful for getting around NAT's which may obscure the node's location.
(24) **Is DNS On:** DNS is solely handled by resolvectl at the moment, which is on many Linux distributions. For anything else, this value should remain off. If you wish to configure DNS for non-compatible systems, you must do so manually.
(25) **Dualstack:** Whether or not this machine should have both a private ipv4 address and ipv6 address.
(26) **Is Local:** If on, will only communicate over the local address (Assumes IsLocal tuned to 'yes' on the network level.)
(27) **Roaming:** If on, will check regularly for changes in the Endpoint and modify the Endpoint value appropriately. This allows a client to "roam" between wifi networks and maintain a connection. Good to keep on for machines where the public address may change.
(28) **IPforwarding:** If on, ipforwarding is enabled on the machine. Should almost always be kept on.
Ext Clients
================
.. image:: images/ui-8.jpg
:width: 80%
:alt: dashboard
:align: center
(1) **Gateway Name / IP Address:** Information about which Node is the Ingress Gateway.
(2) **Add External Client:** Button to generate a new ext client.
(3) **Client ID:** The randomly-generated name of the client. Click on the ID to change the name to something sensible.
(4) **IP Address:** The private ip address of the ext client.
(5) **QR Code:** If joining form iOS or Android, open the WireGuard app and scan the QR code to join the network.
(6) **Download Client Configuration:** If joining from a laptop/desktop, download the config file and run "wg-quick up /path/to/config"
(7) **Delete:** Delete the ext client and remove its network access.
DNS
===========
.. image:: images/ui-10.jpg
:width: 80%
:alt: dashboard
:align: center
(1) **DNS Name:** The private DNS entry. Must end in ".<network name>" (added automatically). This avoids conflicts between networks.
(2) **IP Address:** The IP address of the entry. Can be anything (public addresses too!) but typically a node IP.
(3) **Select Node Address:** Select a node name to populate its IP address automatically.
Create / Edit Users
=====================
.. image:: images/ui-11.jpg
:width: 80%
:alt: dashboard
:align: center
(1) **Username:** Specify Username.
(2) **Password:** Specify password.
(3) **Confirm Password:** Confirm password.
(4) **Make Admin:** Make into a server admin or "super admin", which has access to all networks and server-level settings.
(5) **Networks:** If not made into an "admin", select the networks which this user has access to. The user will be a "network admin" of these networks, but other networks will be invisible/unaccessible.

View file

@ -0,0 +1,40 @@
=====================================
Upgrades
=====================================
Introduction
===============
As of 0.9.4, upgrading Netmaker is a manual process. This is expected to be automated in the future, but for now is still a relatively straightforward process.
Upgrade the Server (netmaker)
==================================
To upgrade the server, you only need to change the docker image versions:
1. `ssh root@my-server-ip`
2. `docker compose down`
3. `vi docker-compose.yml`
4. Change gravitl/netmaker:<version> and gravitl/netmaker-ui:<version> to the new version.
5. Save and close the file
6. `docker-compose up -d`
Upgrade the Clients (netclient)
==================================
To upgrade the client, you must get the new client binary and place it in /etc/netclient. Depending on the new vs. old version, there may be minor incompatibilities (discussed below).
1. Vists https://github.com/gravitl/netmaker/releases/
2. Find the appropriate binary for your machine.
3. Download. E.x.: `wget https://github.com/gravitl/netmaker/releases/download/vX.X.X/netclient-myversion`
4. Rename binary to `netclient` and move to folder. E.x.: `mv netclient-myversion /etc/netclient/netclient`
5. `netclient --version` (confirm it's the correct version)
6. `netclient pull`
This last step helps ensure any newly added fields are now present. You may run into a "panic" based on missing fields and your version mismatch. In such cases, you can either:
1. Add the missing field to /etc/netclient/config/netconfig-yournetwork and then run "netclient checkin"
or
2. Leave and rejoin the network

View file

@ -1,16 +1,12 @@
==============
Using Netmaker
==============
=================
External Guides
=================
Netmaker has many different use cases, from a basic virtual network to an office gateway VPN to a Kubernetes underlay. It can be a bit overwhelming to figure out where to start. If you don't find your use case here, but think Netmaker is a good fit, let us know!
External Tutorials
==================
Members of the community have created helpful tutorials for getting started with Netmaker. Below are some selected tutorials on different topics.
Netmaker has many use cases, from a basic virtual network to an office gateway VPN to a Kubernetes underlay. It can be a bit overwhelming to figure out where to start. If you don't find your use case here, but think Netmaker is a good fit, let us know!
Video Tutorials
---------------
==================
* `Intro/Overview <https://youtu.be/PWLPT320Ybo>`_: Tutorial on first-time usage, setting up a mesh network.
* `Site-to-Site Gateway <https://youtu.be/krCKBJhwwDk>`_: Tutorial on setting up site-to-site connections, allowing peers to access external networks via gateways.
* `IPv6 and Private DNS <https://youtu.be/b4diaKWUcXI>`_: Tutorial on dual-stack IPv6 in Netmaker and Private DNS management (separate topics).
@ -18,7 +14,8 @@ Video Tutorials
Written Tutorials
-----------------
==================
* `K3s Cross-cloud cluster <https://itnext.io/how-to-deploy-a-single-kubernetes-cluster-across-multiple-clouds-using-k3s-and-wireguard-a5ae176a6e81>`_: Tutorial on setting up cross-cloud K3s clusters using Netmaker.
* `MicroK8s Cross-cloud cluster <https://itnext.io/how-to-deploy-a-cross-cloud-kubernetes-cluster-with-built-in-disaster-recovery-bbce27fcc9d7>`_: Tutorial on setting up cross-cloud MicroK8s clusters using Netmaker.
* `Secure access to private services <https://afeiszli.medium.com/how-to-enable-secure-access-to-your-hosted-services-using-netmaker-and-wireguard-1b3282d4b7aa>`_: Tutorial on setting up secure Nextcloud with Netmaker.

View file

@ -1,6 +1,6 @@
var DOCUMENTATION_OPTIONS = {
URL_ROOT: document.getElementById("documentation_options").getAttribute('data-url_root'),
VERSION: '0.9.0',
VERSION: '0.9.4',
LANGUAGE: 'None',
COLLAPSE_INDEX: false,
BUILDER: 'html',

View file

@ -46,7 +46,7 @@
<title>About &#8212; Netmaker 0.9.0 documentation</title>
<title>About &#8212; Netmaker 0.9.4 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/material.css" />
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
@ -81,7 +81,7 @@
<nav class="md-header-nav md-grid">
<div class="md-flex navheader">
<div class="md-flex__cell md-flex__cell--shrink">
<a href="index.html" title="Netmaker 0.9.0 documentation"
<a href="index.html" title="Netmaker 0.9.4 documentation"
class="md-header-nav__button md-logo">
<i class="md-icon">&#xe869</i>
@ -167,7 +167,7 @@
<nav class="md-tabs" data-md-component="tabs">
<div class="md-tabs__inner md-grid">
<ul class="md-tabs__list">
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.0 documentation</a></li>
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.4 documentation</a></li>
</ul>
</div>
</nav>
@ -179,13 +179,13 @@
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--primary" data-md-level="0">
<label class="md-nav__title md-nav__title--site" for="__drawer">
<a href="index.html" title="Netmaker 0.9.0 documentation" class="md-nav__button md-logo">
<a href="index.html" title="Netmaker 0.9.4 documentation" class="md-nav__button md-logo">
<i class="md-icon">&#xe869</i>
</a>
<a href="index.html"
title="Netmaker 0.9.0 documentation">Netmaker Docs</a>
title="Netmaker 0.9.4 documentation">Netmaker Docs</a>
</label>
<div class="md-nav__source">
<a href="https://github.com/gravitl/netmaker/" title="Go to repository" class="md-source" data-md-source="github">
@ -258,43 +258,8 @@
<a href="architecture.html" class="md-nav__link">Architecture</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="architecture.html#core-concepts" class="md-nav__link">Core Concepts</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#components" class="md-nav__link">Components</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#technical-process" class="md-nav__link">Technical Process</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#compatible-systems-for-netclient" class="md-nav__link">Compatible Systems for Netclient</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#limitations" class="md-nav__link">Limitations</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -307,491 +272,113 @@
<a href="quick-start.html" class="md-nav__link">Quick Install</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prerequisites" class="md-nav__link">0. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prepare-dns" class="md-nav__link">1. Prepare DNS</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#open-firewall" class="md-nav__link">3. Open Firewall</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="getting-started.html" class="md-nav__link">Getting Started</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="getting-started.html#setup" class="md-nav__link">Setup</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#deploy-nodes" class="md-nav__link">Deploy Nodes</a>
<a href="external-clients.html" class="md-nav__link">Ingress + External Clients</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#manage-nodes" class="md-nav__link">Manage Nodes</a>
<a href="egress-gateway.html" class="md-nav__link">Egress Gateway</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-the-netclient" class="md-nav__link">Uninstalling the netclient</a>
<a href="relay-server.html" class="md-nav__link">Relay Servers</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-netmaker" class="md-nav__link">Uninstalling Netmaker</a>
<a href="https://nm-k8s.readthedocs.io" class="md-nav__link">Kubernetes</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html" class="md-nav__link">Install with Nginx (depreciated)</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start-nginx.html#introduction" class="md-nav__link">0. Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prerequisites" class="md-nav__link">1. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prepare-vm" class="md-nav__link">3. Prepare VM</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="server-installation.html" class="md-nav__link">Advanced Server Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="server-installation.html#system-compatibility" class="md-nav__link">System Compatibility</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#server-configuration-reference" class="md-nav__link">Server Configuration Reference</a>
<a href="client-installation.html" class="md-nav__link">Advanced Client Installation</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#dns-mode-setup" class="md-nav__link">DNS Mode Setup</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#docker-compose-install" class="md-nav__link">Docker Compose Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#linux-install-without-docker" class="md-nav__link">Linux Install without Docker</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#kubernetes-install" class="md-nav__link">Kubernetes Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#nginx-reverse-proxy-setup-with-https" class="md-nav__link">Nginx Reverse Proxy Setup with https</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-kubernetes" class="md-nav__link">Highly Available Installation (Kubernetes)</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-vms-bare-metal" class="md-nav__link">Highly Available Installation (VMs/Bare Metal)</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="oauth.html" class="md-nav__link">Integrating OAuth</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="oauth.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-your-provider" class="md-nav__link">Configuring your provider</a>
<a href="usage.html" class="md-nav__link">External Guides</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-netmaker" class="md-nav__link">Configuring Netmaker</a>
<a href="ui-reference.html" class="md-nav__link">UI Reference</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-user-permissions" class="md-nav__link">Configuring User Permissions</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="client-installation.html" class="md-nav__link">Client Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="client-installation.html#introduction-to-netclient" class="md-nav__link">Introduction to Netclient</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#notes-on-windows" class="md-nav__link">Notes on Windows</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#modes-and-system-compatibility" class="md-nav__link">Modes and System Compatibility</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#prerequisites" class="md-nav__link">Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#configuration" class="md-nav__link">Configuration</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#installation" class="md-nav__link">Installation</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#managing-netclient" class="md-nav__link">Managing Netclient</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="external-clients.html" class="md-nav__link">External Clients</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="external-clients.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-an-ingress-gateway" class="md-nav__link">Configuring an Ingress Gateway</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#adding-clients-to-a-gateway" class="md-nav__link">Adding Clients to a Gateway</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-dns-for-ext-clients-optional" class="md-nav__link">Configuring DNS for Ext Clients (OPTIONAL)</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="usage.html" class="md-nav__link">Using Netmaker</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="usage.html#external-tutorials" class="md-nav__link">External Tutorials</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="api.html" class="md-nav__link">API Reference</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="api.html#api-usage" class="md-nav__link">API Usage</a>
</li>
<li class="md-nav__item">
<a href="api.html#authentication" class="md-nav__link">Authentication</a>
<a href="upgrades.html" class="md-nav__link">Upgrades</a>
</li>
<li class="md-nav__item">
<a href="api.html#format-of-calls-for-curl" class="md-nav__link">Format of Calls for Curl</a>
</li>
<li class="md-nav__item">
<a href="api.html#api-documentation" class="md-nav__link">API Documentation</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html" class="md-nav__link">Troubleshooting</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="troubleshoot.html#common-issues" class="md-nav__link">Common Issues</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#server" class="md-nav__link">Server</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#ui" class="md-nav__link">UI</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#netclient" class="md-nav__link">Netclient</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#coredns" class="md-nav__link">CoreDNS</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="support.html" class="md-nav__link">Support</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="support.html#faq" class="md-nav__link">FAQ</a>
</li>
<li class="md-nav__item">
<a href="support.html#contact" class="md-nav__link">Contact</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="conduct.html" class="md-nav__link">Code of Conduct</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="conduct.html#our-pledge" class="md-nav__link">Our Pledge</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-standards" class="md-nav__link">Our Standards</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-responsibilities" class="md-nav__link">Our Responsibilities</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#scope" class="md-nav__link">Scope</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#enforcement" class="md-nav__link">Enforcement</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#attribution" class="md-nav__link">Attribution</a>
</li></ul>
</li>
<li class="md-nav__item">

View file

@ -46,7 +46,7 @@
<title>API Reference &#8212; Netmaker 0.9.0 documentation</title>
<title>API Reference &#8212; Netmaker 0.9.4 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/material.css" />
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
@ -56,8 +56,8 @@
<link rel="author" title="About these documents" href="about.html" />
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
<link rel="next" title="Troubleshooting" href="troubleshoot.html" />
<link rel="prev" title="Using Netmaker" href="usage.html" />
<link rel="next" title="Upgrades" href="upgrades.html" />
<link rel="prev" title="UI Reference" href="ui-reference.html" />
@ -81,7 +81,7 @@
<nav class="md-header-nav md-grid">
<div class="md-flex navheader">
<div class="md-flex__cell md-flex__cell--shrink">
<a href="index.html" title="Netmaker 0.9.0 documentation"
<a href="index.html" title="Netmaker 0.9.4 documentation"
class="md-header-nav__button md-logo">
<i class="md-icon">&#xe869</i>
@ -167,7 +167,7 @@
<nav class="md-tabs" data-md-component="tabs">
<div class="md-tabs__inner md-grid">
<ul class="md-tabs__list">
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.0 documentation</a></li>
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.4 documentation</a></li>
</ul>
</div>
</nav>
@ -179,13 +179,13 @@
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--primary" data-md-level="0">
<label class="md-nav__title md-nav__title--site" for="__drawer">
<a href="index.html" title="Netmaker 0.9.0 documentation" class="md-nav__button md-logo">
<a href="index.html" title="Netmaker 0.9.4 documentation" class="md-nav__button md-logo">
<i class="md-icon">&#xe869</i>
</a>
<a href="index.html"
title="Netmaker 0.9.0 documentation">Netmaker Docs</a>
title="Netmaker 0.9.4 documentation">Netmaker Docs</a>
</label>
<div class="md-nav__source">
<a href="https://github.com/gravitl/netmaker/" title="Go to repository" class="md-source" data-md-source="github">
@ -209,72 +209,16 @@
<li class="md-nav__item">
<a href="about.html" class="md-nav__link">About</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="about.html" class="md-nav__link">1. About</a>
<a href="about.html#what-is-netmaker" class="md-nav__link">What is Netmaker?</a>
</li>
<li class="md-nav__item">
<a href="about.html#how-does-netmaker-work" class="md-nav__link">How Does Netmaker Work?</a>
</li>
<li class="md-nav__item">
<a href="about.html#use-cases-for-netmaker" class="md-nav__link">Use Cases for Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="architecture.html" class="md-nav__link">Architecture</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="architecture.html#core-concepts" class="md-nav__link">Core Concepts</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#components" class="md-nav__link">Components</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#technical-process" class="md-nav__link">Technical Process</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#compatible-systems-for-netclient" class="md-nav__link">Compatible Systems for Netclient</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#limitations" class="md-nav__link">Limitations</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -287,344 +231,71 @@
<a href="quick-start.html" class="md-nav__link">Quick Install</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prerequisites" class="md-nav__link">0. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prepare-dns" class="md-nav__link">1. Prepare DNS</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#open-firewall" class="md-nav__link">3. Open Firewall</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="getting-started.html" class="md-nav__link">Getting Started</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="getting-started.html#setup" class="md-nav__link">Setup</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#deploy-nodes" class="md-nav__link">Deploy Nodes</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#manage-nodes" class="md-nav__link">Manage Nodes</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-the-netclient" class="md-nav__link">Uninstalling the netclient</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-netmaker" class="md-nav__link">Uninstalling Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html" class="md-nav__link">Install with Nginx (depreciated)</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start-nginx.html#introduction" class="md-nav__link">0. Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prerequisites" class="md-nav__link">1. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prepare-vm" class="md-nav__link">3. Prepare VM</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="server-installation.html" class="md-nav__link">Advanced Server Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="server-installation.html#system-compatibility" class="md-nav__link">System Compatibility</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#server-configuration-reference" class="md-nav__link">Server Configuration Reference</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#dns-mode-setup" class="md-nav__link">DNS Mode Setup</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#docker-compose-install" class="md-nav__link">Docker Compose Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#linux-install-without-docker" class="md-nav__link">Linux Install without Docker</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#kubernetes-install" class="md-nav__link">Kubernetes Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#nginx-reverse-proxy-setup-with-https" class="md-nav__link">Nginx Reverse Proxy Setup with https</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-kubernetes" class="md-nav__link">Highly Available Installation (Kubernetes)</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-vms-bare-metal" class="md-nav__link">Highly Available Installation (VMs/Bare Metal)</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="oauth.html" class="md-nav__link">Integrating OAuth</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="oauth.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-your-provider" class="md-nav__link">Configuring your provider</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-netmaker" class="md-nav__link">Configuring Netmaker</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-user-permissions" class="md-nav__link">Configuring User Permissions</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="client-installation.html" class="md-nav__link">Client Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="client-installation.html#introduction-to-netclient" class="md-nav__link">Introduction to Netclient</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#notes-on-windows" class="md-nav__link">Notes on Windows</a>
<a href="external-clients.html" class="md-nav__link">Ingress GW + External Clients</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#modes-and-system-compatibility" class="md-nav__link">Modes and System Compatibility</a>
<a href="egress-gateway.html" class="md-nav__link">Egress Gateway</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#prerequisites" class="md-nav__link">Prerequisites</a>
<a href="relay-server.html" class="md-nav__link">Relay Servers</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#configuration" class="md-nav__link">Configuration</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#installation" class="md-nav__link">Installation</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#managing-netclient" class="md-nav__link">Managing Netclient</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="external-clients.html" class="md-nav__link">External Clients</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="external-clients.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-an-ingress-gateway" class="md-nav__link">Configuring an Ingress Gateway</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#adding-clients-to-a-gateway" class="md-nav__link">Adding Clients to a Gateway</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-dns-for-ext-clients-optional" class="md-nav__link">Configuring DNS for Ext Clients (OPTIONAL)</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="usage.html" class="md-nav__link">Using Netmaker</a>
<ul class="md-nav__list">
</li>
<li class="md-nav__item">
<a href="usage.html#external-tutorials" class="md-nav__link">External Tutorials</a>
<a href="ui-reference.html" class="md-nav__link">UI Reference</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -704,118 +375,34 @@
</li></ul>
</li>
<li class="md-nav__item">
<a href="upgrades.html" class="md-nav__link">Upgrades</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html" class="md-nav__link">Troubleshooting</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="troubleshoot.html#common-issues" class="md-nav__link">Common Issues</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#server" class="md-nav__link">Server</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#ui" class="md-nav__link">UI</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#netclient" class="md-nav__link">Netclient</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#coredns" class="md-nav__link">CoreDNS</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="support.html" class="md-nav__link">Support</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="support.html#faq" class="md-nav__link">FAQ</a>
</li>
<li class="md-nav__item">
<a href="support.html#contact" class="md-nav__link">Contact</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="conduct.html" class="md-nav__link">Code of Conduct</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="conduct.html#our-pledge" class="md-nav__link">Our Pledge</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-standards" class="md-nav__link">Our Standards</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-responsibilities" class="md-nav__link">Our Responsibilities</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#scope" class="md-nav__link">Scope</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#enforcement" class="md-nav__link">Enforcement</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#attribution" class="md-nav__link">Attribution</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -891,7 +478,7 @@
<h2 id="authentication">Authentication<a class="headerlink" href="#authentication" title="Permalink to this headline"></a></h2>
<p>API calls must be authenticated via a header of the format <cite>-H “Authorization: Bearer &lt;YOUR_SECRET_KEY&gt;</cite> There are two methods to obtain YOUR_SECRET_KEY:
1. Using the masterkey. By default, this value is “secret key,” but you should change this on your instance and keep it secure. This value can be set via env var at startup or in a config file (config/environments/&lt; env &gt;.yaml). See the [general usage](./USAGE.md) documentation for more details.
2. Using a JWT recieved for a node. This can be retrieved by calling the <cite>/api/nodes/&lt;network&gt;/authenticate</cite> endpoint, as documented below.</p>
2. Using a JWT received for a node. This can be retrieved by calling the <cite>/api/nodes/&lt;network&gt;/authenticate</cite> endpoint, as documented below.</p>
<h2 id="format-of-calls-for-curl">Format of Calls for Curl<a class="headerlink" href="#format-of-calls-for-curl" title="Permalink to this headline"></a></h2>
@ -1003,7 +590,7 @@
<div class="md-footer-nav">
<nav class="md-footer-nav__inner md-grid">
<a href="usage.html" title="Using Netmaker"
<a href="ui-reference.html" title="UI Reference"
class="md-flex md-footer-nav__link md-footer-nav__link--prev"
rel="prev">
<div class="md-flex__cell md-flex__cell--shrink">
@ -1012,17 +599,17 @@
<div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
<span class="md-flex__ellipsis">
<span
class="md-footer-nav__direction"> Previous </span> Using Netmaker </span>
class="md-footer-nav__direction"> Previous </span> UI Reference </span>
</div>
</a>
<a href="troubleshoot.html" title="Troubleshooting"
<a href="upgrades.html" title="Upgrades"
class="md-flex md-footer-nav__link md-footer-nav__link--next"
rel="next">
<div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title"><span
class="md-flex__ellipsis"> <span
class="md-footer-nav__direction"> Next </span> Troubleshooting </span>
class="md-footer-nav__direction"> Next </span> Upgrades </span>
</div>
<div class="md-flex__cell md-flex__cell--shrink"><i
class="md-icon md-icon--arrow-forward md-footer-nav__button"></i>

View file

@ -46,7 +46,7 @@
<title>Architecture &#8212; Netmaker 0.9.0 documentation</title>
<title>Architecture &#8212; Netmaker 0.9.4 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/material.css" />
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
@ -81,7 +81,7 @@
<nav class="md-header-nav md-grid">
<div class="md-flex navheader">
<div class="md-flex__cell md-flex__cell--shrink">
<a href="index.html" title="Netmaker 0.9.0 documentation"
<a href="index.html" title="Netmaker 0.9.4 documentation"
class="md-header-nav__button md-logo">
<i class="md-icon">&#xe869</i>
@ -167,7 +167,7 @@
<nav class="md-tabs" data-md-component="tabs">
<div class="md-tabs__inner md-grid">
<ul class="md-tabs__list">
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.0 documentation</a></li>
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.4 documentation</a></li>
</ul>
</div>
</nav>
@ -179,13 +179,13 @@
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--primary" data-md-level="0">
<label class="md-nav__title md-nav__title--site" for="__drawer">
<a href="index.html" title="Netmaker 0.9.0 documentation" class="md-nav__button md-logo">
<a href="index.html" title="Netmaker 0.9.4 documentation" class="md-nav__button md-logo">
<i class="md-icon">&#xe869</i>
</a>
<a href="index.html"
title="Netmaker 0.9.0 documentation">Netmaker Docs</a>
title="Netmaker 0.9.4 documentation">Netmaker Docs</a>
</label>
<div class="md-nav__source">
<a href="https://github.com/gravitl/netmaker/" title="Go to repository" class="md-source" data-md-source="github">
@ -210,29 +210,8 @@
<a href="about.html" class="md-nav__link">About</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="about.html#what-is-netmaker" class="md-nav__link">What is Netmaker?</a>
</li>
<li class="md-nav__item">
<a href="about.html#how-does-netmaker-work" class="md-nav__link">How Does Netmaker Work?</a>
</li>
<li class="md-nav__item">
<a href="about.html#use-cases-for-netmaker" class="md-nav__link">Use Cases for Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -337,491 +316,113 @@
<a href="quick-start.html" class="md-nav__link">Quick Install</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prerequisites" class="md-nav__link">0. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prepare-dns" class="md-nav__link">1. Prepare DNS</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#open-firewall" class="md-nav__link">3. Open Firewall</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="getting-started.html" class="md-nav__link">Getting Started</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="getting-started.html#setup" class="md-nav__link">Setup</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#deploy-nodes" class="md-nav__link">Deploy Nodes</a>
<a href="external-clients.html" class="md-nav__link">Ingress + External Clients</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#manage-nodes" class="md-nav__link">Manage Nodes</a>
<a href="egress-gateway.html" class="md-nav__link">Egress Gateway</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-the-netclient" class="md-nav__link">Uninstalling the netclient</a>
<a href="relay-server.html" class="md-nav__link">Relay Servers</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-netmaker" class="md-nav__link">Uninstalling Netmaker</a>
<a href="https://nm-k8s.readthedocs.io" class="md-nav__link">Kubernetes</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html" class="md-nav__link">Install with Nginx (depreciated)</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start-nginx.html#introduction" class="md-nav__link">0. Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prerequisites" class="md-nav__link">1. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prepare-vm" class="md-nav__link">3. Prepare VM</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="server-installation.html" class="md-nav__link">Advanced Server Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="server-installation.html#system-compatibility" class="md-nav__link">System Compatibility</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#server-configuration-reference" class="md-nav__link">Server Configuration Reference</a>
<a href="client-installation.html" class="md-nav__link">Advanced Client Installation</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#dns-mode-setup" class="md-nav__link">DNS Mode Setup</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#docker-compose-install" class="md-nav__link">Docker Compose Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#linux-install-without-docker" class="md-nav__link">Linux Install without Docker</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#kubernetes-install" class="md-nav__link">Kubernetes Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#nginx-reverse-proxy-setup-with-https" class="md-nav__link">Nginx Reverse Proxy Setup with https</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-kubernetes" class="md-nav__link">Highly Available Installation (Kubernetes)</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-vms-bare-metal" class="md-nav__link">Highly Available Installation (VMs/Bare Metal)</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="oauth.html" class="md-nav__link">Integrating OAuth</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="oauth.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-your-provider" class="md-nav__link">Configuring your provider</a>
<a href="usage.html" class="md-nav__link">External Guides</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-netmaker" class="md-nav__link">Configuring Netmaker</a>
<a href="ui-reference.html" class="md-nav__link">UI Reference</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-user-permissions" class="md-nav__link">Configuring User Permissions</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="client-installation.html" class="md-nav__link">Client Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="client-installation.html#introduction-to-netclient" class="md-nav__link">Introduction to Netclient</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#notes-on-windows" class="md-nav__link">Notes on Windows</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#modes-and-system-compatibility" class="md-nav__link">Modes and System Compatibility</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#prerequisites" class="md-nav__link">Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#configuration" class="md-nav__link">Configuration</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#installation" class="md-nav__link">Installation</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#managing-netclient" class="md-nav__link">Managing Netclient</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="external-clients.html" class="md-nav__link">External Clients</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="external-clients.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-an-ingress-gateway" class="md-nav__link">Configuring an Ingress Gateway</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#adding-clients-to-a-gateway" class="md-nav__link">Adding Clients to a Gateway</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-dns-for-ext-clients-optional" class="md-nav__link">Configuring DNS for Ext Clients (OPTIONAL)</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="usage.html" class="md-nav__link">Using Netmaker</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="usage.html#external-tutorials" class="md-nav__link">External Tutorials</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="api.html" class="md-nav__link">API Reference</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="api.html#api-usage" class="md-nav__link">API Usage</a>
</li>
<li class="md-nav__item">
<a href="api.html#authentication" class="md-nav__link">Authentication</a>
<a href="upgrades.html" class="md-nav__link">Upgrades</a>
</li>
<li class="md-nav__item">
<a href="api.html#format-of-calls-for-curl" class="md-nav__link">Format of Calls for Curl</a>
</li>
<li class="md-nav__item">
<a href="api.html#api-documentation" class="md-nav__link">API Documentation</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html" class="md-nav__link">Troubleshooting</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="troubleshoot.html#common-issues" class="md-nav__link">Common Issues</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#server" class="md-nav__link">Server</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#ui" class="md-nav__link">UI</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#netclient" class="md-nav__link">Netclient</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#coredns" class="md-nav__link">CoreDNS</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="support.html" class="md-nav__link">Support</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="support.html#faq" class="md-nav__link">FAQ</a>
</li>
<li class="md-nav__item">
<a href="support.html#contact" class="md-nav__link">Contact</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="conduct.html" class="md-nav__link">Code of Conduct</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="conduct.html#our-pledge" class="md-nav__link">Our Pledge</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-standards" class="md-nav__link">Our Standards</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-responsibilities" class="md-nav__link">Our Responsibilities</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#scope" class="md-nav__link">Scope</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#enforcement" class="md-nav__link">Enforcement</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#attribution" class="md-nav__link">Attribution</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -903,7 +504,7 @@
<h3 id="wireguard">WireGuard<a class="headerlink" href="#wireguard" title="Permalink to this headline"></a></h3>
<p>WireGuard is a relatively new but very important technology which was recently added to the Linux kernel. WireGuard creates very fast but simple encrypted tunnels between devices. From the <a class="reference external" href="https://www.wireguard.com/">WireGuard</a> website, “it might be regarded as the most secure, easiest to use, and simplest VPN solution in the industry.”</p>
<p>Previous solutions like OpenVPN and IPSec are considerably more heavy and complex, while being less performant. All existing VPN tunnelling solutions will cause a significant increase in your network latency. WireGuard is the first to achieve near over-the-line network speeds, meaning you see no signigifant performance impact. With the release of WireGuard, there is little reason to use any other existing tunnel encryption technology.</p>
<p>Previous solutions like OpenVPN and IPSec are considerably more heavy and complex, while being less performant. All existing VPN tunneling solutions will cause a significant increase in your network latency. WireGuard is the first to achieve near over-the-line network speeds, meaning you see no significant performance impact. With the release of WireGuard, there is little reason to use any other existing tunnel encryption technology.</p>
<h3 id="mesh-network">Mesh Network<a class="headerlink" href="#mesh-network" title="Permalink to this headline"></a></h3>
@ -923,7 +524,7 @@
<h3 id="node">Node<a class="headerlink" href="#node" title="Permalink to this headline"></a></h3>
<p>A machine in a Netmaker network, which is managed by the Netclient, is referred to as a Node, as you will see in the UI. A Node can be a VM, a bare metal server, a desktop computer, an IoT device, or any other number of internet-connected machines on which the netclient is installed. A node is simply an endpoint in the network, which can send traffic to all the other nodes, and recieve traffic from all of the other nodes.</p>
<p>A machine in a Netmaker network, which is managed by the Netclient, is referred to as a Node, as you will see in the UI. A Node can be a VM, a bare metal server, a desktop computer, an IoT device, or any other number of internet-connected machines on which the netclient is installed. A node is simply an endpoint in the network, which can send traffic to all the other nodes, and receive traffic from all of the other nodes.</p>
<h3 id="systemd">SystemD<a class="headerlink" href="#systemd" title="Permalink to this headline"></a></h3>
@ -955,7 +556,7 @@
<h3 id="database-sqlite-rqlite-postgres">Database (sqlite, rqlite, postgres)<a class="headerlink" href="#database-sqlite-rqlite-postgres" title="Permalink to this headline"></a></h3>
<p>As of v0.8, Netmaker uses sqlite by default as a database. It can also use PostgreSQL, or rqlite, a distributed (RAFT consensus) databaseand. Netmaker interacts with this database to store and retrieve information about nodes, networks, and users.</p>
<p>As of v0.8, Netmaker uses sqlite by default as a database. It can also use PostgreSQL, or rqlite, a distributed (RAFT consensus) database. Netmaker interacts with this database to store and retrieve information about nodes, networks, and users.</p>
<p>Additional database support (besides sqlite and rqlite) is very easy to implement for special use cases. Netmaker uses simple key value lookups to run the networks, and the database was designed to be extensible, so support for key-value stores and other SQL-based databases can be achieved by changing a single file.</p>
@ -991,7 +592,7 @@
<li><p>Netmaker server verifies information and creates the node, setting default values for any missing information.</p></li>
<li><p>Timestamp is set for the network (see #16).</p></li>
<li><p>Netmaker returns settings as response to netclient. Some settings may be added or modified based on the network.</p></li>
<li><p>Netclient recieves response. If successful, it takes any additional info returned from Netmaker and configures the local system/WireGuard</p></li>
<li><p>Netclient receives response. If successful, it takes any additional info returned from Netmaker and configures the local system/WireGuard</p></li>
<li><p>Netclient sends another request to Netmakers GRPC server, this time to retrieve the peers list (all other clients in the network).</p></li>
<li><p>Netmaker sends back peers list, including current known configurations of all nodes in network.</p></li>
<li><p>Netclient configures WireGuard with this information. At this point, the node is fully configured as a part of the network and should be able to reach the other nodes via private address.</p></li>

View file

@ -46,7 +46,7 @@
<title>Client Installation &#8212; Netmaker 0.9.0 documentation</title>
<title>Advanced Client Installation &#8212; Netmaker 0.9.4 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/material.css" />
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
@ -56,8 +56,8 @@
<link rel="author" title="About these documents" href="about.html" />
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
<link rel="next" title="External Clients" href="external-clients.html" />
<link rel="prev" title="Integrating OAuth" href="oauth.html" />
<link rel="next" title="Integrating OAuth" href="oauth.html" />
<link rel="prev" title="Advanced Server Installation" href="server-installation.html" />
@ -81,7 +81,7 @@
<nav class="md-header-nav md-grid">
<div class="md-flex navheader">
<div class="md-flex__cell md-flex__cell--shrink">
<a href="index.html" title="Netmaker 0.9.0 documentation"
<a href="index.html" title="Netmaker 0.9.4 documentation"
class="md-header-nav__button md-logo">
<i class="md-icon">&#xe869</i>
@ -94,7 +94,7 @@
<div class="md-flex__cell md-flex__cell--stretch">
<div class="md-flex__ellipsis md-header-nav__title" data-md-component="title">
<span class="md-header-nav__topic">Netmaker Docs</span>
<span class="md-header-nav__topic"> Client Installation </span>
<span class="md-header-nav__topic"> Advanced Client Installation </span>
</div>
</div>
<div class="md-flex__cell md-flex__cell--shrink">
@ -167,7 +167,7 @@
<nav class="md-tabs" data-md-component="tabs">
<div class="md-tabs__inner md-grid">
<ul class="md-tabs__list">
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.0 documentation</a></li>
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.4 documentation</a></li>
</ul>
</div>
</nav>
@ -179,13 +179,13 @@
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--primary" data-md-level="0">
<label class="md-nav__title md-nav__title--site" for="__drawer">
<a href="index.html" title="Netmaker 0.9.0 documentation" class="md-nav__button md-logo">
<a href="index.html" title="Netmaker 0.9.4 documentation" class="md-nav__button md-logo">
<i class="md-icon">&#xe869</i>
</a>
<a href="index.html"
title="Netmaker 0.9.0 documentation">Netmaker Docs</a>
title="Netmaker 0.9.4 documentation">Netmaker Docs</a>
</label>
<div class="md-nav__source">
<a href="https://github.com/gravitl/netmaker/" title="Go to repository" class="md-source" data-md-source="github">
@ -210,71 +210,15 @@
<a href="about.html" class="md-nav__link">About</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="about.html#what-is-netmaker" class="md-nav__link">What is Netmaker?</a>
</li>
<li class="md-nav__item">
<a href="about.html#how-does-netmaker-work" class="md-nav__link">How Does Netmaker Work?</a>
</li>
<li class="md-nav__item">
<a href="about.html#use-cases-for-netmaker" class="md-nav__link">Use Cases for Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="architecture.html" class="md-nav__link">Architecture</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="architecture.html#core-concepts" class="md-nav__link">Core Concepts</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#components" class="md-nav__link">Components</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#technical-process" class="md-nav__link">Technical Process</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#compatible-systems-for-netclient" class="md-nav__link">Compatible Systems for Netclient</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#limitations" class="md-nav__link">Limitations</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -287,253 +231,64 @@
<a href="quick-start.html" class="md-nav__link">Quick Install</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prerequisites" class="md-nav__link">0. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prepare-dns" class="md-nav__link">1. Prepare DNS</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#open-firewall" class="md-nav__link">3. Open Firewall</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="getting-started.html" class="md-nav__link">Getting Started</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="getting-started.html#setup" class="md-nav__link">Setup</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#deploy-nodes" class="md-nav__link">Deploy Nodes</a>
<a href="external-clients.html" class="md-nav__link">Ingress + External Clients</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#manage-nodes" class="md-nav__link">Manage Nodes</a>
<a href="egress-gateway.html" class="md-nav__link">Egress Gateway</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-the-netclient" class="md-nav__link">Uninstalling the netclient</a>
<a href="relay-server.html" class="md-nav__link">Relay Servers</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-netmaker" class="md-nav__link">Uninstalling Netmaker</a>
<a href="https://nm-k8s.readthedocs.io" class="md-nav__link">Kubernetes</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html" class="md-nav__link">Install with Nginx (depreciated)</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start-nginx.html#introduction" class="md-nav__link">0. Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prerequisites" class="md-nav__link">1. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prepare-vm" class="md-nav__link">3. Prepare VM</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="server-installation.html" class="md-nav__link">Advanced Server Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="server-installation.html#system-compatibility" class="md-nav__link">System Compatibility</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#server-configuration-reference" class="md-nav__link">Server Configuration Reference</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#dns-mode-setup" class="md-nav__link">DNS Mode Setup</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#docker-compose-install" class="md-nav__link">Docker Compose Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#linux-install-without-docker" class="md-nav__link">Linux Install without Docker</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#kubernetes-install" class="md-nav__link">Kubernetes Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#nginx-reverse-proxy-setup-with-https" class="md-nav__link">Nginx Reverse Proxy Setup with https</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-kubernetes" class="md-nav__link">Highly Available Installation (Kubernetes)</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-vms-bare-metal" class="md-nav__link">Highly Available Installation (VMs/Bare Metal)</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="oauth.html" class="md-nav__link">Integrating OAuth</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="oauth.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-your-provider" class="md-nav__link">Configuring your provider</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-netmaker" class="md-nav__link">Configuring Netmaker</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-user-permissions" class="md-nav__link">Configuring User Permissions</a>
</li></ul>
</li>
<li class="md-nav__item">
<input class="md-toggle md-nav__toggle" data-md-toggle="toc" type="checkbox" id="__toc">
<label class="md-nav__link md-nav__link--active" for="__toc"> Client Installation </label>
<label class="md-nav__link md-nav__link--active" for="__toc"> Advanced Client Installation </label>
<a href="#" class="md-nav__link md-nav__link--active">Client Installation</a>
<a href="#" class="md-nav__link md-nav__link--active">Advanced Client Installation</a>
<nav class="md-nav md-nav--secondary">
<label class="md-nav__title" for="__toc">Contents</label>
<ul class="md-nav__list" data-md-scrollfix="">
<li class="md-nav__item"><a href="#client-installation--page-root" class="md-nav__link">Client Installation</a><nav class="md-nav">
<li class="md-nav__item"><a href="#client-installation--page-root" class="md-nav__link">Advanced Client Installation</a><nav class="md-nav">
<ul class="md-nav__list">
<li class="md-nav__item"><a href="#introduction-to-netclient" class="md-nav__link">Introduction to Netclient</a>
</li>
@ -632,198 +387,58 @@
<li class="md-nav__item">
<a href="external-clients.html" class="md-nav__link">External Clients</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="external-clients.html#introduction" class="md-nav__link">Introduction</a>
<a href="oauth.html" class="md-nav__link">Integrating OAuth</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-an-ingress-gateway" class="md-nav__link">Configuring an Ingress Gateway</a>
<a href="usage.html" class="md-nav__link">External Guides</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#adding-clients-to-a-gateway" class="md-nav__link">Adding Clients to a Gateway</a>
<a href="ui-reference.html" class="md-nav__link">UI Reference</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-dns-for-ext-clients-optional" class="md-nav__link">Configuring DNS for Ext Clients (OPTIONAL)</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="usage.html" class="md-nav__link">Using Netmaker</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="usage.html#external-tutorials" class="md-nav__link">External Tutorials</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="api.html" class="md-nav__link">API Reference</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="api.html#api-usage" class="md-nav__link">API Usage</a>
</li>
<li class="md-nav__item">
<a href="api.html#authentication" class="md-nav__link">Authentication</a>
<a href="upgrades.html" class="md-nav__link">Upgrades</a>
</li>
<li class="md-nav__item">
<a href="api.html#format-of-calls-for-curl" class="md-nav__link">Format of Calls for Curl</a>
</li>
<li class="md-nav__item">
<a href="api.html#api-documentation" class="md-nav__link">API Documentation</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html" class="md-nav__link">Troubleshooting</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="troubleshoot.html#common-issues" class="md-nav__link">Common Issues</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#server" class="md-nav__link">Server</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#ui" class="md-nav__link">UI</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#netclient" class="md-nav__link">Netclient</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#coredns" class="md-nav__link">CoreDNS</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="support.html" class="md-nav__link">Support</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="support.html#faq" class="md-nav__link">FAQ</a>
</li>
<li class="md-nav__item">
<a href="support.html#contact" class="md-nav__link">Contact</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="conduct.html" class="md-nav__link">Code of Conduct</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="conduct.html#our-pledge" class="md-nav__link">Our Pledge</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-standards" class="md-nav__link">Our Standards</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-responsibilities" class="md-nav__link">Our Responsibilities</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#scope" class="md-nav__link">Scope</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#enforcement" class="md-nav__link">Enforcement</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#attribution" class="md-nav__link">Attribution</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -846,7 +461,7 @@
<nav class="md-nav md-nav--secondary">
<label class="md-nav__title" for="__toc">Contents</label>
<ul class="md-nav__list" data-md-scrollfix="">
<li class="md-nav__item"><a href="#client-installation--page-root" class="md-nav__link">Client Installation</a><nav class="md-nav">
<li class="md-nav__item"><a href="#client-installation--page-root" class="md-nav__link">Advanced Client Installation</a><nav class="md-nav">
<ul class="md-nav__list">
<li class="md-nav__item"><a href="#introduction-to-netclient" class="md-nav__link">Introduction to Netclient</a>
</li>
@ -898,7 +513,7 @@
<article class="md-content__inner md-typeset" role="main">
<h1 id="client-installation--page-root">Client Installation<a class="headerlink" href="#client-installation--page-root" title="Permalink to this headline"></a></h1>
<h1 id="client-installation--page-root">Advanced Client Installation<a class="headerlink" href="#client-installation--page-root" title="Permalink to this headline"></a></h1>
<p>This document tells you how to install the netclient on machines that will be a part of your Netmaker network, as well as non-compatible systems.</p>
<p>These steps should be run after the Netmaker server has been created and a network has been designated within Netmaker.</p>
@ -1107,7 +722,7 @@ If a key is provided (-k), then a token is unnecessary, but grpc, server, ports,
<div class="md-footer-nav">
<nav class="md-footer-nav__inner md-grid">
<a href="oauth.html" title="Integrating OAuth"
<a href="server-installation.html" title="Advanced Server Installation"
class="md-flex md-footer-nav__link md-footer-nav__link--prev"
rel="prev">
<div class="md-flex__cell md-flex__cell--shrink">
@ -1116,17 +731,17 @@ If a key is provided (-k), then a token is unnecessary, but grpc, server, ports,
<div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
<span class="md-flex__ellipsis">
<span
class="md-footer-nav__direction"> Previous </span> Integrating OAuth </span>
class="md-footer-nav__direction"> Previous </span> Advanced Server Installation </span>
</div>
</a>
<a href="external-clients.html" title="External Clients"
<a href="oauth.html" title="Integrating OAuth"
class="md-flex md-footer-nav__link md-footer-nav__link--next"
rel="next">
<div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title"><span
class="md-flex__ellipsis"> <span
class="md-footer-nav__direction"> Next </span> External Clients </span>
class="md-footer-nav__direction"> Next </span> Integrating OAuth </span>
</div>
<div class="md-flex__cell md-flex__cell--shrink"><i
class="md-icon md-icon--arrow-forward md-footer-nav__button"></i>

View file

@ -46,7 +46,7 @@
<title>Code of Conduct &#8212; Netmaker 0.9.0 documentation</title>
<title>Code of Conduct &#8212; Netmaker 0.9.4 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/material.css" />
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
@ -81,7 +81,7 @@
<nav class="md-header-nav md-grid">
<div class="md-flex navheader">
<div class="md-flex__cell md-flex__cell--shrink">
<a href="index.html" title="Netmaker 0.9.0 documentation"
<a href="index.html" title="Netmaker 0.9.4 documentation"
class="md-header-nav__button md-logo">
<i class="md-icon">&#xe869</i>
@ -167,7 +167,7 @@
<nav class="md-tabs" data-md-component="tabs">
<div class="md-tabs__inner md-grid">
<ul class="md-tabs__list">
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.0 documentation</a></li>
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.4 documentation</a></li>
</ul>
</div>
</nav>
@ -179,13 +179,13 @@
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--primary" data-md-level="0">
<label class="md-nav__title md-nav__title--site" for="__drawer">
<a href="index.html" title="Netmaker 0.9.0 documentation" class="md-nav__button md-logo">
<a href="index.html" title="Netmaker 0.9.4 documentation" class="md-nav__button md-logo">
<i class="md-icon">&#xe869</i>
</a>
<a href="index.html"
title="Netmaker 0.9.0 documentation">Netmaker Docs</a>
title="Netmaker 0.9.4 documentation">Netmaker Docs</a>
</label>
<div class="md-nav__source">
<a href="https://github.com/gravitl/netmaker/" title="Go to repository" class="md-source" data-md-source="github">
@ -209,72 +209,16 @@
<li class="md-nav__item">
<a href="about.html" class="md-nav__link">About</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="about.html" class="md-nav__link">1. About</a>
<a href="about.html#what-is-netmaker" class="md-nav__link">What is Netmaker?</a>
</li>
<li class="md-nav__item">
<a href="about.html#how-does-netmaker-work" class="md-nav__link">How Does Netmaker Work?</a>
</li>
<li class="md-nav__item">
<a href="about.html#use-cases-for-netmaker" class="md-nav__link">Use Cases for Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="architecture.html" class="md-nav__link">Architecture</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="architecture.html#core-concepts" class="md-nav__link">Core Concepts</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#components" class="md-nav__link">Components</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#technical-process" class="md-nav__link">Technical Process</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#compatible-systems-for-netclient" class="md-nav__link">Compatible Systems for Netclient</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#limitations" class="md-nav__link">Limitations</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -287,442 +231,99 @@
<a href="quick-start.html" class="md-nav__link">Quick Install</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prerequisites" class="md-nav__link">0. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prepare-dns" class="md-nav__link">1. Prepare DNS</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#open-firewall" class="md-nav__link">3. Open Firewall</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="getting-started.html" class="md-nav__link">Getting Started</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="getting-started.html#setup" class="md-nav__link">Setup</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#deploy-nodes" class="md-nav__link">Deploy Nodes</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#manage-nodes" class="md-nav__link">Manage Nodes</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-the-netclient" class="md-nav__link">Uninstalling the netclient</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-netmaker" class="md-nav__link">Uninstalling Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html" class="md-nav__link">Install with Nginx (depreciated)</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start-nginx.html#introduction" class="md-nav__link">0. Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prerequisites" class="md-nav__link">1. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prepare-vm" class="md-nav__link">3. Prepare VM</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="server-installation.html" class="md-nav__link">Advanced Server Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="server-installation.html#system-compatibility" class="md-nav__link">System Compatibility</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#server-configuration-reference" class="md-nav__link">Server Configuration Reference</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#dns-mode-setup" class="md-nav__link">DNS Mode Setup</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#docker-compose-install" class="md-nav__link">Docker Compose Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#linux-install-without-docker" class="md-nav__link">Linux Install without Docker</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#kubernetes-install" class="md-nav__link">Kubernetes Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#nginx-reverse-proxy-setup-with-https" class="md-nav__link">Nginx Reverse Proxy Setup with https</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-kubernetes" class="md-nav__link">Highly Available Installation (Kubernetes)</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-vms-bare-metal" class="md-nav__link">Highly Available Installation (VMs/Bare Metal)</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="oauth.html" class="md-nav__link">Integrating OAuth</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="oauth.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-your-provider" class="md-nav__link">Configuring your provider</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-netmaker" class="md-nav__link">Configuring Netmaker</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-user-permissions" class="md-nav__link">Configuring User Permissions</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="client-installation.html" class="md-nav__link">Client Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="client-installation.html#introduction-to-netclient" class="md-nav__link">Introduction to Netclient</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#notes-on-windows" class="md-nav__link">Notes on Windows</a>
<a href="external-clients.html" class="md-nav__link">Ingress GW + External Clients</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#modes-and-system-compatibility" class="md-nav__link">Modes and System Compatibility</a>
<a href="egress-gateway.html" class="md-nav__link">Egress Gateway</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#prerequisites" class="md-nav__link">Prerequisites</a>
<a href="relay-server.html" class="md-nav__link">Relay Servers</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#configuration" class="md-nav__link">Configuration</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#installation" class="md-nav__link">Installation</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#managing-netclient" class="md-nav__link">Managing Netclient</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="external-clients.html" class="md-nav__link">External Clients</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="external-clients.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-an-ingress-gateway" class="md-nav__link">Configuring an Ingress Gateway</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#adding-clients-to-a-gateway" class="md-nav__link">Adding Clients to a Gateway</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-dns-for-ext-clients-optional" class="md-nav__link">Configuring DNS for Ext Clients (OPTIONAL)</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="usage.html" class="md-nav__link">Using Netmaker</a>
<ul class="md-nav__list">
</li>
<li class="md-nav__item">
<a href="usage.html#external-tutorials" class="md-nav__link">External Tutorials</a>
<a href="ui-reference.html" class="md-nav__link">UI Reference</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="api.html" class="md-nav__link">API Reference</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="api.html#api-usage" class="md-nav__link">API Usage</a>
</li>
<li class="md-nav__item">
<a href="api.html#authentication" class="md-nav__link">Authentication</a>
<a href="upgrades.html" class="md-nav__link">Upgrades</a>
</li>
<li class="md-nav__item">
<a href="api.html#format-of-calls-for-curl" class="md-nav__link">Format of Calls for Curl</a>
</li>
<li class="md-nav__item">
<a href="api.html#api-documentation" class="md-nav__link">API Documentation</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html" class="md-nav__link">Troubleshooting</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="troubleshoot.html#common-issues" class="md-nav__link">Common Issues</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#server" class="md-nav__link">Server</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#ui" class="md-nav__link">UI</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#netclient" class="md-nav__link">Netclient</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#coredns" class="md-nav__link">CoreDNS</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="support.html" class="md-nav__link">Support</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="support.html#faq" class="md-nav__link">FAQ</a>
</li>
<li class="md-nav__item">
<a href="support.html#contact" class="md-nav__link">Contact</a>
</li></ul>
</li>
<li class="md-nav__item">

548
docs/_build/html/egress-gateway.html vendored Normal file
View file

@ -0,0 +1,548 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="viewport" content="width=device-width,initial-scale=1">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="lang:clipboard.copy" content="Copy to clipboard">
<meta name="lang:clipboard.copied" content="Copied to clipboard">
<meta name="lang:search.language" content="en">
<meta name="lang:search.pipeline.stopwords" content="True">
<meta name="lang:search.pipeline.trimmer" content="True">
<meta name="lang:search.result.none" content="No matching documents">
<meta name="lang:search.result.one" content="1 matching document">
<meta name="lang:search.result.other" content="# matching documents">
<meta name="lang:search.tokenizer" content="[\s\-]+">
<link href="https://fonts.gstatic.com/" rel="preconnect" crossorigin>
<link href="https://fonts.googleapis.com/css?family=Roboto+Mono:400,500,700|Roboto:300,400,400i,700&display=fallback" rel="stylesheet">
<style>
body,
input {
font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif
}
code,
kbd,
pre {
font-family: "Roboto Mono", "Courier New", Courier, monospace
}
</style>
<link rel="stylesheet" href="_static/stylesheets/application.css"/>
<link rel="stylesheet" href="_static/stylesheets/application-palette.css"/>
<link rel="stylesheet" href="_static/stylesheets/application-fixes.css"/>
<link rel="stylesheet" href="_static/fonts/material-icons.css"/>
<meta name="theme-color" content="#3f51b5">
<script src="_static/javascripts/modernizr.js"></script>
<title>Egress Gateway &#8212; Netmaker 0.9.4 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/material.css" />
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
<script src="_static/jquery.js"></script>
<script src="_static/underscore.js"></script>
<script src="_static/doctools.js"></script>
<link rel="author" title="About these documents" href="about.html" />
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
<link rel="next" title="Relay Servers" href="relay-server.html" />
<link rel="prev" title="Ingress + External Clients" href="external-clients.html" />
</head>
<body dir=ltr
data-md-color-primary=indigo data-md-color-accent=light-blue>
<svg class="md-svg">
<defs data-children-count="0">
<svg xmlns="http://www.w3.org/2000/svg" width="416" height="448" viewBox="0 0 416 448" id="__github"><path fill="currentColor" d="M160 304q0 10-3.125 20.5t-10.75 19T128 352t-18.125-8.5-10.75-19T96 304t3.125-20.5 10.75-19T128 256t18.125 8.5 10.75 19T160 304zm160 0q0 10-3.125 20.5t-10.75 19T288 352t-18.125-8.5-10.75-19T256 304t3.125-20.5 10.75-19T288 256t18.125 8.5 10.75 19T320 304zm40 0q0-30-17.25-51T296 232q-10.25 0-48.75 5.25Q229.5 240 208 240t-39.25-2.75Q130.75 232 120 232q-29.5 0-46.75 21T56 304q0 22 8 38.375t20.25 25.75 30.5 15 35 7.375 37.25 1.75h42q20.5 0 37.25-1.75t35-7.375 30.5-15 20.25-25.75T360 304zm56-44q0 51.75-15.25 82.75-9.5 19.25-26.375 33.25t-35.25 21.5-42.5 11.875-42.875 5.5T212 416q-19.5 0-35.5-.75t-36.875-3.125-38.125-7.5-34.25-12.875T37 371.5t-21.5-28.75Q0 312 0 260q0-59.25 34-99-6.75-20.5-6.75-42.5 0-29 12.75-54.5 27 0 47.5 9.875t47.25 30.875Q171.5 96 212 96q37 0 70 8 26.25-20.5 46.75-30.25T376 64q12.75 25.5 12.75 54.5 0 21.75-6.75 42 34 40 34 99.5z"/></svg>
</defs>
</svg>
<input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer">
<input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search">
<label class="md-overlay" data-md-component="overlay" for="__drawer"></label>
<a href="#egress-gateway" tabindex="1" class="md-skip"> Skip to content </a>
<header class="md-header" data-md-component="header">
<nav class="md-header-nav md-grid">
<div class="md-flex navheader">
<div class="md-flex__cell md-flex__cell--shrink">
<a href="index.html" title="Netmaker 0.9.4 documentation"
class="md-header-nav__button md-logo">
<i class="md-icon">&#xe869</i>
</a>
</div>
<div class="md-flex__cell md-flex__cell--shrink">
<label class="md-icon md-icon--menu md-header-nav__button" for="__drawer"></label>
</div>
<div class="md-flex__cell md-flex__cell--stretch">
<div class="md-flex__ellipsis md-header-nav__title" data-md-component="title">
<span class="md-header-nav__topic">Netmaker Docs</span>
<span class="md-header-nav__topic"> Egress Gateway </span>
</div>
</div>
<div class="md-flex__cell md-flex__cell--shrink">
<label class="md-icon md-icon--search md-header-nav__button" for="__search"></label>
<div class="md-search" data-md-component="search" role="dialog">
<label class="md-search__overlay" for="__search"></label>
<div class="md-search__inner" role="search">
<form class="md-search__form" action="search.html" method="get" name="search">
<input type="text" class="md-search__input" name="q" placeholder="Search"
autocapitalize="off" autocomplete="off" spellcheck="false"
data-md-component="query" data-md-state="active">
<label class="md-icon md-search__icon" for="__search"></label>
<button type="reset" class="md-icon md-search__icon" data-md-component="reset" tabindex="-1">
&#xE5CD;
</button>
</form>
<div class="md-search__output">
<div class="md-search__scrollwrap" data-md-scrollfix>
<div class="md-search-result" data-md-component="result">
<div class="md-search-result__meta">
Type to start searching
</div>
<ol class="md-search-result__list"></ol>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="md-flex__cell md-flex__cell--shrink">
<div class="md-header-nav__source">
<a href="https://github.com/gravitl/netmaker/" title="Go to repository" class="md-source" data-md-source="github">
<div class="md-source__icon">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 24 24" width="28" height="28">
<use xlink:href="#__github" width="24" height="24"></use>
</svg>
</div>
<div class="md-source__repository">
Netmaker
</div>
</a>
</div>
</div>
<script src="_static/javascripts/version_dropdown.js"></script>
<script>
var json_loc = ""versions.json"",
target_loc = "../",
text = "Versions";
$( document ).ready( add_version_dropdown(json_loc, target_loc, text));
</script>
</div>
</nav>
</header>
<div class="md-container">
<nav class="md-tabs" data-md-component="tabs">
<div class="md-tabs__inner md-grid">
<ul class="md-tabs__list">
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.4 documentation</a></li>
</ul>
</div>
</nav>
<main class="md-main">
<div class="md-main__inner md-grid" data-md-component="container">
<div class="md-sidebar md-sidebar--primary" data-md-component="navigation">
<div class="md-sidebar__scrollwrap">
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--primary" data-md-level="0">
<label class="md-nav__title md-nav__title--site" for="__drawer">
<a href="index.html" title="Netmaker 0.9.4 documentation" class="md-nav__button md-logo">
<i class="md-icon">&#xe869</i>
</a>
<a href="index.html"
title="Netmaker 0.9.4 documentation">Netmaker Docs</a>
</label>
<div class="md-nav__source">
<a href="https://github.com/gravitl/netmaker/" title="Go to repository" class="md-source" data-md-source="github">
<div class="md-source__icon">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 24 24" width="28" height="28">
<use xlink:href="#__github" width="24" height="24"></use>
</svg>
</div>
<div class="md-source__repository">
Netmaker
</div>
</a>
</div>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="about.html" class="md-nav__link">About</a>
</li>
<li class="md-nav__item">
<a href="architecture.html" class="md-nav__link">Architecture</a>
</li>
<li class="md-nav__item">
<a href="install.html" class="md-nav__link">Install</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html" class="md-nav__link">Quick Install</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html" class="md-nav__link">Getting Started</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html" class="md-nav__link">Ingress + External Clients</a>
</li>
<li class="md-nav__item">
<input class="md-toggle md-nav__toggle" data-md-toggle="toc" type="checkbox" id="__toc">
<label class="md-nav__link md-nav__link--active" for="__toc"> Egress Gateway </label>
<a href="#" class="md-nav__link md-nav__link--active">Egress Gateway</a>
<nav class="md-nav md-nav--secondary">
<label class="md-nav__title" for="__toc">Contents</label>
<ul class="md-nav__list" data-md-scrollfix="">
<li class="md-nav__item"><a href="#egress-gateway--page-root" class="md-nav__link">Egress Gateway</a><nav class="md-nav">
<ul class="md-nav__list">
<li class="md-nav__item"><a href="#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item"><a href="#configuring-an-egress-gateway" class="md-nav__link">Configuring an Egress Gateway</a>
</li>
<li class="md-nav__item"><a href="#use-cases" class="md-nav__link">Use Cases</a><nav class="md-nav">
<ul class="md-nav__list">
<li class="md-nav__item"><a href="#remote-access" class="md-nav__link">1) Remote Access</a>
</li>
<li class="md-nav__item"><a href="#vpn-nat-gateway" class="md-nav__link">2) VPN / NAT Gateway</a>
</li></ul>
</nav>
</li></ul>
</nav>
</li>
</ul>
</nav>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="#configuring-an-egress-gateway" class="md-nav__link">Configuring an Egress Gateway</a>
</li>
<li class="md-nav__item">
<a href="#use-cases" class="md-nav__link">Use Cases</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="relay-server.html" class="md-nav__link">Relay Servers</a>
</li>
<li class="md-nav__item">
<a href="https://nm-k8s.readthedocs.io" class="md-nav__link">Kubernetes</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html" class="md-nav__link">Advanced Server Installation</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html" class="md-nav__link">Advanced Client Installation</a>
</li>
<li class="md-nav__item">
<a href="oauth.html" class="md-nav__link">Integrating OAuth</a>
</li>
<li class="md-nav__item">
<a href="usage.html" class="md-nav__link">External Guides</a>
</li>
<li class="md-nav__item">
<a href="ui-reference.html" class="md-nav__link">UI Reference</a>
</li>
<li class="md-nav__item">
<a href="api.html" class="md-nav__link">API Reference</a>
</li>
<li class="md-nav__item">
<a href="upgrades.html" class="md-nav__link">Upgrades</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html" class="md-nav__link">Troubleshooting</a>
</li>
<li class="md-nav__item">
<a href="support.html" class="md-nav__link">Support</a>
</li>
<li class="md-nav__item">
<a href="conduct.html" class="md-nav__link">Code of Conduct</a>
</li>
<li class="md-nav__item">
<a href="license.html" class="md-nav__link">License</a>
</li>
</ul>
</nav>
</div>
</div>
</div>
<div class="md-sidebar md-sidebar--secondary" data-md-component="toc">
<div class="md-sidebar__scrollwrap">
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--secondary">
<label class="md-nav__title" for="__toc">Contents</label>
<ul class="md-nav__list" data-md-scrollfix="">
<li class="md-nav__item"><a href="#egress-gateway--page-root" class="md-nav__link">Egress Gateway</a><nav class="md-nav">
<ul class="md-nav__list">
<li class="md-nav__item"><a href="#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item"><a href="#configuring-an-egress-gateway" class="md-nav__link">Configuring an Egress Gateway</a>
</li>
<li class="md-nav__item"><a href="#use-cases" class="md-nav__link">Use Cases</a><nav class="md-nav">
<ul class="md-nav__list">
<li class="md-nav__item"><a href="#remote-access" class="md-nav__link">1) Remote Access</a>
</li>
<li class="md-nav__item"><a href="#vpn-nat-gateway" class="md-nav__link">2) VPN / NAT Gateway</a>
</li></ul>
</nav>
</li></ul>
</nav>
</li>
</ul>
</nav>
</div>
</div>
</div>
<div class="md-content">
<article class="md-content__inner md-typeset" role="main">
<h1 id="egress-gateway--page-root">Egress Gateway<a class="headerlink" href="#egress-gateway--page-root" title="Permalink to this headline"></a></h1>
<h2 id="introduction">Introduction<a class="headerlink" href="#introduction" title="Permalink to this headline"></a></h2>
<a class="reference internal image-reference" href="_images/egress1.png"><img alt="Gateway" class="align-center" src="_images/egress1.png" style="width: 80%;"/></a>
<p>Netmaker allows your clients to reach external networks via an Egress Gateway. The Egress Gateway is a netclient which has been deployed to a server or router with access to a given subnet.</p>
<p>In the netmaker UI, that node is set as an “egress gateway.” Range(s) are specified which this node has access to. Once created, all clients (and all new ext clients) in the network will be able to reach those ranges via the gateway.</p>
<h2 id="configuring-an-egress-gateway">Configuring an Egress Gateway<a class="headerlink" href="#configuring-an-egress-gateway" title="Permalink to this headline"></a></h2>
<p>Configuring an Egress Gateway is very straight forward. As a prerequisite, you must know what you are trying to access remotely. For instance:</p>
<ul class="simple">
<li><p>a VPC</p></li>
<li><p>a Kubernetes network</p></li>
<li><p>a home network</p></li>
<li><p>an office network</p></li>
<li><p>a data center</p></li>
</ul>
<p>After you have determined this, you must next deploy a netclient in a compatible location where the network is accessible. For instance, a Linux server or router in the office, or a Kubernetes worker node. This machine should be stable and relatively static (not expected to change its IP frequently or shut down unexpectedly).</p>
<p>Next, you must determine which interface to use in order to reach the internal network. As an example, lets say there is a machine in the network at 10.10.10.2, and you have deployed the netclient on a different machine. You can run</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">ip</span> <span class="n">route</span> <span class="n">get</span> <span class="mf">10.10</span><span class="o">.</span><span class="mf">10.2</span>
</pre></div>
</div>
<p>This should return the interface used to reach that address (e.x. “eth2”)</p>
<p>Finally, once you have determined the interface, the subnet, and deployed your netclient, you can go to your Netmaker UI and set the node as a gateway.</p>
<a class="reference internal image-reference" href="_images/egress7.png"><img alt="Gateway" class="align-center" src="_images/egress7.png" style="width: 80%;"/></a>
<p>At this point simply insert the range(s) into the first field, and the interface name into the second field, and click “create”.</p>
<a class="reference internal image-reference" href="_images/ui-6.jpg"><img alt="Gateway" class="align-center" src="_images/ui-6.jpg" style="width: 80%;"/></a>
<p>Netmaker will set iptables rules on the node, which will then implement these rules, allowing it to route traffic from the network to the specified range(s).</p>
<h2 id="use-cases">Use Cases<a class="headerlink" href="#use-cases" title="Permalink to this headline"></a></h2>
<h3 id="remote-access">1) Remote Access<a class="headerlink" href="#remote-access" title="Permalink to this headline"></a></h3>
<p>A common scenario would be to combine this with an “Ingress Gateway” to create a simple method for accessing a home or office network. Such a setup would typically have only two nodes: the ingress and egress gateways. The Ingress Gateway should usually be globally accessible, which makes the Netmaker server itself a good candidate. This means you need only the netmaker server as the Ingress, and one additional machine (in the private network you wish to reach), as the Egress.</p>
<a class="reference internal image-reference" href="_images/egress2.png"><img alt="Gateway" class="align-center" src="_images/egress2.png" style="width: 80%;"/></a>
<p>In some scenarios, a single node will act as both ingress and egress! For instance, you can enable acess to a VPC using your Netmaker server, deployed with a public IP. Traffic comes in over the public IP (encrypted of course) and then routes to the VPC subnet via the egress gateway.</p>
<a class="reference internal image-reference" href="_images/egress3.png"><img alt="Gateway" class="align-center" src="_images/egress3.png" style="width: 50%;"/></a>
<h3 id="vpn-nat-gateway">2) VPN / NAT Gateway<a class="headerlink" href="#vpn-nat-gateway" title="Permalink to this headline"></a></h3>
<p>Most people think of a VPN as a remote server that keeps your internet traffic secure while you browse the web, or as a tool for accessing internet services in another country,using a VPN server based in that country.</p>
<p>These are not typical use cases for Netmaker, but can be easily enabled.</p>
<p><strong>The most important note is this: Do not use 0.0.0.0/0 as your egress gateway.</strong> This is how you typically set up a “standard” VPN with WireGuard, however, it will not work with Netmaker. The Netclient specifically ignores gateways that overlap with local ranges (for efficiency ranges). 0.0.0.0 overlaps with everything, so it is always ignored.</p>
<p>Instead, use the following list of ranges:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="mf">0.0</span><span class="o">.</span><span class="mf">0.0</span><span class="o">/</span><span class="mi">5</span><span class="p">,</span><span class="mf">8.0</span><span class="o">.</span><span class="mf">0.0</span><span class="o">/</span><span class="mi">7</span><span class="p">,</span><span class="mf">11.0</span><span class="o">.</span><span class="mf">0.0</span><span class="o">/</span><span class="mi">8</span><span class="p">,</span><span class="mf">12.0</span><span class="o">.</span><span class="mf">0.0</span><span class="o">/</span><span class="mi">6</span><span class="p">,</span><span class="mf">16.0</span><span class="o">.</span><span class="mf">0.0</span><span class="o">/</span><span class="mi">4</span><span class="p">,</span><span class="mf">32.0</span><span class="o">.</span><span class="mf">0.0</span><span class="o">/</span><span class="mi">3</span><span class="p">,</span><span class="mf">64.0</span><span class="o">.</span><span class="mf">0.0</span><span class="o">/</span><span class="mi">2</span><span class="p">,</span><span class="mf">128.0</span><span class="o">.</span><span class="mf">0.0</span><span class="o">/</span><span class="mi">3</span><span class="p">,</span><span class="mf">160.0</span><span class="o">.</span><span class="mf">0.0</span><span class="o">/</span><span class="mi">5</span><span class="p">,</span><span class="mf">168.0</span><span class="o">.</span><span class="mf">0.0</span><span class="o">/</span><span class="mi">6</span><span class="p">,</span><span class="mf">172.0</span><span class="o">.</span><span class="mf">0.0</span><span class="o">/</span><span class="mi">12</span><span class="p">,</span><span class="mf">172.32</span><span class="o">.</span><span class="mf">0.0</span><span class="o">/</span><span class="mi">11</span><span class="p">,</span><span class="mf">172.64</span><span class="o">.</span><span class="mf">0.0</span><span class="o">/</span><span class="mi">10</span><span class="p">,</span><span class="mf">172.128</span><span class="o">.</span><span class="mf">0.0</span><span class="o">/</span><span class="mi">9</span><span class="p">,</span><span class="mf">173.0</span><span class="o">.</span><span class="mf">0.0</span><span class="o">/</span><span class="mi">8</span><span class="p">,</span><span class="mf">174.0</span><span class="o">.</span><span class="mf">0.0</span><span class="o">/</span><span class="mi">7</span><span class="p">,</span><span class="mf">176.0</span><span class="o">.</span><span class="mf">0.0</span><span class="o">/</span><span class="mi">4</span><span class="p">,</span><span class="mf">192.0</span><span class="o">.</span><span class="mf">0.0</span><span class="o">/</span><span class="mi">9</span><span class="p">,</span><span class="mf">192.128</span><span class="o">.</span><span class="mf">0.0</span><span class="o">/</span><span class="mi">11</span><span class="p">,</span><span class="mf">192.160</span><span class="o">.</span><span class="mf">0.0</span><span class="o">/</span><span class="mi">13</span><span class="p">,</span><span class="mf">192.169</span><span class="o">.</span><span class="mf">0.0</span><span class="o">/</span><span class="mi">16</span><span class="p">,</span><span class="mf">192.170</span><span class="o">.</span><span class="mf">0.0</span><span class="o">/</span><span class="mi">15</span><span class="p">,</span><span class="mf">192.172</span><span class="o">.</span><span class="mf">0.0</span><span class="o">/</span><span class="mi">14</span><span class="p">,</span><span class="mf">192.176</span><span class="o">.</span><span class="mf">0.0</span><span class="o">/</span><span class="mi">12</span><span class="p">,</span><span class="mf">192.192</span><span class="o">.</span><span class="mf">0.0</span><span class="o">/</span><span class="mi">10</span><span class="p">,</span><span class="mf">193.0</span><span class="o">.</span><span class="mf">0.0</span><span class="o">/</span><span class="mi">8</span><span class="p">,</span><span class="mf">194.0</span><span class="o">.</span><span class="mf">0.0</span><span class="o">/</span><span class="mi">7</span><span class="p">,</span><span class="mf">196.0</span><span class="o">.</span><span class="mf">0.0</span><span class="o">/</span><span class="mi">6</span><span class="p">,</span><span class="mf">200.0</span><span class="o">.</span><span class="mf">0.0</span><span class="o">/</span><span class="mi">5</span><span class="p">,</span><span class="mf">208.0</span><span class="o">.</span><span class="mf">0.0</span><span class="o">/</span><span class="mi">4</span>
</pre></div>
</div>
<p>This list encompasses the standard “public” network ranges, and ignores the standard “private” network ranges.</p>
<p>Simply paste this list into your “egress gateway ranges” and your clients should begin routing public-facing traffic over the gateway.</p>
<a class="reference internal image-reference" href="_images/egress5.png"><img alt="Gateway" class="align-center" src="_images/egress5.png" style="width: 50%;"/></a>
</article>
</div>
</div>
</main>
</div>
<footer class="md-footer">
<div class="md-footer-nav">
<nav class="md-footer-nav__inner md-grid">
<a href="external-clients.html" title="Ingress + External Clients"
class="md-flex md-footer-nav__link md-footer-nav__link--prev"
rel="prev">
<div class="md-flex__cell md-flex__cell--shrink">
<i class="md-icon md-icon--arrow-back md-footer-nav__button"></i>
</div>
<div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
<span class="md-flex__ellipsis">
<span
class="md-footer-nav__direction"> Previous </span> Ingress + External Clients </span>
</div>
</a>
<a href="relay-server.html" title="Relay Servers"
class="md-flex md-footer-nav__link md-footer-nav__link--next"
rel="next">
<div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title"><span
class="md-flex__ellipsis"> <span
class="md-footer-nav__direction"> Next </span> Relay Servers </span>
</div>
<div class="md-flex__cell md-flex__cell--shrink"><i
class="md-icon md-icon--arrow-forward md-footer-nav__button"></i>
</div>
</a>
</nav>
</div>
<div class="md-footer-meta md-typeset">
<div class="md-footer-meta__inner md-grid">
<div class="md-footer-copyright">
<div class="md-footer-copyright__highlight">
&#169; Copyright 2021, Alex Feiszli.
</div>
Created using
<a href="http://www.sphinx-doc.org/">Sphinx</a> 4.3.0.
and
<a href="https://github.com/bashtage/sphinx-material/">Material for
Sphinx</a>
</div>
</div>
</div>
</footer>
<script src="_static/javascripts/application.js"></script>
<script>app.initialize({version: "1.0.4", url: {base: ".."}})</script>
</body>
</html>

View file

@ -46,7 +46,7 @@
<title>External Clients &#8212; Netmaker 0.9.0 documentation</title>
<title>Ingress + External Clients &#8212; Netmaker 0.9.4 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/material.css" />
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
@ -56,8 +56,8 @@
<link rel="author" title="About these documents" href="about.html" />
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
<link rel="next" title="Using Netmaker" href="usage.html" />
<link rel="prev" title="Client Installation" href="client-installation.html" />
<link rel="next" title="Egress Gateway" href="egress-gateway.html" />
<link rel="prev" title="Getting Started" href="getting-started.html" />
@ -81,7 +81,7 @@
<nav class="md-header-nav md-grid">
<div class="md-flex navheader">
<div class="md-flex__cell md-flex__cell--shrink">
<a href="index.html" title="Netmaker 0.9.0 documentation"
<a href="index.html" title="Netmaker 0.9.4 documentation"
class="md-header-nav__button md-logo">
<i class="md-icon">&#xe869</i>
@ -94,7 +94,7 @@
<div class="md-flex__cell md-flex__cell--stretch">
<div class="md-flex__ellipsis md-header-nav__title" data-md-component="title">
<span class="md-header-nav__topic">Netmaker Docs</span>
<span class="md-header-nav__topic"> External Clients </span>
<span class="md-header-nav__topic"> Ingress + External Clients </span>
</div>
</div>
<div class="md-flex__cell md-flex__cell--shrink">
@ -167,7 +167,7 @@
<nav class="md-tabs" data-md-component="tabs">
<div class="md-tabs__inner md-grid">
<ul class="md-tabs__list">
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.0 documentation</a></li>
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.4 documentation</a></li>
</ul>
</div>
</nav>
@ -179,13 +179,13 @@
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--primary" data-md-level="0">
<label class="md-nav__title md-nav__title--site" for="__drawer">
<a href="index.html" title="Netmaker 0.9.0 documentation" class="md-nav__button md-logo">
<a href="index.html" title="Netmaker 0.9.4 documentation" class="md-nav__button md-logo">
<i class="md-icon">&#xe869</i>
</a>
<a href="index.html"
title="Netmaker 0.9.0 documentation">Netmaker Docs</a>
title="Netmaker 0.9.4 documentation">Netmaker Docs</a>
</label>
<div class="md-nav__source">
<a href="https://github.com/gravitl/netmaker/" title="Go to repository" class="md-source" data-md-source="github">
@ -210,71 +210,15 @@
<a href="about.html" class="md-nav__link">About</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="about.html#what-is-netmaker" class="md-nav__link">What is Netmaker?</a>
</li>
<li class="md-nav__item">
<a href="about.html#how-does-netmaker-work" class="md-nav__link">How Does Netmaker Work?</a>
</li>
<li class="md-nav__item">
<a href="about.html#use-cases-for-netmaker" class="md-nav__link">Use Cases for Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="architecture.html" class="md-nav__link">Architecture</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="architecture.html#core-concepts" class="md-nav__link">Core Concepts</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#components" class="md-nav__link">Components</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#technical-process" class="md-nav__link">Technical Process</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#compatible-systems-for-netclient" class="md-nav__link">Compatible Systems for Netclient</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#limitations" class="md-nav__link">Limitations</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -287,309 +231,29 @@
<a href="quick-start.html" class="md-nav__link">Quick Install</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prerequisites" class="md-nav__link">0. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prepare-dns" class="md-nav__link">1. Prepare DNS</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#open-firewall" class="md-nav__link">3. Open Firewall</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="getting-started.html" class="md-nav__link">Getting Started</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="getting-started.html#setup" class="md-nav__link">Setup</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#deploy-nodes" class="md-nav__link">Deploy Nodes</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#manage-nodes" class="md-nav__link">Manage Nodes</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-the-netclient" class="md-nav__link">Uninstalling the netclient</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-netmaker" class="md-nav__link">Uninstalling Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html" class="md-nav__link">Install with Nginx (depreciated)</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start-nginx.html#introduction" class="md-nav__link">0. Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prerequisites" class="md-nav__link">1. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prepare-vm" class="md-nav__link">3. Prepare VM</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="server-installation.html" class="md-nav__link">Advanced Server Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="server-installation.html#system-compatibility" class="md-nav__link">System Compatibility</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#server-configuration-reference" class="md-nav__link">Server Configuration Reference</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#dns-mode-setup" class="md-nav__link">DNS Mode Setup</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#docker-compose-install" class="md-nav__link">Docker Compose Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#linux-install-without-docker" class="md-nav__link">Linux Install without Docker</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#kubernetes-install" class="md-nav__link">Kubernetes Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#nginx-reverse-proxy-setup-with-https" class="md-nav__link">Nginx Reverse Proxy Setup with https</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-kubernetes" class="md-nav__link">Highly Available Installation (Kubernetes)</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-vms-bare-metal" class="md-nav__link">Highly Available Installation (VMs/Bare Metal)</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="oauth.html" class="md-nav__link">Integrating OAuth</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="oauth.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-your-provider" class="md-nav__link">Configuring your provider</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-netmaker" class="md-nav__link">Configuring Netmaker</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-user-permissions" class="md-nav__link">Configuring User Permissions</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="client-installation.html" class="md-nav__link">Client Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="client-installation.html#introduction-to-netclient" class="md-nav__link">Introduction to Netclient</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#notes-on-windows" class="md-nav__link">Notes on Windows</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#modes-and-system-compatibility" class="md-nav__link">Modes and System Compatibility</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#prerequisites" class="md-nav__link">Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#configuration" class="md-nav__link">Configuration</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#installation" class="md-nav__link">Installation</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#managing-netclient" class="md-nav__link">Managing Netclient</a>
</li></ul>
</li>
<li class="md-nav__item">
<input class="md-toggle md-nav__toggle" data-md-toggle="toc" type="checkbox" id="__toc">
<label class="md-nav__link md-nav__link--active" for="__toc"> External Clients </label>
<label class="md-nav__link md-nav__link--active" for="__toc"> Ingress + External Clients </label>
<a href="#" class="md-nav__link md-nav__link--active">External Clients</a>
<a href="#" class="md-nav__link md-nav__link--active">Ingress + External Clients</a>
<nav class="md-nav md-nav--secondary">
<label class="md-nav__title" for="__toc">Contents</label>
<ul class="md-nav__list" data-md-scrollfix="">
<li class="md-nav__item"><a href="#external-clients--page-root" class="md-nav__link">External Clients</a><nav class="md-nav">
<li class="md-nav__item"><a href="#external-clients--page-root" class="md-nav__link">Ingress + External Clients</a><nav class="md-nav">
<ul class="md-nav__list">
<li class="md-nav__item"><a href="#introduction" class="md-nav__link">Introduction</a>
</li>
@ -637,163 +301,93 @@
<li class="md-nav__item">
<a href="usage.html" class="md-nav__link">Using Netmaker</a>
<ul class="md-nav__list">
<a href="egress-gateway.html" class="md-nav__link">Egress Gateway</a>
</li>
<li class="md-nav__item">
<a href="usage.html#external-tutorials" class="md-nav__link">External Tutorials</a>
<a href="relay-server.html" class="md-nav__link">Relay Servers</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="https://nm-k8s.readthedocs.io" class="md-nav__link">Kubernetes</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html" class="md-nav__link">Advanced Server Installation</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html" class="md-nav__link">Advanced Client Installation</a>
</li>
<li class="md-nav__item">
<a href="oauth.html" class="md-nav__link">Integrating OAuth</a>
</li>
<li class="md-nav__item">
<a href="usage.html" class="md-nav__link">External Guides</a>
</li>
<li class="md-nav__item">
<a href="ui-reference.html" class="md-nav__link">UI Reference</a>
</li>
<li class="md-nav__item">
<a href="api.html" class="md-nav__link">API Reference</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="api.html#api-usage" class="md-nav__link">API Usage</a>
</li>
<li class="md-nav__item">
<a href="api.html#authentication" class="md-nav__link">Authentication</a>
<a href="upgrades.html" class="md-nav__link">Upgrades</a>
</li>
<li class="md-nav__item">
<a href="api.html#format-of-calls-for-curl" class="md-nav__link">Format of Calls for Curl</a>
</li>
<li class="md-nav__item">
<a href="api.html#api-documentation" class="md-nav__link">API Documentation</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html" class="md-nav__link">Troubleshooting</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="troubleshoot.html#common-issues" class="md-nav__link">Common Issues</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#server" class="md-nav__link">Server</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#ui" class="md-nav__link">UI</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#netclient" class="md-nav__link">Netclient</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#coredns" class="md-nav__link">CoreDNS</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="support.html" class="md-nav__link">Support</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="support.html#faq" class="md-nav__link">FAQ</a>
</li>
<li class="md-nav__item">
<a href="support.html#contact" class="md-nav__link">Contact</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="conduct.html" class="md-nav__link">Code of Conduct</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="conduct.html#our-pledge" class="md-nav__link">Our Pledge</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-standards" class="md-nav__link">Our Standards</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-responsibilities" class="md-nav__link">Our Responsibilities</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#scope" class="md-nav__link">Scope</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#enforcement" class="md-nav__link">Enforcement</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#attribution" class="md-nav__link">Attribution</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -816,7 +410,7 @@
<nav class="md-nav md-nav--secondary">
<label class="md-nav__title" for="__toc">Contents</label>
<ul class="md-nav__list" data-md-scrollfix="">
<li class="md-nav__item"><a href="#external-clients--page-root" class="md-nav__link">External Clients</a><nav class="md-nav">
<li class="md-nav__item"><a href="#external-clients--page-root" class="md-nav__link">Ingress + External Clients</a><nav class="md-nav">
<ul class="md-nav__list">
<li class="md-nav__item"><a href="#introduction" class="md-nav__link">Introduction</a>
</li>
@ -838,9 +432,10 @@
<article class="md-content__inner md-typeset" role="main">
<h1 id="external-clients--page-root">External Clients<a class="headerlink" href="#external-clients--page-root" title="Permalink to this headline"></a></h1>
<h1 id="external-clients--page-root">Ingress + External Clients<a class="headerlink" href="#external-clients--page-root" title="Permalink to this headline"></a></h1>
<h2 id="introduction">Introduction<a class="headerlink" href="#introduction" title="Permalink to this headline"></a></h2>
<a class="reference internal image-reference" href="_images/ingress1.png"><img alt="Gateway" class="align-center" src="_images/ingress1.png" style="width: 50%;"/></a>
<dl class="simple">
<dt>Netmaker allows for “external clients” to reach into a network and access services via an Ingress Gateway. So what is an “external client”? An external client is any machine which cannot or should not be meshed. This can include:</dt><dd><ul class="simple">
<li><p>Phones</p></li>
@ -901,7 +496,7 @@ If you do not want DNS on your ext client conf files, simply leave it blank.</p>
<div class="md-footer-nav">
<nav class="md-footer-nav__inner md-grid">
<a href="client-installation.html" title="Client Installation"
<a href="getting-started.html" title="Getting Started"
class="md-flex md-footer-nav__link md-footer-nav__link--prev"
rel="prev">
<div class="md-flex__cell md-flex__cell--shrink">
@ -910,17 +505,17 @@ If you do not want DNS on your ext client conf files, simply leave it blank.</p>
<div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
<span class="md-flex__ellipsis">
<span
class="md-footer-nav__direction"> Previous </span> Client Installation </span>
class="md-footer-nav__direction"> Previous </span> Getting Started </span>
</div>
</a>
<a href="usage.html" title="Using Netmaker"
<a href="egress-gateway.html" title="Egress Gateway"
class="md-flex md-footer-nav__link md-footer-nav__link--next"
rel="next">
<div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title"><span
class="md-flex__ellipsis"> <span
class="md-footer-nav__direction"> Next </span> Using Netmaker </span>
class="md-footer-nav__direction"> Next </span> Egress Gateway </span>
</div>
<div class="md-flex__cell md-flex__cell--shrink"><i
class="md-icon md-icon--arrow-forward md-footer-nav__button"></i>

View file

@ -46,7 +46,7 @@
<title>Index &#8212; Netmaker 0.9.0 documentation</title>
<title>Index &#8212; Netmaker 0.9.4 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/material.css" />
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
@ -79,7 +79,7 @@
<nav class="md-header-nav md-grid">
<div class="md-flex navheader">
<div class="md-flex__cell md-flex__cell--shrink">
<a href="index.html" title="Netmaker 0.9.0 documentation"
<a href="index.html" title="Netmaker 0.9.4 documentation"
class="md-header-nav__button md-logo">
<i class="md-icon">&#xe869</i>
@ -165,7 +165,7 @@
<nav class="md-tabs" data-md-component="tabs">
<div class="md-tabs__inner md-grid">
<ul class="md-tabs__list">
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.0 documentation</a></li>
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.4 documentation</a></li>
</ul>
</div>
</nav>
@ -177,13 +177,13 @@
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--primary" data-md-level="0">
<label class="md-nav__title md-nav__title--site" for="__drawer">
<a href="index.html" title="Netmaker 0.9.0 documentation" class="md-nav__button md-logo">
<a href="index.html" title="Netmaker 0.9.4 documentation" class="md-nav__button md-logo">
<i class="md-icon">&#xe869</i>
</a>
<a href="index.html"
title="Netmaker 0.9.0 documentation">Netmaker Docs</a>
title="Netmaker 0.9.4 documentation">Netmaker Docs</a>
</label>
<div class="md-nav__source">
<a href="https://github.com/gravitl/netmaker/" title="Go to repository" class="md-source" data-md-source="github">
@ -208,71 +208,15 @@
<a href="about.html" class="md-nav__link">About</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="about.html#what-is-netmaker" class="md-nav__link">What is Netmaker?</a>
</li>
<li class="md-nav__item">
<a href="about.html#how-does-netmaker-work" class="md-nav__link">How Does Netmaker Work?</a>
</li>
<li class="md-nav__item">
<a href="about.html#use-cases-for-netmaker" class="md-nav__link">Use Cases for Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="architecture.html" class="md-nav__link">Architecture</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="architecture.html#core-concepts" class="md-nav__link">Core Concepts</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#components" class="md-nav__link">Components</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#technical-process" class="md-nav__link">Technical Process</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#compatible-systems-for-netclient" class="md-nav__link">Compatible Systems for Netclient</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#limitations" class="md-nav__link">Limitations</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -285,505 +229,113 @@
<a href="quick-start.html" class="md-nav__link">Quick Install</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prerequisites" class="md-nav__link">0. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prepare-dns" class="md-nav__link">1. Prepare DNS</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#open-firewall" class="md-nav__link">3. Open Firewall</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="getting-started.html" class="md-nav__link">Getting Started</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="getting-started.html#setup" class="md-nav__link">Setup</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#create-a-network" class="md-nav__link">Create a Network</a>
<a href="external-clients.html" class="md-nav__link">Ingress + External Clients</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#create-a-key" class="md-nav__link">Create a Key</a>
<a href="egress-gateway.html" class="md-nav__link">Egress Gateway</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#deploy-nodes" class="md-nav__link">Deploy Nodes</a>
<a href="relay-server.html" class="md-nav__link">Relay Servers</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#manage-nodes" class="md-nav__link">Manage Nodes</a>
<a href="https://nm-k8s.readthedocs.io" class="md-nav__link">Kubernetes</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-the-netclient" class="md-nav__link">Uninstalling the netclient</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-netmaker" class="md-nav__link">Uninstalling Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html" class="md-nav__link">Install with Nginx (depreciated)</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start-nginx.html#introduction" class="md-nav__link">0. Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prerequisites" class="md-nav__link">1. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prepare-vm" class="md-nav__link">3. Prepare VM</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="server-installation.html" class="md-nav__link">Advanced Server Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="server-installation.html#system-compatibility" class="md-nav__link">System Compatibility</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#server-configuration-reference" class="md-nav__link">Server Configuration Reference</a>
<a href="client-installation.html" class="md-nav__link">Advanced Client Installation</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#dns-mode-setup" class="md-nav__link">DNS Mode Setup</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#docker-compose-install" class="md-nav__link">Docker Compose Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#linux-install-without-docker" class="md-nav__link">Linux Install without Docker</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#kubernetes-install" class="md-nav__link">Kubernetes Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#nginx-reverse-proxy-setup-with-https" class="md-nav__link">Nginx Reverse Proxy Setup with https</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-kubernetes" class="md-nav__link">Highly Available Installation (Kubernetes)</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-vms-bare-metal" class="md-nav__link">Highly Available Installation (VMs/Bare Metal)</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="oauth.html" class="md-nav__link">Integrating OAuth</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="oauth.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-your-provider" class="md-nav__link">Configuring your provider</a>
<a href="usage.html" class="md-nav__link">External Guides</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-netmaker" class="md-nav__link">Configuring Netmaker</a>
<a href="ui-reference.html" class="md-nav__link">UI Reference</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-user-permissions" class="md-nav__link">Configuring User Permissions</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="client-installation.html" class="md-nav__link">Client Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="client-installation.html#introduction-to-netclient" class="md-nav__link">Introduction to Netclient</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#notes-on-windows" class="md-nav__link">Notes on Windows</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#modes-and-system-compatibility" class="md-nav__link">Modes and System Compatibility</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#prerequisites" class="md-nav__link">Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#configuration" class="md-nav__link">Configuration</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#installation" class="md-nav__link">Installation</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#managing-netclient" class="md-nav__link">Managing Netclient</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="external-clients.html" class="md-nav__link">External Clients</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="external-clients.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-an-ingress-gateway" class="md-nav__link">Configuring an Ingress Gateway</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#adding-clients-to-a-gateway" class="md-nav__link">Adding Clients to a Gateway</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-dns-for-ext-clients-optional" class="md-nav__link">Configuring DNS for Ext Clients (OPTIONAL)</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="usage.html" class="md-nav__link">Using Netmaker</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="usage.html#external-tutorials" class="md-nav__link">External Tutorials</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="api.html" class="md-nav__link">API Reference</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="api.html#api-usage" class="md-nav__link">API Usage</a>
</li>
<li class="md-nav__item">
<a href="api.html#authentication" class="md-nav__link">Authentication</a>
<a href="upgrades.html" class="md-nav__link">Upgrades</a>
</li>
<li class="md-nav__item">
<a href="api.html#format-of-calls-for-curl" class="md-nav__link">Format of Calls for Curl</a>
</li>
<li class="md-nav__item">
<a href="api.html#api-documentation" class="md-nav__link">API Documentation</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html" class="md-nav__link">Troubleshooting</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="troubleshoot.html#common-issues" class="md-nav__link">Common Issues</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#server" class="md-nav__link">Server</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#ui" class="md-nav__link">UI</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#netclient" class="md-nav__link">Netclient</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#coredns" class="md-nav__link">CoreDNS</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="support.html" class="md-nav__link">Support</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="support.html#faq" class="md-nav__link">FAQ</a>
</li>
<li class="md-nav__item">
<a href="support.html#contact" class="md-nav__link">Contact</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="conduct.html" class="md-nav__link">Code of Conduct</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="conduct.html#our-pledge" class="md-nav__link">Our Pledge</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-standards" class="md-nav__link">Our Standards</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-responsibilities" class="md-nav__link">Our Responsibilities</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#scope" class="md-nav__link">Scope</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#enforcement" class="md-nav__link">Enforcement</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#attribution" class="md-nav__link">Attribution</a>
</li></ul>
</li>
<li class="md-nav__item">

View file

@ -46,7 +46,7 @@
<title>Getting Started &#8212; Netmaker 0.9.0 documentation</title>
<title>Getting Started &#8212; Netmaker 0.9.4 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/material.css" />
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
@ -56,7 +56,7 @@
<link rel="author" title="About these documents" href="about.html" />
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
<link rel="next" title="Install with Nginx (depreciated)" href="quick-start-nginx.html" />
<link rel="next" title="Advanced Server Installation" href="server-installation.html" />
<link rel="prev" title="Quick Install" href="quick-start.html" />
@ -81,7 +81,7 @@
<nav class="md-header-nav md-grid">
<div class="md-flex navheader">
<div class="md-flex__cell md-flex__cell--shrink">
<a href="index.html" title="Netmaker 0.9.0 documentation"
<a href="index.html" title="Netmaker 0.9.4 documentation"
class="md-header-nav__button md-logo">
<i class="md-icon">&#xe869</i>
@ -167,7 +167,7 @@
<nav class="md-tabs" data-md-component="tabs">
<div class="md-tabs__inner md-grid">
<ul class="md-tabs__list">
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.0 documentation</a></li>
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.4 documentation</a></li>
</ul>
</div>
</nav>
@ -179,13 +179,13 @@
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--primary" data-md-level="0">
<label class="md-nav__title md-nav__title--site" for="__drawer">
<a href="index.html" title="Netmaker 0.9.0 documentation" class="md-nav__button md-logo">
<a href="index.html" title="Netmaker 0.9.4 documentation" class="md-nav__button md-logo">
<i class="md-icon">&#xe869</i>
</a>
<a href="index.html"
title="Netmaker 0.9.0 documentation">Netmaker Docs</a>
title="Netmaker 0.9.4 documentation">Netmaker Docs</a>
</label>
<div class="md-nav__source">
<a href="https://github.com/gravitl/netmaker/" title="Go to repository" class="md-source" data-md-source="github">
@ -209,72 +209,16 @@
<li class="md-nav__item">
<a href="about.html" class="md-nav__link">About</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="about.html" class="md-nav__link">1. About</a>
<a href="about.html#what-is-netmaker" class="md-nav__link">What is Netmaker?</a>
</li>
<li class="md-nav__item">
<a href="about.html#how-does-netmaker-work" class="md-nav__link">How Does Netmaker Work?</a>
</li>
<li class="md-nav__item">
<a href="about.html#use-cases-for-netmaker" class="md-nav__link">Use Cases for Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="architecture.html" class="md-nav__link">Architecture</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="architecture.html#core-concepts" class="md-nav__link">Core Concepts</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#components" class="md-nav__link">Components</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#technical-process" class="md-nav__link">Technical Process</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#compatible-systems-for-netclient" class="md-nav__link">Compatible Systems for Netclient</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#limitations" class="md-nav__link">Limitations</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -287,50 +231,8 @@
<a href="quick-start.html" class="md-nav__link">Quick Install</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prerequisites" class="md-nav__link">0. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prepare-dns" class="md-nav__link">1. Prepare DNS</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#open-firewall" class="md-nav__link">3. Open Firewall</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -417,48 +319,6 @@
<a href="#uninstalling-netmaker" class="md-nav__link">Uninstalling Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html" class="md-nav__link">Install with Nginx (depreciated)</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start-nginx.html#introduction" class="md-nav__link">0. Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prerequisites" class="md-nav__link">1. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prepare-vm" class="md-nav__link">3. Prepare VM</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
@ -466,358 +326,92 @@
<a href="server-installation.html" class="md-nav__link">Advanced Server Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="server-installation.html#system-compatibility" class="md-nav__link">System Compatibility</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#server-configuration-reference" class="md-nav__link">Server Configuration Reference</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#dns-mode-setup" class="md-nav__link">DNS Mode Setup</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#docker-compose-install" class="md-nav__link">Docker Compose Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#linux-install-without-docker" class="md-nav__link">Linux Install without Docker</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#kubernetes-install" class="md-nav__link">Kubernetes Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#nginx-reverse-proxy-setup-with-https" class="md-nav__link">Nginx Reverse Proxy Setup with https</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-kubernetes" class="md-nav__link">Highly Available Installation (Kubernetes)</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-vms-bare-metal" class="md-nav__link">Highly Available Installation (VMs/Bare Metal)</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="oauth.html" class="md-nav__link">Integrating OAuth</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="oauth.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-your-provider" class="md-nav__link">Configuring your provider</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-netmaker" class="md-nav__link">Configuring Netmaker</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-user-permissions" class="md-nav__link">Configuring User Permissions</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="client-installation.html" class="md-nav__link">Client Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="client-installation.html#introduction-to-netclient" class="md-nav__link">Introduction to Netclient</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#notes-on-windows" class="md-nav__link">Notes on Windows</a>
<a href="external-clients.html" class="md-nav__link">Ingress GW + External Clients</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#modes-and-system-compatibility" class="md-nav__link">Modes and System Compatibility</a>
<a href="egress-gateway.html" class="md-nav__link">Egress Gateway</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#prerequisites" class="md-nav__link">Prerequisites</a>
<a href="relay-server.html" class="md-nav__link">Relay Servers</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#configuration" class="md-nav__link">Configuration</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#installation" class="md-nav__link">Installation</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#managing-netclient" class="md-nav__link">Managing Netclient</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="external-clients.html" class="md-nav__link">External Clients</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="external-clients.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-an-ingress-gateway" class="md-nav__link">Configuring an Ingress Gateway</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#adding-clients-to-a-gateway" class="md-nav__link">Adding Clients to a Gateway</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-dns-for-ext-clients-optional" class="md-nav__link">Configuring DNS for Ext Clients (OPTIONAL)</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="usage.html" class="md-nav__link">Using Netmaker</a>
<ul class="md-nav__list">
</li>
<li class="md-nav__item">
<a href="usage.html#external-tutorials" class="md-nav__link">External Tutorials</a>
<a href="ui-reference.html" class="md-nav__link">UI Reference</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="api.html" class="md-nav__link">API Reference</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="api.html#api-usage" class="md-nav__link">API Usage</a>
</li>
<li class="md-nav__item">
<a href="api.html#authentication" class="md-nav__link">Authentication</a>
<a href="upgrades.html" class="md-nav__link">Upgrades</a>
</li>
<li class="md-nav__item">
<a href="api.html#format-of-calls-for-curl" class="md-nav__link">Format of Calls for Curl</a>
</li>
<li class="md-nav__item">
<a href="api.html#api-documentation" class="md-nav__link">API Documentation</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html" class="md-nav__link">Troubleshooting</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="troubleshoot.html#common-issues" class="md-nav__link">Common Issues</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#server" class="md-nav__link">Server</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#ui" class="md-nav__link">UI</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#netclient" class="md-nav__link">Netclient</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#coredns" class="md-nav__link">CoreDNS</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="support.html" class="md-nav__link">Support</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="support.html#faq" class="md-nav__link">FAQ</a>
</li>
<li class="md-nav__item">
<a href="support.html#contact" class="md-nav__link">Contact</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="conduct.html" class="md-nav__link">Code of Conduct</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="conduct.html#our-pledge" class="md-nav__link">Our Pledge</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-standards" class="md-nav__link">Our Standards</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-responsibilities" class="md-nav__link">Our Responsibilities</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#scope" class="md-nav__link">Scope</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#enforcement" class="md-nav__link">Enforcement</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#attribution" class="md-nav__link">Attribution</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -984,12 +578,12 @@
</a>
<a href="quick-start-nginx.html" title="Install with Nginx (depreciated)"
<a href="server-installation.html" title="Advanced Server Installation"
class="md-flex md-footer-nav__link md-footer-nav__link--next"
rel="next">
<div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title"><span
class="md-flex__ellipsis"> <span
class="md-footer-nav__direction"> Next </span> Install with Nginx (depreciated) </span>
class="md-footer-nav__direction"> Next </span> Advanced Server Installation </span>
</div>
<div class="md-flex__cell md-flex__cell--shrink"><i
class="md-icon md-icon--arrow-forward md-footer-nav__button"></i>

View file

@ -46,7 +46,7 @@
<title>Welcome to the Netmaker Documentation &#8212; Netmaker 0.9.0 documentation</title>
<title>Welcome to the Netmaker Documentation &#8212; Netmaker 0.9.4 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/material.css" />
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
@ -80,7 +80,7 @@
<nav class="md-header-nav md-grid">
<div class="md-flex navheader">
<div class="md-flex__cell md-flex__cell--shrink">
<a href="#" title="Netmaker 0.9.0 documentation"
<a href="#" title="Netmaker 0.9.4 documentation"
class="md-header-nav__button md-logo">
<i class="md-icon">&#xe869</i>
@ -166,7 +166,7 @@
<nav class="md-tabs" data-md-component="tabs">
<div class="md-tabs__inner md-grid">
<ul class="md-tabs__list">
<li class="md-tabs__item"><a href="#" class="md-tabs__link">Netmaker 0.9.0 documentation</a></li>
<li class="md-tabs__item"><a href="#" class="md-tabs__link">Netmaker 0.9.4 documentation</a></li>
</ul>
</div>
</nav>
@ -178,13 +178,13 @@
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--primary" data-md-level="0">
<label class="md-nav__title md-nav__title--site" for="__drawer">
<a href="#" title="Netmaker 0.9.0 documentation" class="md-nav__button md-logo">
<a href="#" title="Netmaker 0.9.4 documentation" class="md-nav__button md-logo">
<i class="md-icon">&#xe869</i>
</a>
<a href="#"
title="Netmaker 0.9.0 documentation">Netmaker Docs</a>
title="Netmaker 0.9.4 documentation">Netmaker Docs</a>
</label>
<div class="md-nav__source">
<a href="https://github.com/gravitl/netmaker/" title="Go to repository" class="md-source" data-md-source="github">
@ -209,71 +209,15 @@
<a href="about.html" class="md-nav__link">About</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="about.html#what-is-netmaker" class="md-nav__link">What is Netmaker?</a>
</li>
<li class="md-nav__item">
<a href="about.html#how-does-netmaker-work" class="md-nav__link">How Does Netmaker Work?</a>
</li>
<li class="md-nav__item">
<a href="about.html#use-cases-for-netmaker" class="md-nav__link">Use Cases for Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="architecture.html" class="md-nav__link">Architecture</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="architecture.html#core-concepts" class="md-nav__link">Core Concepts</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#components" class="md-nav__link">Components</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#technical-process" class="md-nav__link">Technical Process</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#compatible-systems-for-netclient" class="md-nav__link">Compatible Systems for Netclient</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#limitations" class="md-nav__link">Limitations</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -286,505 +230,113 @@
<a href="quick-start.html" class="md-nav__link">Quick Install</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prerequisites" class="md-nav__link">0. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prepare-dns" class="md-nav__link">1. Prepare DNS</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#open-firewall" class="md-nav__link">3. Open Firewall</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="getting-started.html" class="md-nav__link">Getting Started</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="getting-started.html#setup" class="md-nav__link">Setup</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#create-a-network" class="md-nav__link">Create a Network</a>
<a href="external-clients.html" class="md-nav__link">Ingress + External Clients</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#create-a-key" class="md-nav__link">Create a Key</a>
<a href="egress-gateway.html" class="md-nav__link">Egress Gateway</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#deploy-nodes" class="md-nav__link">Deploy Nodes</a>
<a href="relay-server.html" class="md-nav__link">Relay Servers</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#manage-nodes" class="md-nav__link">Manage Nodes</a>
<a href="https://nm-k8s.readthedocs.io" class="md-nav__link">Kubernetes</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-the-netclient" class="md-nav__link">Uninstalling the netclient</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-netmaker" class="md-nav__link">Uninstalling Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html" class="md-nav__link">Install with Nginx (depreciated)</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start-nginx.html#introduction" class="md-nav__link">0. Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prerequisites" class="md-nav__link">1. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prepare-vm" class="md-nav__link">3. Prepare VM</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="server-installation.html" class="md-nav__link">Advanced Server Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="server-installation.html#system-compatibility" class="md-nav__link">System Compatibility</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#server-configuration-reference" class="md-nav__link">Server Configuration Reference</a>
<a href="client-installation.html" class="md-nav__link">Advanced Client Installation</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#dns-mode-setup" class="md-nav__link">DNS Mode Setup</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#docker-compose-install" class="md-nav__link">Docker Compose Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#linux-install-without-docker" class="md-nav__link">Linux Install without Docker</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#kubernetes-install" class="md-nav__link">Kubernetes Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#nginx-reverse-proxy-setup-with-https" class="md-nav__link">Nginx Reverse Proxy Setup with https</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-kubernetes" class="md-nav__link">Highly Available Installation (Kubernetes)</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-vms-bare-metal" class="md-nav__link">Highly Available Installation (VMs/Bare Metal)</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="oauth.html" class="md-nav__link">Integrating OAuth</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="oauth.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-your-provider" class="md-nav__link">Configuring your provider</a>
<a href="usage.html" class="md-nav__link">External Guides</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-netmaker" class="md-nav__link">Configuring Netmaker</a>
<a href="ui-reference.html" class="md-nav__link">UI Reference</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-user-permissions" class="md-nav__link">Configuring User Permissions</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="client-installation.html" class="md-nav__link">Client Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="client-installation.html#introduction-to-netclient" class="md-nav__link">Introduction to Netclient</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#notes-on-windows" class="md-nav__link">Notes on Windows</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#modes-and-system-compatibility" class="md-nav__link">Modes and System Compatibility</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#prerequisites" class="md-nav__link">Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#configuration" class="md-nav__link">Configuration</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#installation" class="md-nav__link">Installation</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#managing-netclient" class="md-nav__link">Managing Netclient</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="external-clients.html" class="md-nav__link">External Clients</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="external-clients.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-an-ingress-gateway" class="md-nav__link">Configuring an Ingress Gateway</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#adding-clients-to-a-gateway" class="md-nav__link">Adding Clients to a Gateway</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-dns-for-ext-clients-optional" class="md-nav__link">Configuring DNS for Ext Clients (OPTIONAL)</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="usage.html" class="md-nav__link">Using Netmaker</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="usage.html#external-tutorials" class="md-nav__link">External Tutorials</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="api.html" class="md-nav__link">API Reference</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="api.html#api-usage" class="md-nav__link">API Usage</a>
</li>
<li class="md-nav__item">
<a href="api.html#authentication" class="md-nav__link">Authentication</a>
<a href="upgrades.html" class="md-nav__link">Upgrades</a>
</li>
<li class="md-nav__item">
<a href="api.html#format-of-calls-for-curl" class="md-nav__link">Format of Calls for Curl</a>
</li>
<li class="md-nav__item">
<a href="api.html#api-documentation" class="md-nav__link">API Documentation</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html" class="md-nav__link">Troubleshooting</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="troubleshoot.html#common-issues" class="md-nav__link">Common Issues</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#server" class="md-nav__link">Server</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#ui" class="md-nav__link">UI</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#netclient" class="md-nav__link">Netclient</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#coredns" class="md-nav__link">CoreDNS</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="support.html" class="md-nav__link">Support</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="support.html#faq" class="md-nav__link">FAQ</a>
</li>
<li class="md-nav__item">
<a href="support.html#contact" class="md-nav__link">Contact</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="conduct.html" class="md-nav__link">Code of Conduct</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="conduct.html#our-pledge" class="md-nav__link">Our Pledge</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-standards" class="md-nav__link">Our Standards</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-responsibilities" class="md-nav__link">Our Responsibilities</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#scope" class="md-nav__link">Scope</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#enforcement" class="md-nav__link">Enforcement</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#attribution" class="md-nav__link">Attribution</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -811,26 +363,26 @@
<ul class="md-nav__list">
<li class="md-nav__item"><a href="#about" class="md-nav__link">About</a>
</li>
<li class="md-nav__item"><a href="#architecture" class="md-nav__link">Architecture</a>
<li class="md-nav__item"><a href="#getting-started" class="md-nav__link">Getting Started</a>
</li>
<li class="md-nav__item"><a href="#install" class="md-nav__link">Install</a>
<li class="md-nav__item"><a href="#ingress-egress-and-relays" class="md-nav__link">Ingress, Egress, and Relays</a>
</li>
<li class="md-nav__item"><a href="#quick-start" class="md-nav__link">Quick Start</a>
<li class="md-nav__item"><a href="#kubernetes-documentation" class="md-nav__link">Kubernetes Documentation</a>
</li>
<li class="md-nav__item"><a href="#quick-start-nginx-depreciated" class="md-nav__link">Quick Start Nginx (depreciated)</a>
<li class="md-nav__item"><a href="#advanced-server-installation" class="md-nav__link">Advanced Server Installation</a>
</li>
<li class="md-nav__item"><a href="#server-installation" class="md-nav__link">Server Installation</a>
<li class="md-nav__item"><a href="#advanced-client-installation" class="md-nav__link">Advanced Client Installation</a>
</li>
<li class="md-nav__item"><a href="#oauth-configuration" class="md-nav__link">Oauth Configuration</a>
</li>
<li class="md-nav__item"><a href="#client-installation" class="md-nav__link">Client Installation</a>
<li class="md-nav__item"><a href="#external-guides" class="md-nav__link">External Guides</a>
</li>
<li class="md-nav__item"><a href="#external-clients" class="md-nav__link">External Clients</a>
</li>
<li class="md-nav__item"><a href="#guides" class="md-nav__link">Guides</a>
<li class="md-nav__item"><a href="#ui-reference" class="md-nav__link">UI Reference</a>
</li>
<li class="md-nav__item"><a href="#api-reference" class="md-nav__link">API Reference</a>
</li>
<li class="md-nav__item"><a href="#upgrades" class="md-nav__link">Upgrades</a>
</li>
<li class="md-nav__item"><a href="#troubleshooting" class="md-nav__link">Troubleshooting</a>
</li>
<li class="md-nav__item"><a href="#support" class="md-nav__link">Support</a>
@ -856,9 +408,10 @@
<h1 id="index--page-root">Welcome to the Netmaker Documentation<a class="headerlink" href="#index--page-root" title="Permalink to this headline"></a></h1>
<p>Netmaker is a platform for creating and managing fast, secure, and dynamic virtual overlay networks using WireGuard.</p>
<p>This documentation covers Netmakers <a class="reference internal" href="server-installation.html"><span class="doc">installation</span></a>, <a class="reference internal" href="usage.html"><span class="doc">usage</span></a>, <a class="reference internal" href="support.html"><span class="doc">troubleshooting</span></a>, and customization, as well as reference documents for the <a class="reference internal" href="api.html"><span class="doc">API</span></a>, UI and Agent configuration. All of the <a class="reference external" href="https://github.com/gravitl/netmaker">source code</a> for Netmaker is on GitHub.</p>
<p><strong>For Kubernetes-specific guidance, please see the</strong> <a class="reference external" href="https://nm-k8s.readthedocs.io">Netmaker Kubernetes Documentation.</a></p>
<h2 id="about">About<a class="headerlink" href="#about" title="Permalink to this headline"></a></h2>
<p>A quick overview of Netmaker, explaining what it is, how it works, and why you should be using it.</p>
<p>High-level information about what Netmaker is and how it works.</p>
<div class="toctree-wrapper compound">
<ul>
<li class="toctree-l1"><a class="reference internal" href="about.html">About</a><ul>
@ -867,14 +420,6 @@
<li class="toctree-l2"><a class="reference internal" href="about.html#use-cases-for-netmaker">Use Cases for Netmaker</a></li>
</ul>
</li>
</ul>
</div>
<h2 id="architecture">Architecture<a class="headerlink" href="#architecture" title="Permalink to this headline"></a></h2>
<p>A technical overview of Netmaker, including design decisions and limitations.</p>
<div class="toctree-wrapper compound">
<ul>
<li class="toctree-l1"><a class="reference internal" href="architecture.html">Architecture</a><ul>
<li class="toctree-l2"><a class="reference internal" href="architecture.html#core-concepts">Core Concepts</a></li>
<li class="toctree-l2"><a class="reference internal" href="architecture.html#components">Components</a></li>
@ -887,19 +432,11 @@
</div>
<h2 id="install">Install<a class="headerlink" href="#install" title="Permalink to this headline"></a></h2>
<p>Choose the right install method for you.</p>
<h2 id="getting-started">Getting Started<a class="headerlink" href="#getting-started" title="Permalink to this headline"></a></h2>
<p>How to install Netmaker and set up your first network.</p>
<div class="toctree-wrapper compound">
<ul>
<li class="toctree-l1"><a class="reference internal" href="install.html">Install</a></li>
</ul>
</div>
<h2 id="quick-start">Quick Start<a class="headerlink" href="#quick-start" title="Permalink to this headline"></a></h2>
<p>A quick start guide to getting up and running with Netmaker and WireGuard as quickly as possible.</p>
<div class="toctree-wrapper compound">
<ul>
<li class="toctree-l1"><a class="reference internal" href="quick-start.html">Quick Install</a><ul>
<li class="toctree-l2"><a class="reference internal" href="quick-start.html#introduction">Introduction</a></li>
<li class="toctree-l2"><a class="reference internal" href="quick-start.html#prerequisites">0. Prerequisites</a></li>
@ -909,10 +446,6 @@
<li class="toctree-l2"><a class="reference internal" href="quick-start.html#install-netmaker">4. Install Netmaker</a></li>
</ul>
</li>
</ul>
</div>
<div class="toctree-wrapper compound">
<ul>
<li class="toctree-l1"><a class="reference internal" href="getting-started.html">Getting Started</a><ul>
<li class="toctree-l2"><a class="reference internal" href="getting-started.html#setup">Setup</a></li>
<li class="toctree-l2"><a class="reference internal" href="getting-started.html#create-a-network">Create a Network</a></li>
@ -927,16 +460,52 @@
</div>
<h2 id="quick-start-nginx-depreciated">Quick Start Nginx (depreciated)<a class="headerlink" href="#quick-start-nginx-depreciated" title="Permalink to this headline"></a></h2>
<p>An older guide to getting up and running with Netmaker using Nginx as quickly as possible.</p>
<h2 id="ingress-egress-and-relays">Ingress, Egress, and Relays<a class="headerlink" href="#ingress-egress-and-relays" title="Permalink to this headline"></a></h2>
<p>How to give machines outside of the Netmaker network access to network resources via an Ingress Gateway:</p>
<div class="toctree-wrapper compound">
<ul>
<li class="toctree-l1"><a class="reference internal" href="quick-start-nginx.html">Install with Nginx (depreciated)</a></li>
<li class="toctree-l1"><a class="reference internal" href="external-clients.html">Ingress + External Clients</a><ul>
<li class="toctree-l2"><a class="reference internal" href="external-clients.html#introduction">Introduction</a></li>
<li class="toctree-l2"><a class="reference internal" href="external-clients.html#configuring-an-ingress-gateway">Configuring an Ingress Gateway</a></li>
<li class="toctree-l2"><a class="reference internal" href="external-clients.html#adding-clients-to-a-gateway">Adding Clients to a Gateway</a></li>
<li class="toctree-l2"><a class="reference internal" href="external-clients.html#configuring-dns-for-ext-clients-optional">Configuring DNS for Ext Clients (OPTIONAL)</a></li>
</ul>
</li>
</ul>
</div>
<p>How to give machines inside the Netmaker network access to external network resources via an Egress Gateway:</p>
<div class="toctree-wrapper compound">
<ul>
<li class="toctree-l1"><a class="reference internal" href="egress-gateway.html">Egress Gateway</a><ul>
<li class="toctree-l2"><a class="reference internal" href="egress-gateway.html#introduction">Introduction</a></li>
<li class="toctree-l2"><a class="reference internal" href="egress-gateway.html#configuring-an-egress-gateway">Configuring an Egress Gateway</a></li>
<li class="toctree-l2"><a class="reference internal" href="egress-gateway.html#use-cases">Use Cases</a></li>
</ul>
</li>
</ul>
</div>
<p>How to make machines inside the network reachable if they are blocked by NAT/Firewall:</p>
<div class="toctree-wrapper compound">
<ul>
<li class="toctree-l1"><a class="reference internal" href="relay-server.html">Relay Servers</a><ul>
<li class="toctree-l2"><a class="reference internal" href="relay-server.html#introduction">Introduction</a></li>
<li class="toctree-l2"><a class="reference internal" href="relay-server.html#configuring-a-relay">Configuring a Relay</a></li>
</ul>
</li>
</ul>
</div>
<h2 id="server-installation">Server Installation<a class="headerlink" href="#server-installation" title="Permalink to this headline"></a></h2>
<h2 id="kubernetes-documentation">Kubernetes Documentation<a class="headerlink" href="#kubernetes-documentation" title="Permalink to this headline"></a></h2>
<div class="toctree-wrapper compound">
<ul>
<li class="toctree-l1"><a class="reference external" href="https://nm-k8s.readthedocs.io">Kubernetes</a></li>
</ul>
</div>
<p><a class="reference external" href="https://nm-k8s.readthedocs.io">Netmaker Kubernetes Documentation</a></p>
<h2 id="advanced-server-installation">Advanced Server Installation<a class="headerlink" href="#advanced-server-installation" title="Permalink to this headline"></a></h2>
<p>A detailed guide to installing the Netmaker server (API, DB, UI, DNS), and configuration options.</p>
<div class="toctree-wrapper compound">
<ul>
@ -956,6 +525,24 @@
</div>
<h2 id="advanced-client-installation">Advanced Client Installation<a class="headerlink" href="#advanced-client-installation" title="Permalink to this headline"></a></h2>
<p>A detailed guide to installing the Netmaker agent (netclient) on devices and configuration options.</p>
<div class="toctree-wrapper compound">
<ul>
<li class="toctree-l1"><a class="reference internal" href="client-installation.html">Advanced Client Installation</a><ul>
<li class="toctree-l2"><a class="reference internal" href="client-installation.html#introduction-to-netclient">Introduction to Netclient</a></li>
<li class="toctree-l2"><a class="reference internal" href="client-installation.html#notes-on-windows">Notes on Windows</a></li>
<li class="toctree-l2"><a class="reference internal" href="client-installation.html#modes-and-system-compatibility">Modes and System Compatibility</a></li>
<li class="toctree-l2"><a class="reference internal" href="client-installation.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l2"><a class="reference internal" href="client-installation.html#configuration">Configuration</a></li>
<li class="toctree-l2"><a class="reference internal" href="client-installation.html#installation">Installation</a></li>
<li class="toctree-l2"><a class="reference internal" href="client-installation.html#managing-netclient">Managing Netclient</a></li>
</ul>
</li>
</ul>
</div>
<h2 id="oauth-configuration">Oauth Configuration<a class="headerlink" href="#oauth-configuration" title="Permalink to this headline"></a></h2>
<p>A simple guide to configuring OAuth for Netmaker.</p>
<div class="toctree-wrapper compound">
@ -971,45 +558,30 @@
</div>
<h2 id="client-installation">Client Installation<a class="headerlink" href="#client-installation" title="Permalink to this headline"></a></h2>
<p>A detailed guide to installing the Netmaker agent (netclient) on devices and configuration options.</p>
<div class="toctree-wrapper compound">
<ul>
<li class="toctree-l1"><a class="reference internal" href="client-installation.html">Client Installation</a><ul>
<li class="toctree-l2"><a class="reference internal" href="client-installation.html#introduction-to-netclient">Introduction to Netclient</a></li>
<li class="toctree-l2"><a class="reference internal" href="client-installation.html#notes-on-windows">Notes on Windows</a></li>
<li class="toctree-l2"><a class="reference internal" href="client-installation.html#modes-and-system-compatibility">Modes and System Compatibility</a></li>
<li class="toctree-l2"><a class="reference internal" href="client-installation.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l2"><a class="reference internal" href="client-installation.html#configuration">Configuration</a></li>
<li class="toctree-l2"><a class="reference internal" href="client-installation.html#installation">Installation</a></li>
<li class="toctree-l2"><a class="reference internal" href="client-installation.html#managing-netclient">Managing Netclient</a></li>
</ul>
</li>
</ul>
</div>
<h2 id="external-clients">External Clients<a class="headerlink" href="#external-clients" title="Permalink to this headline"></a></h2>
<p>A detailed guide to give clients outside of the Netmaker network access to network resources.</p>
<div class="toctree-wrapper compound">
<ul>
<li class="toctree-l1"><a class="reference internal" href="external-clients.html">External Clients</a><ul>
<li class="toctree-l2"><a class="reference internal" href="external-clients.html#introduction">Introduction</a></li>
<li class="toctree-l2"><a class="reference internal" href="external-clients.html#configuring-an-ingress-gateway">Configuring an Ingress Gateway</a></li>
<li class="toctree-l2"><a class="reference internal" href="external-clients.html#adding-clients-to-a-gateway">Adding Clients to a Gateway</a></li>
<li class="toctree-l2"><a class="reference internal" href="external-clients.html#configuring-dns-for-ext-clients-optional">Configuring DNS for Ext Clients (OPTIONAL)</a></li>
</ul>
</li>
</ul>
</div>
<h2 id="guides">Guides<a class="headerlink" href="#guides" title="Permalink to this headline"></a></h2>
<h2 id="external-guides">External Guides<a class="headerlink" href="#external-guides" title="Permalink to this headline"></a></h2>
<p>A handful of guides for use cases including site-to-site, Kubernetes, private DNS, and more.</p>
<div class="toctree-wrapper compound">
<ul>
<li class="toctree-l1"><a class="reference internal" href="usage.html">Using Netmaker</a><ul>
<li class="toctree-l2"><a class="reference internal" href="usage.html#external-tutorials">External Tutorials</a></li>
<li class="toctree-l1"><a class="reference internal" href="usage.html">External Guides</a><ul>
<li class="toctree-l2"><a class="reference internal" href="usage.html#video-tutorials">Video Tutorials</a></li>
<li class="toctree-l2"><a class="reference internal" href="usage.html#written-tutorials">Written Tutorials</a></li>
</ul>
</li>
</ul>
</div>
<h2 id="ui-reference">UI Reference<a class="headerlink" href="#ui-reference" title="Permalink to this headline"></a></h2>
<p>A reference document for the Netmaker Server UI, with annotated screenshot detailing each field.</p>
<div class="toctree-wrapper compound">
<ul>
<li class="toctree-l1"><a class="reference internal" href="ui-reference.html">UI Reference</a><ul>
<li class="toctree-l2"><a class="reference internal" href="ui-reference.html#dashboard">Dashboard</a></li>
<li class="toctree-l2"><a class="reference internal" href="ui-reference.html#networks">Networks</a></li>
<li class="toctree-l2"><a class="reference internal" href="ui-reference.html#nodes">Nodes</a></li>
<li class="toctree-l2"><a class="reference internal" href="ui-reference.html#ext-clients">Ext Clients</a></li>
<li class="toctree-l2"><a class="reference internal" href="ui-reference.html#dns">DNS</a></li>
<li class="toctree-l2"><a class="reference internal" href="ui-reference.html#create-edit-users">Create / Edit Users</a></li>
</ul>
</li>
</ul>
@ -1018,7 +590,6 @@
<h2 id="api-reference">API Reference<a class="headerlink" href="#api-reference" title="Permalink to this headline"></a></h2>
<p>A reference document for the Netmaker Server API, and example API calls for various use cases.</p>
<p><strong>Coming Soon:</strong> Swagger Documentation</p>
<div class="toctree-wrapper compound">
<ul>
<li class="toctree-l1"><a class="reference internal" href="api.html">API Reference</a></li>
@ -1026,6 +597,15 @@
</div>
<h2 id="upgrades">Upgrades<a class="headerlink" href="#upgrades" title="Permalink to this headline"></a></h2>
<p>Upgrading the Netmaker server and clients.</p>
<div class="toctree-wrapper compound">
<ul>
<li class="toctree-l1"><a class="reference internal" href="upgrades.html">Upgrades</a></li>
</ul>
</div>
<h2 id="troubleshooting">Troubleshooting<a class="headerlink" href="#troubleshooting" title="Permalink to this headline"></a></h2>
<p>Help with common Netmaker/netclient issues.</p>
<div class="toctree-wrapper compound">

View file

@ -46,7 +46,7 @@
<title>Install &#8212; Netmaker 0.9.0 documentation</title>
<title>Install &#8212; Netmaker 0.9.4 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/material.css" />
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
@ -81,7 +81,7 @@
<nav class="md-header-nav md-grid">
<div class="md-flex navheader">
<div class="md-flex__cell md-flex__cell--shrink">
<a href="index.html" title="Netmaker 0.9.0 documentation"
<a href="index.html" title="Netmaker 0.9.4 documentation"
class="md-header-nav__button md-logo">
<i class="md-icon">&#xe869</i>
@ -167,7 +167,7 @@
<nav class="md-tabs" data-md-component="tabs">
<div class="md-tabs__inner md-grid">
<ul class="md-tabs__list">
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.0 documentation</a></li>
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.4 documentation</a></li>
</ul>
</div>
</nav>
@ -179,13 +179,13 @@
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--primary" data-md-level="0">
<label class="md-nav__title md-nav__title--site" for="__drawer">
<a href="index.html" title="Netmaker 0.9.0 documentation" class="md-nav__button md-logo">
<a href="index.html" title="Netmaker 0.9.4 documentation" class="md-nav__button md-logo">
<i class="md-icon">&#xe869</i>
</a>
<a href="index.html"
title="Netmaker 0.9.0 documentation">Netmaker Docs</a>
title="Netmaker 0.9.4 documentation">Netmaker Docs</a>
</label>
<div class="md-nav__source">
<a href="https://github.com/gravitl/netmaker/" title="Go to repository" class="md-source" data-md-source="github">
@ -210,71 +210,15 @@
<a href="about.html" class="md-nav__link">About</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="about.html#what-is-netmaker" class="md-nav__link">What is Netmaker?</a>
</li>
<li class="md-nav__item">
<a href="about.html#how-does-netmaker-work" class="md-nav__link">How Does Netmaker Work?</a>
</li>
<li class="md-nav__item">
<a href="about.html#use-cases-for-netmaker" class="md-nav__link">Use Cases for Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="architecture.html" class="md-nav__link">Architecture</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="architecture.html#core-concepts" class="md-nav__link">Core Concepts</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#components" class="md-nav__link">Components</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#technical-process" class="md-nav__link">Technical Process</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#compatible-systems-for-netclient" class="md-nav__link">Compatible Systems for Netclient</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#limitations" class="md-nav__link">Limitations</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -296,491 +240,113 @@
<a href="quick-start.html" class="md-nav__link">Quick Install</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prerequisites" class="md-nav__link">0. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prepare-dns" class="md-nav__link">1. Prepare DNS</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#open-firewall" class="md-nav__link">3. Open Firewall</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="getting-started.html" class="md-nav__link">Getting Started</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="getting-started.html#setup" class="md-nav__link">Setup</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#deploy-nodes" class="md-nav__link">Deploy Nodes</a>
<a href="external-clients.html" class="md-nav__link">Ingress + External Clients</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#manage-nodes" class="md-nav__link">Manage Nodes</a>
<a href="egress-gateway.html" class="md-nav__link">Egress Gateway</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-the-netclient" class="md-nav__link">Uninstalling the netclient</a>
<a href="relay-server.html" class="md-nav__link">Relay Servers</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-netmaker" class="md-nav__link">Uninstalling Netmaker</a>
<a href="https://nm-k8s.readthedocs.io" class="md-nav__link">Kubernetes</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html" class="md-nav__link">Install with Nginx (depreciated)</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start-nginx.html#introduction" class="md-nav__link">0. Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prerequisites" class="md-nav__link">1. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prepare-vm" class="md-nav__link">3. Prepare VM</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="server-installation.html" class="md-nav__link">Advanced Server Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="server-installation.html#system-compatibility" class="md-nav__link">System Compatibility</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#server-configuration-reference" class="md-nav__link">Server Configuration Reference</a>
<a href="client-installation.html" class="md-nav__link">Advanced Client Installation</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#dns-mode-setup" class="md-nav__link">DNS Mode Setup</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#docker-compose-install" class="md-nav__link">Docker Compose Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#linux-install-without-docker" class="md-nav__link">Linux Install without Docker</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#kubernetes-install" class="md-nav__link">Kubernetes Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#nginx-reverse-proxy-setup-with-https" class="md-nav__link">Nginx Reverse Proxy Setup with https</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-kubernetes" class="md-nav__link">Highly Available Installation (Kubernetes)</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-vms-bare-metal" class="md-nav__link">Highly Available Installation (VMs/Bare Metal)</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="oauth.html" class="md-nav__link">Integrating OAuth</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="oauth.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-your-provider" class="md-nav__link">Configuring your provider</a>
<a href="usage.html" class="md-nav__link">External Guides</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-netmaker" class="md-nav__link">Configuring Netmaker</a>
<a href="ui-reference.html" class="md-nav__link">UI Reference</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-user-permissions" class="md-nav__link">Configuring User Permissions</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="client-installation.html" class="md-nav__link">Client Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="client-installation.html#introduction-to-netclient" class="md-nav__link">Introduction to Netclient</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#notes-on-windows" class="md-nav__link">Notes on Windows</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#modes-and-system-compatibility" class="md-nav__link">Modes and System Compatibility</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#prerequisites" class="md-nav__link">Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#configuration" class="md-nav__link">Configuration</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#installation" class="md-nav__link">Installation</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#managing-netclient" class="md-nav__link">Managing Netclient</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="external-clients.html" class="md-nav__link">External Clients</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="external-clients.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-an-ingress-gateway" class="md-nav__link">Configuring an Ingress Gateway</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#adding-clients-to-a-gateway" class="md-nav__link">Adding Clients to a Gateway</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-dns-for-ext-clients-optional" class="md-nav__link">Configuring DNS for Ext Clients (OPTIONAL)</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="usage.html" class="md-nav__link">Using Netmaker</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="usage.html#external-tutorials" class="md-nav__link">External Tutorials</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="api.html" class="md-nav__link">API Reference</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="api.html#api-usage" class="md-nav__link">API Usage</a>
</li>
<li class="md-nav__item">
<a href="api.html#authentication" class="md-nav__link">Authentication</a>
<a href="upgrades.html" class="md-nav__link">Upgrades</a>
</li>
<li class="md-nav__item">
<a href="api.html#format-of-calls-for-curl" class="md-nav__link">Format of Calls for Curl</a>
</li>
<li class="md-nav__item">
<a href="api.html#api-documentation" class="md-nav__link">API Documentation</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html" class="md-nav__link">Troubleshooting</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="troubleshoot.html#common-issues" class="md-nav__link">Common Issues</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#server" class="md-nav__link">Server</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#ui" class="md-nav__link">UI</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#netclient" class="md-nav__link">Netclient</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#coredns" class="md-nav__link">CoreDNS</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="support.html" class="md-nav__link">Support</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="support.html#faq" class="md-nav__link">FAQ</a>
</li>
<li class="md-nav__item">
<a href="support.html#contact" class="md-nav__link">Contact</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="conduct.html" class="md-nav__link">Code of Conduct</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="conduct.html#our-pledge" class="md-nav__link">Our Pledge</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-standards" class="md-nav__link">Our Standards</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-responsibilities" class="md-nav__link">Our Responsibilities</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#scope" class="md-nav__link">Scope</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#enforcement" class="md-nav__link">Enforcement</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#attribution" class="md-nav__link">Attribution</a>
</li></ul>
</li>
<li class="md-nav__item">

View file

@ -46,7 +46,7 @@
<title>License &#8212; Netmaker 0.9.0 documentation</title>
<title>License &#8212; Netmaker 0.9.4 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/material.css" />
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
@ -80,7 +80,7 @@
<nav class="md-header-nav md-grid">
<div class="md-flex navheader">
<div class="md-flex__cell md-flex__cell--shrink">
<a href="index.html" title="Netmaker 0.9.0 documentation"
<a href="index.html" title="Netmaker 0.9.4 documentation"
class="md-header-nav__button md-logo">
<i class="md-icon">&#xe869</i>
@ -166,7 +166,7 @@
<nav class="md-tabs" data-md-component="tabs">
<div class="md-tabs__inner md-grid">
<ul class="md-tabs__list">
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.0 documentation</a></li>
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.4 documentation</a></li>
</ul>
</div>
</nav>
@ -178,13 +178,13 @@
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--primary" data-md-level="0">
<label class="md-nav__title md-nav__title--site" for="__drawer">
<a href="index.html" title="Netmaker 0.9.0 documentation" class="md-nav__button md-logo">
<a href="index.html" title="Netmaker 0.9.4 documentation" class="md-nav__button md-logo">
<i class="md-icon">&#xe869</i>
</a>
<a href="index.html"
title="Netmaker 0.9.0 documentation">Netmaker Docs</a>
title="Netmaker 0.9.4 documentation">Netmaker Docs</a>
</label>
<div class="md-nav__source">
<a href="https://github.com/gravitl/netmaker/" title="Go to repository" class="md-source" data-md-source="github">
@ -208,72 +208,16 @@
<li class="md-nav__item">
<a href="about.html" class="md-nav__link">About</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="about.html" class="md-nav__link">1. About</a>
<a href="about.html#what-is-netmaker" class="md-nav__link">What is Netmaker?</a>
</li>
<li class="md-nav__item">
<a href="about.html#how-does-netmaker-work" class="md-nav__link">How Does Netmaker Work?</a>
</li>
<li class="md-nav__item">
<a href="about.html#use-cases-for-netmaker" class="md-nav__link">Use Cases for Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="architecture.html" class="md-nav__link">Architecture</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="architecture.html#core-concepts" class="md-nav__link">Core Concepts</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#components" class="md-nav__link">Components</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#technical-process" class="md-nav__link">Technical Process</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#compatible-systems-for-netclient" class="md-nav__link">Compatible Systems for Netclient</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#limitations" class="md-nav__link">Limitations</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -286,491 +230,106 @@
<a href="quick-start.html" class="md-nav__link">Quick Install</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prerequisites" class="md-nav__link">0. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prepare-dns" class="md-nav__link">1. Prepare DNS</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#open-firewall" class="md-nav__link">3. Open Firewall</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="getting-started.html" class="md-nav__link">Getting Started</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="getting-started.html#setup" class="md-nav__link">Setup</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#deploy-nodes" class="md-nav__link">Deploy Nodes</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#manage-nodes" class="md-nav__link">Manage Nodes</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-the-netclient" class="md-nav__link">Uninstalling the netclient</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-netmaker" class="md-nav__link">Uninstalling Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html" class="md-nav__link">Install with Nginx (depreciated)</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start-nginx.html#introduction" class="md-nav__link">0. Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prerequisites" class="md-nav__link">1. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prepare-vm" class="md-nav__link">3. Prepare VM</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="server-installation.html" class="md-nav__link">Advanced Server Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="server-installation.html#system-compatibility" class="md-nav__link">System Compatibility</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#server-configuration-reference" class="md-nav__link">Server Configuration Reference</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#dns-mode-setup" class="md-nav__link">DNS Mode Setup</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#docker-compose-install" class="md-nav__link">Docker Compose Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#linux-install-without-docker" class="md-nav__link">Linux Install without Docker</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#kubernetes-install" class="md-nav__link">Kubernetes Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#nginx-reverse-proxy-setup-with-https" class="md-nav__link">Nginx Reverse Proxy Setup with https</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-kubernetes" class="md-nav__link">Highly Available Installation (Kubernetes)</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-vms-bare-metal" class="md-nav__link">Highly Available Installation (VMs/Bare Metal)</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="oauth.html" class="md-nav__link">Integrating OAuth</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="oauth.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-your-provider" class="md-nav__link">Configuring your provider</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-netmaker" class="md-nav__link">Configuring Netmaker</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-user-permissions" class="md-nav__link">Configuring User Permissions</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="client-installation.html" class="md-nav__link">Client Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="client-installation.html#introduction-to-netclient" class="md-nav__link">Introduction to Netclient</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#notes-on-windows" class="md-nav__link">Notes on Windows</a>
<a href="external-clients.html" class="md-nav__link">Ingress GW + External Clients</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#modes-and-system-compatibility" class="md-nav__link">Modes and System Compatibility</a>
<a href="egress-gateway.html" class="md-nav__link">Egress Gateway</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#prerequisites" class="md-nav__link">Prerequisites</a>
<a href="relay-server.html" class="md-nav__link">Relay Servers</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#configuration" class="md-nav__link">Configuration</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#installation" class="md-nav__link">Installation</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#managing-netclient" class="md-nav__link">Managing Netclient</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="external-clients.html" class="md-nav__link">External Clients</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="external-clients.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-an-ingress-gateway" class="md-nav__link">Configuring an Ingress Gateway</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#adding-clients-to-a-gateway" class="md-nav__link">Adding Clients to a Gateway</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-dns-for-ext-clients-optional" class="md-nav__link">Configuring DNS for Ext Clients (OPTIONAL)</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="usage.html" class="md-nav__link">Using Netmaker</a>
<ul class="md-nav__list">
</li>
<li class="md-nav__item">
<a href="usage.html#external-tutorials" class="md-nav__link">External Tutorials</a>
<a href="ui-reference.html" class="md-nav__link">UI Reference</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="api.html" class="md-nav__link">API Reference</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="api.html#api-usage" class="md-nav__link">API Usage</a>
</li>
<li class="md-nav__item">
<a href="api.html#authentication" class="md-nav__link">Authentication</a>
<a href="upgrades.html" class="md-nav__link">Upgrades</a>
</li>
<li class="md-nav__item">
<a href="api.html#format-of-calls-for-curl" class="md-nav__link">Format of Calls for Curl</a>
</li>
<li class="md-nav__item">
<a href="api.html#api-documentation" class="md-nav__link">API Documentation</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html" class="md-nav__link">Troubleshooting</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="troubleshoot.html#common-issues" class="md-nav__link">Common Issues</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#server" class="md-nav__link">Server</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#ui" class="md-nav__link">UI</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#netclient" class="md-nav__link">Netclient</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#coredns" class="md-nav__link">CoreDNS</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="support.html" class="md-nav__link">Support</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="support.html#faq" class="md-nav__link">FAQ</a>
</li>
<li class="md-nav__item">
<a href="support.html#contact" class="md-nav__link">Contact</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="conduct.html" class="md-nav__link">Code of Conduct</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="conduct.html#our-pledge" class="md-nav__link">Our Pledge</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-standards" class="md-nav__link">Our Standards</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-responsibilities" class="md-nav__link">Our Responsibilities</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#scope" class="md-nav__link">Scope</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#enforcement" class="md-nav__link">Enforcement</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#attribution" class="md-nav__link">Attribution</a>
</li></ul>
</li>
<li class="md-nav__item">

View file

@ -46,7 +46,7 @@
<title>Integrating OAuth &#8212; Netmaker 0.9.0 documentation</title>
<title>Integrating OAuth &#8212; Netmaker 0.9.4 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/material.css" />
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
@ -56,8 +56,8 @@
<link rel="author" title="About these documents" href="about.html" />
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
<link rel="next" title="Client Installation" href="client-installation.html" />
<link rel="prev" title="Advanced Server Installation" href="server-installation.html" />
<link rel="next" title="External Guides" href="usage.html" />
<link rel="prev" title="Advanced Client Installation" href="client-installation.html" />
@ -81,7 +81,7 @@
<nav class="md-header-nav md-grid">
<div class="md-flex navheader">
<div class="md-flex__cell md-flex__cell--shrink">
<a href="index.html" title="Netmaker 0.9.0 documentation"
<a href="index.html" title="Netmaker 0.9.4 documentation"
class="md-header-nav__button md-logo">
<i class="md-icon">&#xe869</i>
@ -167,7 +167,7 @@
<nav class="md-tabs" data-md-component="tabs">
<div class="md-tabs__inner md-grid">
<ul class="md-tabs__list">
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.0 documentation</a></li>
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.4 documentation</a></li>
</ul>
</div>
</nav>
@ -179,13 +179,13 @@
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--primary" data-md-level="0">
<label class="md-nav__title md-nav__title--site" for="__drawer">
<a href="index.html" title="Netmaker 0.9.0 documentation" class="md-nav__button md-logo">
<a href="index.html" title="Netmaker 0.9.4 documentation" class="md-nav__button md-logo">
<i class="md-icon">&#xe869</i>
</a>
<a href="index.html"
title="Netmaker 0.9.0 documentation">Netmaker Docs</a>
title="Netmaker 0.9.4 documentation">Netmaker Docs</a>
</label>
<div class="md-nav__source">
<a href="https://github.com/gravitl/netmaker/" title="Go to repository" class="md-source" data-md-source="github">
@ -210,71 +210,15 @@
<a href="about.html" class="md-nav__link">About</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="about.html#what-is-netmaker" class="md-nav__link">What is Netmaker?</a>
</li>
<li class="md-nav__item">
<a href="about.html#how-does-netmaker-work" class="md-nav__link">How Does Netmaker Work?</a>
</li>
<li class="md-nav__item">
<a href="about.html#use-cases-for-netmaker" class="md-nav__link">Use Cases for Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="architecture.html" class="md-nav__link">Architecture</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="architecture.html#core-concepts" class="md-nav__link">Core Concepts</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#components" class="md-nav__link">Components</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#technical-process" class="md-nav__link">Technical Process</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#compatible-systems-for-netclient" class="md-nav__link">Compatible Systems for Netclient</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#limitations" class="md-nav__link">Limitations</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -287,218 +231,57 @@
<a href="quick-start.html" class="md-nav__link">Quick Install</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prerequisites" class="md-nav__link">0. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prepare-dns" class="md-nav__link">1. Prepare DNS</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#open-firewall" class="md-nav__link">3. Open Firewall</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="getting-started.html" class="md-nav__link">Getting Started</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="getting-started.html#setup" class="md-nav__link">Setup</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#create-a-network" class="md-nav__link">Create a Network</a>
<a href="external-clients.html" class="md-nav__link">Ingress + External Clients</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#create-a-key" class="md-nav__link">Create a Key</a>
<a href="egress-gateway.html" class="md-nav__link">Egress Gateway</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#deploy-nodes" class="md-nav__link">Deploy Nodes</a>
<a href="relay-server.html" class="md-nav__link">Relay Servers</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#manage-nodes" class="md-nav__link">Manage Nodes</a>
<a href="https://nm-k8s.readthedocs.io" class="md-nav__link">Kubernetes</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-the-netclient" class="md-nav__link">Uninstalling the netclient</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-netmaker" class="md-nav__link">Uninstalling Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html" class="md-nav__link">Install with Nginx (depreciated)</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start-nginx.html#introduction" class="md-nav__link">0. Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prerequisites" class="md-nav__link">1. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prepare-vm" class="md-nav__link">3. Prepare VM</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="server-installation.html" class="md-nav__link">Advanced Server Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="server-installation.html#system-compatibility" class="md-nav__link">System Compatibility</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#server-configuration-reference" class="md-nav__link">Server Configuration Reference</a>
<a href="client-installation.html" class="md-nav__link">Advanced Client Installation</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#dns-mode-setup" class="md-nav__link">DNS Mode Setup</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#docker-compose-install" class="md-nav__link">Docker Compose Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#linux-install-without-docker" class="md-nav__link">Linux Install without Docker</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#kubernetes-install" class="md-nav__link">Kubernetes Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#nginx-reverse-proxy-setup-with-https" class="md-nav__link">Nginx Reverse Proxy Setup with https</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-kubernetes" class="md-nav__link">Highly Available Installation (Kubernetes)</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-vms-bare-metal" class="md-nav__link">Highly Available Installation (VMs/Bare Metal)</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -560,254 +343,51 @@
<li class="md-nav__item">
<a href="client-installation.html" class="md-nav__link">Client Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="client-installation.html#introduction-to-netclient" class="md-nav__link">Introduction to Netclient</a>
<a href="usage.html" class="md-nav__link">External Guides</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#notes-on-windows" class="md-nav__link">Notes on Windows</a>
<a href="ui-reference.html" class="md-nav__link">UI Reference</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#modes-and-system-compatibility" class="md-nav__link">Modes and System Compatibility</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#prerequisites" class="md-nav__link">Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#configuration" class="md-nav__link">Configuration</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#installation" class="md-nav__link">Installation</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#managing-netclient" class="md-nav__link">Managing Netclient</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="external-clients.html" class="md-nav__link">External Clients</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="external-clients.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-an-ingress-gateway" class="md-nav__link">Configuring an Ingress Gateway</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#adding-clients-to-a-gateway" class="md-nav__link">Adding Clients to a Gateway</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-dns-for-ext-clients-optional" class="md-nav__link">Configuring DNS for Ext Clients (OPTIONAL)</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="usage.html" class="md-nav__link">Using Netmaker</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="usage.html#external-tutorials" class="md-nav__link">External Tutorials</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="api.html" class="md-nav__link">API Reference</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="api.html#api-usage" class="md-nav__link">API Usage</a>
</li>
<li class="md-nav__item">
<a href="api.html#authentication" class="md-nav__link">Authentication</a>
<a href="upgrades.html" class="md-nav__link">Upgrades</a>
</li>
<li class="md-nav__item">
<a href="api.html#format-of-calls-for-curl" class="md-nav__link">Format of Calls for Curl</a>
</li>
<li class="md-nav__item">
<a href="api.html#api-documentation" class="md-nav__link">API Documentation</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html" class="md-nav__link">Troubleshooting</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="troubleshoot.html#common-issues" class="md-nav__link">Common Issues</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#server" class="md-nav__link">Server</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#ui" class="md-nav__link">UI</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#netclient" class="md-nav__link">Netclient</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#coredns" class="md-nav__link">CoreDNS</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="support.html" class="md-nav__link">Support</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="support.html#faq" class="md-nav__link">FAQ</a>
</li>
<li class="md-nav__item">
<a href="support.html#contact" class="md-nav__link">Contact</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="conduct.html" class="md-nav__link">Code of Conduct</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="conduct.html#our-pledge" class="md-nav__link">Our Pledge</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-standards" class="md-nav__link">Our Standards</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-responsibilities" class="md-nav__link">Our Responsibilities</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#scope" class="md-nav__link">Scope</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#enforcement" class="md-nav__link">Enforcement</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#attribution" class="md-nav__link">Attribution</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -877,13 +457,14 @@ Instructions for Microsoft Azure AD: <a class="reference external" href="https:/
<h2 id="configuring-netmaker">Configuring Netmaker<a class="headerlink" href="#configuring-netmaker" title="Permalink to this headline"></a></h2>
<p>After you have configured your OAuth provider, take note of the CLIENT_ID and CLIENT_SECRET.</p>
<p>After you have configured your OAuth provider, take note of the CLIENT_ID and CLIENT_SECRET. If you are using Azure for oauth, you may also want to note down the Azure tenant ID you wish to use.</p>
<p>Next, Configure Netmaker with the following environment variables. If any are left blank, OAuth will fail.</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">AUTH_PROVIDER</span><span class="p">:</span> <span class="s2">"&lt;azure-ad|github|google&gt;"</span>
<span class="n">CLIENT_ID</span><span class="p">:</span> <span class="s2">"&lt;client id of your oauth provider&gt;"</span>
<span class="n">CLIENT_SECRET</span><span class="p">:</span> <span class="s2">"&lt;client secret of your oauth provider&gt;"</span>
<span class="n">SERVER_HTTP_HOST</span><span class="p">:</span> <span class="s2">"api.&lt;netmaker base domain&gt;"</span>
<span class="n">FRONTEND_URL</span><span class="p">:</span> <span class="s2">"https://dashboard.&lt;netmaker base domain&gt;"</span>
<span class="n">AZURE_TENANT</span><span class="p">:</span> <span class="s2">"&lt;only for azure, you may optionally specify the tenant for the OAuth&gt;"</span>
</pre></div>
</div>
<p>After restarting your server, the Netmaker logs will indicate if the OAuth provider was successfully initialized:</p>
@ -913,7 +494,7 @@ Instructions for Microsoft Azure AD: <a class="reference external" href="https:/
<div class="md-footer-nav">
<nav class="md-footer-nav__inner md-grid">
<a href="server-installation.html" title="Advanced Server Installation"
<a href="client-installation.html" title="Advanced Client Installation"
class="md-flex md-footer-nav__link md-footer-nav__link--prev"
rel="prev">
<div class="md-flex__cell md-flex__cell--shrink">
@ -922,17 +503,17 @@ Instructions for Microsoft Azure AD: <a class="reference external" href="https:/
<div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
<span class="md-flex__ellipsis">
<span
class="md-footer-nav__direction"> Previous </span> Advanced Server Installation </span>
class="md-footer-nav__direction"> Previous </span> Advanced Client Installation </span>
</div>
</a>
<a href="client-installation.html" title="Client Installation"
<a href="usage.html" title="External Guides"
class="md-flex md-footer-nav__link md-footer-nav__link--next"
rel="next">
<div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title"><span
class="md-flex__ellipsis"> <span
class="md-footer-nav__direction"> Next </span> Client Installation </span>
class="md-footer-nav__direction"> Next </span> External Guides </span>
</div>
<div class="md-flex__cell md-flex__cell--shrink"><i
class="md-icon md-icon--arrow-forward md-footer-nav__button"></i>

Binary file not shown.

View file

@ -46,7 +46,7 @@
<title>Install with Nginx (depreciated) &#8212; Netmaker 0.9.0 documentation</title>
<title>Install with Nginx (depreciated) &#8212; Netmaker 0.9.4 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/material.css" />
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
@ -81,7 +81,7 @@
<nav class="md-header-nav md-grid">
<div class="md-flex navheader">
<div class="md-flex__cell md-flex__cell--shrink">
<a href="index.html" title="Netmaker 0.9.0 documentation"
<a href="index.html" title="Netmaker 0.9.4 documentation"
class="md-header-nav__button md-logo">
<i class="md-icon">&#xe869</i>
@ -167,7 +167,7 @@
<nav class="md-tabs" data-md-component="tabs">
<div class="md-tabs__inner md-grid">
<ul class="md-tabs__list">
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.0 documentation</a></li>
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.4 documentation</a></li>
</ul>
</div>
</nav>
@ -179,13 +179,13 @@
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--primary" data-md-level="0">
<label class="md-nav__title md-nav__title--site" for="__drawer">
<a href="index.html" title="Netmaker 0.9.0 documentation" class="md-nav__button md-logo">
<a href="index.html" title="Netmaker 0.9.4 documentation" class="md-nav__button md-logo">
<i class="md-icon">&#xe869</i>
</a>
<a href="index.html"
title="Netmaker 0.9.0 documentation">Netmaker Docs</a>
title="Netmaker 0.9.4 documentation">Netmaker Docs</a>
</label>
<div class="md-nav__source">
<a href="https://github.com/gravitl/netmaker/" title="Go to repository" class="md-source" data-md-source="github">
@ -343,6 +343,20 @@
<a href="getting-started.html#setup" class="md-nav__link">Setup</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#create-a-network" class="md-nav__link">Create a Network</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#create-a-key" class="md-nav__link">Create a Key</a>
</li>
<li class="md-nav__item">

View file

@ -46,7 +46,7 @@
<title>Quick Install &#8212; Netmaker 0.9.0 documentation</title>
<title>Quick Install &#8212; Netmaker 0.9.4 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/material.css" />
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
@ -81,7 +81,7 @@
<nav class="md-header-nav md-grid">
<div class="md-flex navheader">
<div class="md-flex__cell md-flex__cell--shrink">
<a href="index.html" title="Netmaker 0.9.0 documentation"
<a href="index.html" title="Netmaker 0.9.4 documentation"
class="md-header-nav__button md-logo">
<i class="md-icon">&#xe869</i>
@ -167,7 +167,7 @@
<nav class="md-tabs" data-md-component="tabs">
<div class="md-tabs__inner md-grid">
<ul class="md-tabs__list">
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.0 documentation</a></li>
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.4 documentation</a></li>
</ul>
</div>
</nav>
@ -179,13 +179,13 @@
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--primary" data-md-level="0">
<label class="md-nav__title md-nav__title--site" for="__drawer">
<a href="index.html" title="Netmaker 0.9.0 documentation" class="md-nav__button md-logo">
<a href="index.html" title="Netmaker 0.9.4 documentation" class="md-nav__button md-logo">
<i class="md-icon">&#xe869</i>
</a>
<a href="index.html"
title="Netmaker 0.9.0 documentation">Netmaker Docs</a>
title="Netmaker 0.9.4 documentation">Netmaker Docs</a>
</label>
<div class="md-nav__source">
<a href="https://github.com/gravitl/netmaker/" title="Go to repository" class="md-source" data-md-source="github">
@ -209,72 +209,16 @@
<li class="md-nav__item">
<a href="about.html" class="md-nav__link">About</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="about.html" class="md-nav__link">1. About</a>
<a href="about.html#what-is-netmaker" class="md-nav__link">What is Netmaker?</a>
</li>
<li class="md-nav__item">
<a href="about.html#how-does-netmaker-work" class="md-nav__link">How Does Netmaker Work?</a>
</li>
<li class="md-nav__item">
<a href="about.html#use-cases-for-netmaker" class="md-nav__link">Use Cases for Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="architecture.html" class="md-nav__link">Architecture</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="architecture.html#core-concepts" class="md-nav__link">Core Concepts</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#components" class="md-nav__link">Components</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#technical-process" class="md-nav__link">Technical Process</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#compatible-systems-for-netclient" class="md-nav__link">Compatible Systems for Netclient</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#limitations" class="md-nav__link">Limitations</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -370,442 +314,99 @@
<a href="getting-started.html" class="md-nav__link">Getting Started</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="getting-started.html#setup" class="md-nav__link">Setup</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#deploy-nodes" class="md-nav__link">Deploy Nodes</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#manage-nodes" class="md-nav__link">Manage Nodes</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-the-netclient" class="md-nav__link">Uninstalling the netclient</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-netmaker" class="md-nav__link">Uninstalling Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html" class="md-nav__link">Install with Nginx (depreciated)</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start-nginx.html#introduction" class="md-nav__link">0. Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prerequisites" class="md-nav__link">1. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prepare-vm" class="md-nav__link">3. Prepare VM</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="server-installation.html" class="md-nav__link">Advanced Server Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="server-installation.html#system-compatibility" class="md-nav__link">System Compatibility</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#server-configuration-reference" class="md-nav__link">Server Configuration Reference</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#dns-mode-setup" class="md-nav__link">DNS Mode Setup</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#docker-compose-install" class="md-nav__link">Docker Compose Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#linux-install-without-docker" class="md-nav__link">Linux Install without Docker</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#kubernetes-install" class="md-nav__link">Kubernetes Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#nginx-reverse-proxy-setup-with-https" class="md-nav__link">Nginx Reverse Proxy Setup with https</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-kubernetes" class="md-nav__link">Highly Available Installation (Kubernetes)</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-vms-bare-metal" class="md-nav__link">Highly Available Installation (VMs/Bare Metal)</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="oauth.html" class="md-nav__link">Integrating OAuth</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="oauth.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-your-provider" class="md-nav__link">Configuring your provider</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-netmaker" class="md-nav__link">Configuring Netmaker</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-user-permissions" class="md-nav__link">Configuring User Permissions</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="client-installation.html" class="md-nav__link">Client Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="client-installation.html#introduction-to-netclient" class="md-nav__link">Introduction to Netclient</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#notes-on-windows" class="md-nav__link">Notes on Windows</a>
<a href="external-clients.html" class="md-nav__link">Ingress GW + External Clients</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#modes-and-system-compatibility" class="md-nav__link">Modes and System Compatibility</a>
<a href="egress-gateway.html" class="md-nav__link">Egress Gateway</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#prerequisites" class="md-nav__link">Prerequisites</a>
<a href="relay-server.html" class="md-nav__link">Relay Servers</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#configuration" class="md-nav__link">Configuration</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#installation" class="md-nav__link">Installation</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#managing-netclient" class="md-nav__link">Managing Netclient</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="external-clients.html" class="md-nav__link">External Clients</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="external-clients.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-an-ingress-gateway" class="md-nav__link">Configuring an Ingress Gateway</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#adding-clients-to-a-gateway" class="md-nav__link">Adding Clients to a Gateway</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-dns-for-ext-clients-optional" class="md-nav__link">Configuring DNS for Ext Clients (OPTIONAL)</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="usage.html" class="md-nav__link">Using Netmaker</a>
<ul class="md-nav__list">
</li>
<li class="md-nav__item">
<a href="usage.html#external-tutorials" class="md-nav__link">External Tutorials</a>
<a href="ui-reference.html" class="md-nav__link">UI Reference</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="api.html" class="md-nav__link">API Reference</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="api.html#api-usage" class="md-nav__link">API Usage</a>
</li>
<li class="md-nav__item">
<a href="api.html#authentication" class="md-nav__link">Authentication</a>
<a href="upgrades.html" class="md-nav__link">Upgrades</a>
</li>
<li class="md-nav__item">
<a href="api.html#format-of-calls-for-curl" class="md-nav__link">Format of Calls for Curl</a>
</li>
<li class="md-nav__item">
<a href="api.html#api-documentation" class="md-nav__link">API Documentation</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html" class="md-nav__link">Troubleshooting</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="troubleshoot.html#common-issues" class="md-nav__link">Common Issues</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#server" class="md-nav__link">Server</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#ui" class="md-nav__link">UI</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#netclient" class="md-nav__link">Netclient</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#coredns" class="md-nav__link">CoreDNS</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="support.html" class="md-nav__link">Support</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="support.html#faq" class="md-nav__link">FAQ</a>
</li>
<li class="md-nav__item">
<a href="support.html#contact" class="md-nav__link">Contact</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="conduct.html" class="md-nav__link">Code of Conduct</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="conduct.html#our-pledge" class="md-nav__link">Our Pledge</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-standards" class="md-nav__link">Our Standards</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-responsibilities" class="md-nav__link">Our Responsibilities</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#scope" class="md-nav__link">Scope</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#enforcement" class="md-nav__link">Enforcement</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#attribution" class="md-nav__link">Attribution</a>
</li></ul>
</li>
<li class="md-nav__item">

489
docs/_build/html/relay-server.html vendored Normal file
View file

@ -0,0 +1,489 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="viewport" content="width=device-width,initial-scale=1">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="lang:clipboard.copy" content="Copy to clipboard">
<meta name="lang:clipboard.copied" content="Copied to clipboard">
<meta name="lang:search.language" content="en">
<meta name="lang:search.pipeline.stopwords" content="True">
<meta name="lang:search.pipeline.trimmer" content="True">
<meta name="lang:search.result.none" content="No matching documents">
<meta name="lang:search.result.one" content="1 matching document">
<meta name="lang:search.result.other" content="# matching documents">
<meta name="lang:search.tokenizer" content="[\s\-]+">
<link href="https://fonts.gstatic.com/" rel="preconnect" crossorigin>
<link href="https://fonts.googleapis.com/css?family=Roboto+Mono:400,500,700|Roboto:300,400,400i,700&display=fallback" rel="stylesheet">
<style>
body,
input {
font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif
}
code,
kbd,
pre {
font-family: "Roboto Mono", "Courier New", Courier, monospace
}
</style>
<link rel="stylesheet" href="_static/stylesheets/application.css"/>
<link rel="stylesheet" href="_static/stylesheets/application-palette.css"/>
<link rel="stylesheet" href="_static/stylesheets/application-fixes.css"/>
<link rel="stylesheet" href="_static/fonts/material-icons.css"/>
<meta name="theme-color" content="#3f51b5">
<script src="_static/javascripts/modernizr.js"></script>
<title>Relay Servers &#8212; Netmaker 0.9.4 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/material.css" />
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
<script src="_static/jquery.js"></script>
<script src="_static/underscore.js"></script>
<script src="_static/doctools.js"></script>
<link rel="author" title="About these documents" href="about.html" />
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
<link rel="next" title="Advanced Server Installation" href="server-installation.html" />
<link rel="prev" title="Egress Gateway" href="egress-gateway.html" />
</head>
<body dir=ltr
data-md-color-primary=indigo data-md-color-accent=light-blue>
<svg class="md-svg">
<defs data-children-count="0">
<svg xmlns="http://www.w3.org/2000/svg" width="416" height="448" viewBox="0 0 416 448" id="__github"><path fill="currentColor" d="M160 304q0 10-3.125 20.5t-10.75 19T128 352t-18.125-8.5-10.75-19T96 304t3.125-20.5 10.75-19T128 256t18.125 8.5 10.75 19T160 304zm160 0q0 10-3.125 20.5t-10.75 19T288 352t-18.125-8.5-10.75-19T256 304t3.125-20.5 10.75-19T288 256t18.125 8.5 10.75 19T320 304zm40 0q0-30-17.25-51T296 232q-10.25 0-48.75 5.25Q229.5 240 208 240t-39.25-2.75Q130.75 232 120 232q-29.5 0-46.75 21T56 304q0 22 8 38.375t20.25 25.75 30.5 15 35 7.375 37.25 1.75h42q20.5 0 37.25-1.75t35-7.375 30.5-15 20.25-25.75T360 304zm56-44q0 51.75-15.25 82.75-9.5 19.25-26.375 33.25t-35.25 21.5-42.5 11.875-42.875 5.5T212 416q-19.5 0-35.5-.75t-36.875-3.125-38.125-7.5-34.25-12.875T37 371.5t-21.5-28.75Q0 312 0 260q0-59.25 34-99-6.75-20.5-6.75-42.5 0-29 12.75-54.5 27 0 47.5 9.875t47.25 30.875Q171.5 96 212 96q37 0 70 8 26.25-20.5 46.75-30.25T376 64q12.75 25.5 12.75 54.5 0 21.75-6.75 42 34 40 34 99.5z"/></svg>
</defs>
</svg>
<input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer">
<input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search">
<label class="md-overlay" data-md-component="overlay" for="__drawer"></label>
<a href="#relay-server" tabindex="1" class="md-skip"> Skip to content </a>
<header class="md-header" data-md-component="header">
<nav class="md-header-nav md-grid">
<div class="md-flex navheader">
<div class="md-flex__cell md-flex__cell--shrink">
<a href="index.html" title="Netmaker 0.9.4 documentation"
class="md-header-nav__button md-logo">
<i class="md-icon">&#xe869</i>
</a>
</div>
<div class="md-flex__cell md-flex__cell--shrink">
<label class="md-icon md-icon--menu md-header-nav__button" for="__drawer"></label>
</div>
<div class="md-flex__cell md-flex__cell--stretch">
<div class="md-flex__ellipsis md-header-nav__title" data-md-component="title">
<span class="md-header-nav__topic">Netmaker Docs</span>
<span class="md-header-nav__topic"> Relay Servers </span>
</div>
</div>
<div class="md-flex__cell md-flex__cell--shrink">
<label class="md-icon md-icon--search md-header-nav__button" for="__search"></label>
<div class="md-search" data-md-component="search" role="dialog">
<label class="md-search__overlay" for="__search"></label>
<div class="md-search__inner" role="search">
<form class="md-search__form" action="search.html" method="get" name="search">
<input type="text" class="md-search__input" name="q" placeholder="Search"
autocapitalize="off" autocomplete="off" spellcheck="false"
data-md-component="query" data-md-state="active">
<label class="md-icon md-search__icon" for="__search"></label>
<button type="reset" class="md-icon md-search__icon" data-md-component="reset" tabindex="-1">
&#xE5CD;
</button>
</form>
<div class="md-search__output">
<div class="md-search__scrollwrap" data-md-scrollfix>
<div class="md-search-result" data-md-component="result">
<div class="md-search-result__meta">
Type to start searching
</div>
<ol class="md-search-result__list"></ol>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="md-flex__cell md-flex__cell--shrink">
<div class="md-header-nav__source">
<a href="https://github.com/gravitl/netmaker/" title="Go to repository" class="md-source" data-md-source="github">
<div class="md-source__icon">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 24 24" width="28" height="28">
<use xlink:href="#__github" width="24" height="24"></use>
</svg>
</div>
<div class="md-source__repository">
Netmaker
</div>
</a>
</div>
</div>
<script src="_static/javascripts/version_dropdown.js"></script>
<script>
var json_loc = ""versions.json"",
target_loc = "../",
text = "Versions";
$( document ).ready( add_version_dropdown(json_loc, target_loc, text));
</script>
</div>
</nav>
</header>
<div class="md-container">
<nav class="md-tabs" data-md-component="tabs">
<div class="md-tabs__inner md-grid">
<ul class="md-tabs__list">
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.4 documentation</a></li>
</ul>
</div>
</nav>
<main class="md-main">
<div class="md-main__inner md-grid" data-md-component="container">
<div class="md-sidebar md-sidebar--primary" data-md-component="navigation">
<div class="md-sidebar__scrollwrap">
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--primary" data-md-level="0">
<label class="md-nav__title md-nav__title--site" for="__drawer">
<a href="index.html" title="Netmaker 0.9.4 documentation" class="md-nav__button md-logo">
<i class="md-icon">&#xe869</i>
</a>
<a href="index.html"
title="Netmaker 0.9.4 documentation">Netmaker Docs</a>
</label>
<div class="md-nav__source">
<a href="https://github.com/gravitl/netmaker/" title="Go to repository" class="md-source" data-md-source="github">
<div class="md-source__icon">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 24 24" width="28" height="28">
<use xlink:href="#__github" width="24" height="24"></use>
</svg>
</div>
<div class="md-source__repository">
Netmaker
</div>
</a>
</div>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="about.html" class="md-nav__link">About</a>
</li>
<li class="md-nav__item">
<a href="architecture.html" class="md-nav__link">Architecture</a>
</li>
<li class="md-nav__item">
<a href="install.html" class="md-nav__link">Install</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html" class="md-nav__link">Quick Install</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html" class="md-nav__link">Getting Started</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html" class="md-nav__link">Ingress + External Clients</a>
</li>
<li class="md-nav__item">
<a href="egress-gateway.html" class="md-nav__link">Egress Gateway</a>
</li>
<li class="md-nav__item">
<input class="md-toggle md-nav__toggle" data-md-toggle="toc" type="checkbox" id="__toc">
<label class="md-nav__link md-nav__link--active" for="__toc"> Relay Servers </label>
<a href="#" class="md-nav__link md-nav__link--active">Relay Servers</a>
<nav class="md-nav md-nav--secondary">
<label class="md-nav__title" for="__toc">Contents</label>
<ul class="md-nav__list" data-md-scrollfix="">
<li class="md-nav__item"><a href="#relay-server--page-root" class="md-nav__link">Relay Servers</a><nav class="md-nav">
<ul class="md-nav__list">
<li class="md-nav__item"><a href="#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item"><a href="#configuring-a-relay" class="md-nav__link">Configuring a Relay</a>
</li></ul>
</nav>
</li>
</ul>
</nav>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="#configuring-a-relay" class="md-nav__link">Configuring a Relay</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="https://nm-k8s.readthedocs.io" class="md-nav__link">Kubernetes</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html" class="md-nav__link">Advanced Server Installation</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html" class="md-nav__link">Advanced Client Installation</a>
</li>
<li class="md-nav__item">
<a href="oauth.html" class="md-nav__link">Integrating OAuth</a>
</li>
<li class="md-nav__item">
<a href="usage.html" class="md-nav__link">External Guides</a>
</li>
<li class="md-nav__item">
<a href="ui-reference.html" class="md-nav__link">UI Reference</a>
</li>
<li class="md-nav__item">
<a href="api.html" class="md-nav__link">API Reference</a>
</li>
<li class="md-nav__item">
<a href="upgrades.html" class="md-nav__link">Upgrades</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html" class="md-nav__link">Troubleshooting</a>
</li>
<li class="md-nav__item">
<a href="support.html" class="md-nav__link">Support</a>
</li>
<li class="md-nav__item">
<a href="conduct.html" class="md-nav__link">Code of Conduct</a>
</li>
<li class="md-nav__item">
<a href="license.html" class="md-nav__link">License</a>
</li>
</ul>
</nav>
</div>
</div>
</div>
<div class="md-sidebar md-sidebar--secondary" data-md-component="toc">
<div class="md-sidebar__scrollwrap">
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--secondary">
<label class="md-nav__title" for="__toc">Contents</label>
<ul class="md-nav__list" data-md-scrollfix="">
<li class="md-nav__item"><a href="#relay-server--page-root" class="md-nav__link">Relay Servers</a><nav class="md-nav">
<ul class="md-nav__list">
<li class="md-nav__item"><a href="#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item"><a href="#configuring-a-relay" class="md-nav__link">Configuring a Relay</a>
</li></ul>
</nav>
</li>
</ul>
</nav>
</div>
</div>
</div>
<div class="md-content">
<article class="md-content__inner md-typeset" role="main">
<h1 id="relay-server--page-root">Relay Servers<a class="headerlink" href="#relay-server--page-root" title="Permalink to this headline"></a></h1>
<h2 id="introduction">Introduction<a class="headerlink" href="#introduction" title="Permalink to this headline"></a></h2>
<a class="reference internal image-reference" href="_images/relay1.png"><img alt="Relay" class="align-center" src="_images/relay1.png" style="width: 80%;"/></a>
<p>Sometimes nodes are in hard-to-reach places. Typically this will be due to a CGNAT, Double NAT, or restrictive firewall. In such scenarios, a direct peer-to-peer connection with all other nodes might be impossible.</p>
<p>For this reason, Netmaker has a Relay Server functionality. At any time you may designate a publicly reachable node (such as the Netmaker Server) as a Relay, and tell it which machines it should relay. Then, all traffic routing to and from that machine will go through the relay. This allows you to circumvent the above issues and ensure connectivity when direct measures do not work.</p>
<h2 id="configuring-a-relay">Configuring a Relay<a class="headerlink" href="#configuring-a-relay" title="Permalink to this headline"></a></h2>
<p>To create a relay, you can use any node in your network, but it should have a public IP address (not behind a NAT). Your Netmaker server can be a relay server and makes for a good default choice if you are unsure of which node to select.</p>
<p>Simply click the relay button in the nodes list. Then, specify the nodes which it should relay. You can either enter the IPs directly, select from a list, or click “Select All.”</p>
<a class="reference internal image-reference" href="_images/ui-7.jpg"><img alt="Relay" class="align-center" src="_images/ui-7.jpg" style="width: 80%;"/></a>
<p>If you choose “select all” this essentially turns your network into a hub-and-spoke network. All traffic now routes over the relay node. This can create a bottleneck and slow down your network, but in some scenarios may simplify network operations.</p>
<p>After creation, you can change the list of relayed nodes by clicking “edit node” and editing the list (Field #12 below).</p>
<a class="reference internal image-reference" href="_images/ui-5.jpg"><img alt="Relay" class="align-center" src="_images/ui-5.jpg" style="width: 40%;"/></a>
</article>
</div>
</div>
</main>
</div>
<footer class="md-footer">
<div class="md-footer-nav">
<nav class="md-footer-nav__inner md-grid">
<a href="egress-gateway.html" title="Egress Gateway"
class="md-flex md-footer-nav__link md-footer-nav__link--prev"
rel="prev">
<div class="md-flex__cell md-flex__cell--shrink">
<i class="md-icon md-icon--arrow-back md-footer-nav__button"></i>
</div>
<div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
<span class="md-flex__ellipsis">
<span
class="md-footer-nav__direction"> Previous </span> Egress Gateway </span>
</div>
</a>
<a href="server-installation.html" title="Advanced Server Installation"
class="md-flex md-footer-nav__link md-footer-nav__link--next"
rel="next">
<div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title"><span
class="md-flex__ellipsis"> <span
class="md-footer-nav__direction"> Next </span> Advanced Server Installation </span>
</div>
<div class="md-flex__cell md-flex__cell--shrink"><i
class="md-icon md-icon--arrow-forward md-footer-nav__button"></i>
</div>
</a>
</nav>
</div>
<div class="md-footer-meta md-typeset">
<div class="md-footer-meta__inner md-grid">
<div class="md-footer-copyright">
<div class="md-footer-copyright__highlight">
&#169; Copyright 2021, Alex Feiszli.
</div>
Created using
<a href="http://www.sphinx-doc.org/">Sphinx</a> 4.3.0.
and
<a href="https://github.com/bashtage/sphinx-material/">Material for
Sphinx</a>
</div>
</div>
</div>
</footer>
<script src="_static/javascripts/application.js"></script>
<script>app.initialize({version: "1.0.4", url: {base: ".."}})</script>
</body>
</html>

View file

@ -46,7 +46,7 @@
<title>Search &#8212; Netmaker 0.9.0 documentation</title>
<title>Search &#8212; Netmaker 0.9.4 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/material.css" />
@ -85,7 +85,7 @@
<nav class="md-header-nav md-grid">
<div class="md-flex navheader">
<div class="md-flex__cell md-flex__cell--shrink">
<a href="index.html" title="Netmaker 0.9.0 documentation"
<a href="index.html" title="Netmaker 0.9.4 documentation"
class="md-header-nav__button md-logo">
<i class="md-icon">&#xe869</i>
@ -171,7 +171,7 @@
<nav class="md-tabs" data-md-component="tabs">
<div class="md-tabs__inner md-grid">
<ul class="md-tabs__list">
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.0 documentation</a></li>
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.4 documentation</a></li>
</ul>
</div>
</nav>
@ -183,13 +183,13 @@
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--primary" data-md-level="0">
<label class="md-nav__title md-nav__title--site" for="__drawer">
<a href="index.html" title="Netmaker 0.9.0 documentation" class="md-nav__button md-logo">
<a href="index.html" title="Netmaker 0.9.4 documentation" class="md-nav__button md-logo">
<i class="md-icon">&#xe869</i>
</a>
<a href="index.html"
title="Netmaker 0.9.0 documentation">Netmaker Docs</a>
title="Netmaker 0.9.4 documentation">Netmaker Docs</a>
</label>
<div class="md-nav__source">
<a href="https://github.com/gravitl/netmaker/" title="Go to repository" class="md-source" data-md-source="github">
@ -214,71 +214,15 @@
<a href="about.html" class="md-nav__link">About</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="about.html#what-is-netmaker" class="md-nav__link">What is Netmaker?</a>
</li>
<li class="md-nav__item">
<a href="about.html#how-does-netmaker-work" class="md-nav__link">How Does Netmaker Work?</a>
</li>
<li class="md-nav__item">
<a href="about.html#use-cases-for-netmaker" class="md-nav__link">Use Cases for Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="architecture.html" class="md-nav__link">Architecture</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="architecture.html#core-concepts" class="md-nav__link">Core Concepts</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#components" class="md-nav__link">Components</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#technical-process" class="md-nav__link">Technical Process</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#compatible-systems-for-netclient" class="md-nav__link">Compatible Systems for Netclient</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#limitations" class="md-nav__link">Limitations</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -291,505 +235,113 @@
<a href="quick-start.html" class="md-nav__link">Quick Install</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prerequisites" class="md-nav__link">0. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prepare-dns" class="md-nav__link">1. Prepare DNS</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#open-firewall" class="md-nav__link">3. Open Firewall</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="getting-started.html" class="md-nav__link">Getting Started</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="getting-started.html#setup" class="md-nav__link">Setup</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#create-a-network" class="md-nav__link">Create a Network</a>
<a href="external-clients.html" class="md-nav__link">Ingress + External Clients</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#create-a-key" class="md-nav__link">Create a Key</a>
<a href="egress-gateway.html" class="md-nav__link">Egress Gateway</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#deploy-nodes" class="md-nav__link">Deploy Nodes</a>
<a href="relay-server.html" class="md-nav__link">Relay Servers</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#manage-nodes" class="md-nav__link">Manage Nodes</a>
<a href="https://nm-k8s.readthedocs.io" class="md-nav__link">Kubernetes</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-the-netclient" class="md-nav__link">Uninstalling the netclient</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-netmaker" class="md-nav__link">Uninstalling Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html" class="md-nav__link">Install with Nginx (depreciated)</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start-nginx.html#introduction" class="md-nav__link">0. Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prerequisites" class="md-nav__link">1. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prepare-vm" class="md-nav__link">3. Prepare VM</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="server-installation.html" class="md-nav__link">Advanced Server Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="server-installation.html#system-compatibility" class="md-nav__link">System Compatibility</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#server-configuration-reference" class="md-nav__link">Server Configuration Reference</a>
<a href="client-installation.html" class="md-nav__link">Advanced Client Installation</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#dns-mode-setup" class="md-nav__link">DNS Mode Setup</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#docker-compose-install" class="md-nav__link">Docker Compose Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#linux-install-without-docker" class="md-nav__link">Linux Install without Docker</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#kubernetes-install" class="md-nav__link">Kubernetes Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#nginx-reverse-proxy-setup-with-https" class="md-nav__link">Nginx Reverse Proxy Setup with https</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-kubernetes" class="md-nav__link">Highly Available Installation (Kubernetes)</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-vms-bare-metal" class="md-nav__link">Highly Available Installation (VMs/Bare Metal)</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="oauth.html" class="md-nav__link">Integrating OAuth</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="oauth.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-your-provider" class="md-nav__link">Configuring your provider</a>
<a href="usage.html" class="md-nav__link">External Guides</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-netmaker" class="md-nav__link">Configuring Netmaker</a>
<a href="ui-reference.html" class="md-nav__link">UI Reference</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-user-permissions" class="md-nav__link">Configuring User Permissions</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="client-installation.html" class="md-nav__link">Client Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="client-installation.html#introduction-to-netclient" class="md-nav__link">Introduction to Netclient</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#notes-on-windows" class="md-nav__link">Notes on Windows</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#modes-and-system-compatibility" class="md-nav__link">Modes and System Compatibility</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#prerequisites" class="md-nav__link">Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#configuration" class="md-nav__link">Configuration</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#installation" class="md-nav__link">Installation</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#managing-netclient" class="md-nav__link">Managing Netclient</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="external-clients.html" class="md-nav__link">External Clients</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="external-clients.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-an-ingress-gateway" class="md-nav__link">Configuring an Ingress Gateway</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#adding-clients-to-a-gateway" class="md-nav__link">Adding Clients to a Gateway</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-dns-for-ext-clients-optional" class="md-nav__link">Configuring DNS for Ext Clients (OPTIONAL)</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="usage.html" class="md-nav__link">Using Netmaker</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="usage.html#external-tutorials" class="md-nav__link">External Tutorials</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="api.html" class="md-nav__link">API Reference</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="api.html#api-usage" class="md-nav__link">API Usage</a>
</li>
<li class="md-nav__item">
<a href="api.html#authentication" class="md-nav__link">Authentication</a>
<a href="upgrades.html" class="md-nav__link">Upgrades</a>
</li>
<li class="md-nav__item">
<a href="api.html#format-of-calls-for-curl" class="md-nav__link">Format of Calls for Curl</a>
</li>
<li class="md-nav__item">
<a href="api.html#api-documentation" class="md-nav__link">API Documentation</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html" class="md-nav__link">Troubleshooting</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="troubleshoot.html#common-issues" class="md-nav__link">Common Issues</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#server" class="md-nav__link">Server</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#ui" class="md-nav__link">UI</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#netclient" class="md-nav__link">Netclient</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#coredns" class="md-nav__link">CoreDNS</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="support.html" class="md-nav__link">Support</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="support.html#faq" class="md-nav__link">FAQ</a>
</li>
<li class="md-nav__item">
<a href="support.html#contact" class="md-nav__link">Contact</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="conduct.html" class="md-nav__link">Code of Conduct</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="conduct.html#our-pledge" class="md-nav__link">Our Pledge</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-standards" class="md-nav__link">Our Standards</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-responsibilities" class="md-nav__link">Our Responsibilities</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#scope" class="md-nav__link">Scope</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#enforcement" class="md-nav__link">Enforcement</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#attribution" class="md-nav__link">Attribution</a>
</li></ul>
</li>
<li class="md-nav__item">

File diff suppressed because one or more lines are too long

View file

@ -46,7 +46,7 @@
<title>Advanced Server Installation &#8212; Netmaker 0.9.0 documentation</title>
<title>Advanced Server Installation &#8212; Netmaker 0.9.4 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/material.css" />
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
@ -56,8 +56,8 @@
<link rel="author" title="About these documents" href="about.html" />
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
<link rel="next" title="Integrating OAuth" href="oauth.html" />
<link rel="prev" title="Install with Nginx (depreciated)" href="quick-start-nginx.html" />
<link rel="next" title="Advanced Client Installation" href="client-installation.html" />
<link rel="prev" title="Relay Servers" href="relay-server.html" />
@ -81,7 +81,7 @@
<nav class="md-header-nav md-grid">
<div class="md-flex navheader">
<div class="md-flex__cell md-flex__cell--shrink">
<a href="index.html" title="Netmaker 0.9.0 documentation"
<a href="index.html" title="Netmaker 0.9.4 documentation"
class="md-header-nav__button md-logo">
<i class="md-icon">&#xe869</i>
@ -167,7 +167,7 @@
<nav class="md-tabs" data-md-component="tabs">
<div class="md-tabs__inner md-grid">
<ul class="md-tabs__list">
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.0 documentation</a></li>
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.4 documentation</a></li>
</ul>
</div>
</nav>
@ -179,13 +179,13 @@
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--primary" data-md-level="0">
<label class="md-nav__title md-nav__title--site" for="__drawer">
<a href="index.html" title="Netmaker 0.9.0 documentation" class="md-nav__button md-logo">
<a href="index.html" title="Netmaker 0.9.4 documentation" class="md-nav__button md-logo">
<i class="md-icon">&#xe869</i>
</a>
<a href="index.html"
title="Netmaker 0.9.0 documentation">Netmaker Docs</a>
title="Netmaker 0.9.4 documentation">Netmaker Docs</a>
</label>
<div class="md-nav__source">
<a href="https://github.com/gravitl/netmaker/" title="Go to repository" class="md-source" data-md-source="github">
@ -210,71 +210,15 @@
<a href="about.html" class="md-nav__link">About</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="about.html#what-is-netmaker" class="md-nav__link">What is Netmaker?</a>
</li>
<li class="md-nav__item">
<a href="about.html#how-does-netmaker-work" class="md-nav__link">How Does Netmaker Work?</a>
</li>
<li class="md-nav__item">
<a href="about.html#use-cases-for-netmaker" class="md-nav__link">Use Cases for Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="architecture.html" class="md-nav__link">Architecture</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="architecture.html#core-concepts" class="md-nav__link">Core Concepts</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#components" class="md-nav__link">Components</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#technical-process" class="md-nav__link">Technical Process</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#compatible-systems-for-netclient" class="md-nav__link">Compatible Systems for Netclient</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#limitations" class="md-nav__link">Limitations</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -287,134 +231,43 @@
<a href="quick-start.html" class="md-nav__link">Quick Install</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prerequisites" class="md-nav__link">0. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prepare-dns" class="md-nav__link">1. Prepare DNS</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#open-firewall" class="md-nav__link">3. Open Firewall</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="getting-started.html" class="md-nav__link">Getting Started</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="getting-started.html#setup" class="md-nav__link">Setup</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#deploy-nodes" class="md-nav__link">Deploy Nodes</a>
<a href="external-clients.html" class="md-nav__link">Ingress + External Clients</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#manage-nodes" class="md-nav__link">Manage Nodes</a>
<a href="egress-gateway.html" class="md-nav__link">Egress Gateway</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-the-netclient" class="md-nav__link">Uninstalling the netclient</a>
<a href="relay-server.html" class="md-nav__link">Relay Servers</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-netmaker" class="md-nav__link">Uninstalling Netmaker</a>
<a href="https://nm-k8s.readthedocs.io" class="md-nav__link">Kubernetes</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html" class="md-nav__link">Install with Nginx (depreciated)</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start-nginx.html#introduction" class="md-nav__link">0. Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prerequisites" class="md-nav__link">1. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prepare-vm" class="md-nav__link">3. Prepare VM</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -575,293 +428,69 @@
</li></ul>
</li>
<li class="md-nav__item">
<a href="client-installation.html" class="md-nav__link">Advanced Client Installation</a>
</li>
<li class="md-nav__item">
<a href="oauth.html" class="md-nav__link">Integrating OAuth</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="oauth.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-your-provider" class="md-nav__link">Configuring your provider</a>
<a href="usage.html" class="md-nav__link">External Guides</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-netmaker" class="md-nav__link">Configuring Netmaker</a>
<a href="ui-reference.html" class="md-nav__link">UI Reference</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-user-permissions" class="md-nav__link">Configuring User Permissions</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="client-installation.html" class="md-nav__link">Client Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="client-installation.html#introduction-to-netclient" class="md-nav__link">Introduction to Netclient</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#notes-on-windows" class="md-nav__link">Notes on Windows</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#modes-and-system-compatibility" class="md-nav__link">Modes and System Compatibility</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#prerequisites" class="md-nav__link">Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#configuration" class="md-nav__link">Configuration</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#installation" class="md-nav__link">Installation</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#managing-netclient" class="md-nav__link">Managing Netclient</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="external-clients.html" class="md-nav__link">External Clients</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="external-clients.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-an-ingress-gateway" class="md-nav__link">Configuring an Ingress Gateway</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#adding-clients-to-a-gateway" class="md-nav__link">Adding Clients to a Gateway</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-dns-for-ext-clients-optional" class="md-nav__link">Configuring DNS for Ext Clients (OPTIONAL)</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="usage.html" class="md-nav__link">Using Netmaker</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="usage.html#external-tutorials" class="md-nav__link">External Tutorials</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="api.html" class="md-nav__link">API Reference</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="api.html#api-usage" class="md-nav__link">API Usage</a>
</li>
<li class="md-nav__item">
<a href="api.html#authentication" class="md-nav__link">Authentication</a>
<a href="upgrades.html" class="md-nav__link">Upgrades</a>
</li>
<li class="md-nav__item">
<a href="api.html#format-of-calls-for-curl" class="md-nav__link">Format of Calls for Curl</a>
</li>
<li class="md-nav__item">
<a href="api.html#api-documentation" class="md-nav__link">API Documentation</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html" class="md-nav__link">Troubleshooting</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="troubleshoot.html#common-issues" class="md-nav__link">Common Issues</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#server" class="md-nav__link">Server</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#ui" class="md-nav__link">UI</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#netclient" class="md-nav__link">Netclient</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#coredns" class="md-nav__link">CoreDNS</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="support.html" class="md-nav__link">Support</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="support.html#faq" class="md-nav__link">FAQ</a>
</li>
<li class="md-nav__item">
<a href="support.html#contact" class="md-nav__link">Contact</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="conduct.html" class="md-nav__link">Code of Conduct</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="conduct.html#our-pledge" class="md-nav__link">Our Pledge</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-standards" class="md-nav__link">Our Standards</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-responsibilities" class="md-nav__link">Our Responsibilities</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#scope" class="md-nav__link">Scope</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#enforcement" class="md-nav__link">Enforcement</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#attribution" class="md-nav__link">Attribution</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -1098,7 +727,7 @@
<span class="nt">container_name</span><span class="p">:</span> <span class="l l-Scalar l-Scalar-Plain">netmaker</span>
<span class="nt">depends_on</span><span class="p">:</span>
<span class="p p-Indicator">-</span> <span class="l l-Scalar l-Scalar-Plain">rqlite</span>
<span class="nt">image</span><span class="p">:</span> <span class="l l-Scalar l-Scalar-Plain">gravitl/netmaker:v0.9.0</span>
<span class="nt">image</span><span class="p">:</span> <span class="l l-Scalar l-Scalar-Plain">gravitl/netmaker:v0.9.4</span>
<span class="nt">volumes</span><span class="p">:</span> <span class="c1"># Volume mounts necessary for CLIENT_MODE to control wireguard networking on host (except dnsconfig, which is where dns config files are stored for use by CoreDNS)</span>
<span class="p p-Indicator">-</span> <span class="l l-Scalar l-Scalar-Plain">dnsconfig:/root/config/dnsconfig</span> <span class="c1"># Netmaker writes Corefile to this location, which gets mounted by CoreDNS for DNS configuration.</span>
<span class="p p-Indicator">-</span> <span class="l l-Scalar l-Scalar-Plain">/usr/bin/wg:/usr/bin/wg</span>
@ -1128,7 +757,7 @@
<span class="nt">container_name</span><span class="p">:</span> <span class="l l-Scalar l-Scalar-Plain">netmaker-ui</span>
<span class="nt">depends_on</span><span class="p">:</span>
<span class="p p-Indicator">-</span> <span class="l l-Scalar l-Scalar-Plain">netmaker</span>
<span class="nt">image</span><span class="p">:</span> <span class="l l-Scalar l-Scalar-Plain">gravitl/netmaker-ui:v0.9.0</span>
<span class="nt">image</span><span class="p">:</span> <span class="l l-Scalar l-Scalar-Plain">gravitl/netmaker-ui:v0.9.3</span>
<span class="nt">links</span><span class="p">:</span>
<span class="p p-Indicator">-</span> <span class="s">"netmaker:api"</span>
<span class="nt">ports</span><span class="p">:</span>
@ -1511,7 +1140,7 @@ This install has some notable exceptions:
<div class="md-footer-nav">
<nav class="md-footer-nav__inner md-grid">
<a href="quick-start-nginx.html" title="Install with Nginx (depreciated)"
<a href="relay-server.html" title="Relay Servers"
class="md-flex md-footer-nav__link md-footer-nav__link--prev"
rel="prev">
<div class="md-flex__cell md-flex__cell--shrink">
@ -1520,17 +1149,17 @@ This install has some notable exceptions:
<div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
<span class="md-flex__ellipsis">
<span
class="md-footer-nav__direction"> Previous </span> Install with Nginx (depreciated) </span>
class="md-footer-nav__direction"> Previous </span> Relay Servers </span>
</div>
</a>
<a href="oauth.html" title="Integrating OAuth"
<a href="client-installation.html" title="Advanced Client Installation"
class="md-flex md-footer-nav__link md-footer-nav__link--next"
rel="next">
<div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title"><span
class="md-flex__ellipsis"> <span
class="md-footer-nav__direction"> Next </span> Integrating OAuth </span>
class="md-footer-nav__direction"> Next </span> Advanced Client Installation </span>
</div>
<div class="md-flex__cell md-flex__cell--shrink"><i
class="md-icon md-icon--arrow-forward md-footer-nav__button"></i>

View file

@ -46,7 +46,7 @@
<title>Support &#8212; Netmaker 0.9.0 documentation</title>
<title>Support &#8212; Netmaker 0.9.4 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/material.css" />
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
@ -81,7 +81,7 @@
<nav class="md-header-nav md-grid">
<div class="md-flex navheader">
<div class="md-flex__cell md-flex__cell--shrink">
<a href="index.html" title="Netmaker 0.9.0 documentation"
<a href="index.html" title="Netmaker 0.9.4 documentation"
class="md-header-nav__button md-logo">
<i class="md-icon">&#xe869</i>
@ -167,7 +167,7 @@
<nav class="md-tabs" data-md-component="tabs">
<div class="md-tabs__inner md-grid">
<ul class="md-tabs__list">
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.0 documentation</a></li>
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.4 documentation</a></li>
</ul>
</div>
</nav>
@ -179,13 +179,13 @@
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--primary" data-md-level="0">
<label class="md-nav__title md-nav__title--site" for="__drawer">
<a href="index.html" title="Netmaker 0.9.0 documentation" class="md-nav__button md-logo">
<a href="index.html" title="Netmaker 0.9.4 documentation" class="md-nav__button md-logo">
<i class="md-icon">&#xe869</i>
</a>
<a href="index.html"
title="Netmaker 0.9.0 documentation">Netmaker Docs</a>
title="Netmaker 0.9.4 documentation">Netmaker Docs</a>
</label>
<div class="md-nav__source">
<a href="https://github.com/gravitl/netmaker/" title="Go to repository" class="md-source" data-md-source="github">
@ -210,71 +210,15 @@
<a href="about.html" class="md-nav__link">About</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="about.html#what-is-netmaker" class="md-nav__link">What is Netmaker?</a>
</li>
<li class="md-nav__item">
<a href="about.html#how-does-netmaker-work" class="md-nav__link">How Does Netmaker Work?</a>
</li>
<li class="md-nav__item">
<a href="about.html#use-cases-for-netmaker" class="md-nav__link">Use Cases for Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="architecture.html" class="md-nav__link">Architecture</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="architecture.html#core-concepts" class="md-nav__link">Core Concepts</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#components" class="md-nav__link">Components</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#technical-process" class="md-nav__link">Technical Process</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#compatible-systems-for-netclient" class="md-nav__link">Compatible Systems for Netclient</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#limitations" class="md-nav__link">Limitations</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -287,421 +231,99 @@
<a href="quick-start.html" class="md-nav__link">Quick Install</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prerequisites" class="md-nav__link">0. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prepare-dns" class="md-nav__link">1. Prepare DNS</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#open-firewall" class="md-nav__link">3. Open Firewall</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="getting-started.html" class="md-nav__link">Getting Started</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="getting-started.html#setup" class="md-nav__link">Setup</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#deploy-nodes" class="md-nav__link">Deploy Nodes</a>
<a href="external-clients.html" class="md-nav__link">Ingress + External Clients</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#manage-nodes" class="md-nav__link">Manage Nodes</a>
<a href="egress-gateway.html" class="md-nav__link">Egress Gateway</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-the-netclient" class="md-nav__link">Uninstalling the netclient</a>
<a href="relay-server.html" class="md-nav__link">Relay Servers</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-netmaker" class="md-nav__link">Uninstalling Netmaker</a>
<a href="https://nm-k8s.readthedocs.io" class="md-nav__link">Kubernetes</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html" class="md-nav__link">Install with Nginx (depreciated)</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start-nginx.html#introduction" class="md-nav__link">0. Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prerequisites" class="md-nav__link">1. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prepare-vm" class="md-nav__link">3. Prepare VM</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="server-installation.html" class="md-nav__link">Advanced Server Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="server-installation.html#system-compatibility" class="md-nav__link">System Compatibility</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#server-configuration-reference" class="md-nav__link">Server Configuration Reference</a>
<a href="client-installation.html" class="md-nav__link">Advanced Client Installation</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#dns-mode-setup" class="md-nav__link">DNS Mode Setup</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#docker-compose-install" class="md-nav__link">Docker Compose Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#linux-install-without-docker" class="md-nav__link">Linux Install without Docker</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#kubernetes-install" class="md-nav__link">Kubernetes Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#nginx-reverse-proxy-setup-with-https" class="md-nav__link">Nginx Reverse Proxy Setup with https</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-kubernetes" class="md-nav__link">Highly Available Installation (Kubernetes)</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-vms-bare-metal" class="md-nav__link">Highly Available Installation (VMs/Bare Metal)</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="oauth.html" class="md-nav__link">Integrating OAuth</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="oauth.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-your-provider" class="md-nav__link">Configuring your provider</a>
<a href="usage.html" class="md-nav__link">External Guides</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-netmaker" class="md-nav__link">Configuring Netmaker</a>
<a href="ui-reference.html" class="md-nav__link">UI Reference</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-user-permissions" class="md-nav__link">Configuring User Permissions</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="client-installation.html" class="md-nav__link">Client Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="client-installation.html#introduction-to-netclient" class="md-nav__link">Introduction to Netclient</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#notes-on-windows" class="md-nav__link">Notes on Windows</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#modes-and-system-compatibility" class="md-nav__link">Modes and System Compatibility</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#prerequisites" class="md-nav__link">Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#configuration" class="md-nav__link">Configuration</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#installation" class="md-nav__link">Installation</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#managing-netclient" class="md-nav__link">Managing Netclient</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="external-clients.html" class="md-nav__link">External Clients</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="external-clients.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-an-ingress-gateway" class="md-nav__link">Configuring an Ingress Gateway</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#adding-clients-to-a-gateway" class="md-nav__link">Adding Clients to a Gateway</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-dns-for-ext-clients-optional" class="md-nav__link">Configuring DNS for Ext Clients (OPTIONAL)</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="usage.html" class="md-nav__link">Using Netmaker</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="usage.html#external-tutorials" class="md-nav__link">External Tutorials</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="api.html" class="md-nav__link">API Reference</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="api.html#api-usage" class="md-nav__link">API Usage</a>
</li>
<li class="md-nav__item">
<a href="api.html#authentication" class="md-nav__link">Authentication</a>
<a href="upgrades.html" class="md-nav__link">Upgrades</a>
</li>
<li class="md-nav__item">
<a href="api.html#format-of-calls-for-curl" class="md-nav__link">Format of Calls for Curl</a>
</li>
<li class="md-nav__item">
<a href="api.html#api-documentation" class="md-nav__link">API Documentation</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html" class="md-nav__link">Troubleshooting</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="troubleshoot.html#common-issues" class="md-nav__link">Common Issues</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#server" class="md-nav__link">Server</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#ui" class="md-nav__link">UI</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#netclient" class="md-nav__link">Netclient</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#coredns" class="md-nav__link">CoreDNS</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -719,13 +341,11 @@
<ul class="md-nav__list">
<li class="md-nav__item"><a href="#faq" class="md-nav__link">FAQ</a><nav class="md-nav">
<ul class="md-nav__list">
<li class="md-nav__item"><a href="#does-will-netmaker-support-x-operating-system" class="md-nav__link">Does/Will Netmaker Support X Operating System?</a>
</li>
<li class="md-nav__item"><a href="#how-do-i-install-the-netclient-on-x" class="md-nav__link">How do I install the Netclient on X?</a>
</li>
<li class="md-nav__item"><a href="#is-netmaker-a-vpn-like-nordnpn" class="md-nav__link">Is Netmaker a VPN like NordNPN?</a>
</li>
<li class="md-nav__item"><a href="#do-you-offer-any-enterprise-support" class="md-nav__link">Do you offer any enterprise support?</a>
<li class="md-nav__item"><a href="#do-you-have-an-exit-nodes-feature" class="md-nav__link">Do you have an Exit Nodes feature?</a>
</li>
<li class="md-nav__item"><a href="#do-you-offer-any-business-or-enterprise-support" class="md-nav__link">Do you offer any business or enterprise support?</a>
</li>
<li class="md-nav__item"><a href="#why-the-sspl-license" class="md-nav__link">Why the SSPL License?</a>
</li></ul>
@ -758,50 +378,8 @@
<a href="conduct.html" class="md-nav__link">Code of Conduct</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="conduct.html#our-pledge" class="md-nav__link">Our Pledge</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-standards" class="md-nav__link">Our Standards</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-responsibilities" class="md-nav__link">Our Responsibilities</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#scope" class="md-nav__link">Scope</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#enforcement" class="md-nav__link">Enforcement</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#attribution" class="md-nav__link">Attribution</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -828,13 +406,11 @@
<ul class="md-nav__list">
<li class="md-nav__item"><a href="#faq" class="md-nav__link">FAQ</a><nav class="md-nav">
<ul class="md-nav__list">
<li class="md-nav__item"><a href="#does-will-netmaker-support-x-operating-system" class="md-nav__link">Does/Will Netmaker Support X Operating System?</a>
</li>
<li class="md-nav__item"><a href="#how-do-i-install-the-netclient-on-x" class="md-nav__link">How do I install the Netclient on X?</a>
</li>
<li class="md-nav__item"><a href="#is-netmaker-a-vpn-like-nordnpn" class="md-nav__link">Is Netmaker a VPN like NordNPN?</a>
</li>
<li class="md-nav__item"><a href="#do-you-offer-any-enterprise-support" class="md-nav__link">Do you offer any enterprise support?</a>
<li class="md-nav__item"><a href="#do-you-have-an-exit-nodes-feature" class="md-nav__link">Do you have an Exit Nodes feature?</a>
</li>
<li class="md-nav__item"><a href="#do-you-offer-any-business-or-enterprise-support" class="md-nav__link">Do you offer any business or enterprise support?</a>
</li>
<li class="md-nav__item"><a href="#why-the-sspl-license" class="md-nav__link">Why the SSPL License?</a>
</li></ul>
@ -858,18 +434,8 @@
<h2 id="faq">FAQ<a class="headerlink" href="#faq" title="Permalink to this headline"></a></h2>
<h3 id="does-will-netmaker-support-x-operating-system">Does/Will Netmaker Support X Operating System?<a class="headerlink" href="#does-will-netmaker-support-x-operating-system" title="Permalink to this headline"></a></h3>
<p>Netmaker is initially available on a limited number of operating systems for good reason: Every operating system is designed differently. With a small team, we can either focus on making Netmaker do a lot on a few number of operating systems, or a little on a bunch of operating systems. We chose the first option. You can view the System Compatibility docs for more info, but in general, you should only be using Netmaker on systemd linux right now.</p>
<p>However, via “external clients”, any device that supports WireGuard can be added to the network.</p>
<p>In future iterations will expand the operating system support for Netclient, and devices that must use the “external client” feature can switch to Netclient.</p>
<h3 id="how-do-i-install-the-netclient-on-x">How do I install the Netclient on X?<a class="headerlink" href="#how-do-i-install-the-netclient-on-x" title="Permalink to this headline"></a></h3>
<p>As per the above, there are many unsupported operating systems. You are still welcome to try, it is just an executable binary file after all. If the system is unix-based and has kernel WireGuard installed, netclient may very well mesh the device into the network. However, the service likely will encounter problems retrieving updates.</p>
<h3 id="is-netmaker-a-vpn-like-nordnpn">Is Netmaker a VPN like NordNPN?<a class="headerlink" href="#is-netmaker-a-vpn-like-nordnpn" title="Permalink to this headline"></a></h3>
<p>No. Netmaker makes Virtual Networks, which are technically VPNs, but different. Its more like a corporate VPN, or a VPC (if youre familiar with AWS).</p>
<p>No. Netmaker makes Virtual Networks, which are technically VPNs, but different. Its more like a corporate VPN, or a VPC (if youre familiar with AWS). Netmaker is often compared to OpenVPN, Tailscale, or Nebula.</p>
<p>If youre looking to achieve self-hosted web browsing, with functionality similar to NordVPN, ExpressVPN, Surfshark, Tunnelbear, or Private Internet Access, this is probably not the project for you. Technically, you can accomplish this with Netmaker, but it would be a little like using a all-terrain vehicle for stock car racing.</p>
<p>There are many good projects out there that support general internet privacy using WireGuard. Here are just a few of them:</p>
<p><a class="reference external" href="https://github.com/trailofbits/algo">https://github.com/trailofbits/algo</a>
@ -878,15 +444,18 @@
<a class="reference external" href="https://github.com/mullvad/mullvadvpn-app">https://github.com/mullvad/mullvadvpn-app</a></p>
<h3 id="do-you-offer-any-enterprise-support">Do you offer any enterprise support?<a class="headerlink" href="#do-you-offer-any-enterprise-support" title="Permalink to this headline"></a></h3>
<p>If you are interested in enterprise support for your project, please contact <a class="reference external" href="mailto:info%40gravitl.com">info<span>@</span>gravitl<span>.</span>com</a>.</p>
<h3 id="do-you-have-an-exit-nodes-feature">Do you have an Exit Nodes feature?<a class="headerlink" href="#do-you-have-an-exit-nodes-feature" title="Permalink to this headline"></a></h3>
<p>Please see the <a class="reference internal" href="egress-gateway.html"><span class="doc">Egress Gateway</span></a> documentation.</p>
<h3 id="do-you-offer-any-business-or-enterprise-support">Do you offer any business or enterprise support?<a class="headerlink" href="#do-you-offer-any-business-or-enterprise-support" title="Permalink to this headline"></a></h3>
<p>Yes, please contact <a class="reference external" href="mailto:info%40gravitl.com">info<span>@</span>gravitl<span>.</span>com</a> or visit <a class="reference external" href="https://gravitl.com/plans">https://gravitl.com/plans</a>.</p>
<h3 id="why-the-sspl-license">Why the SSPL License?<a class="headerlink" href="#why-the-sspl-license" title="Permalink to this headline"></a></h3>
<p>We thought long and hard about the license. Ultimately, we think this is the best way to support and ensure the health of the project long term. The community deserves something that is well-maintained, and in order to do that, eventually we need some financial support. We wont do that by limiting the project, but we will offer some additional support, and hosted options for things people would end up paying for anyway (relay servers, load balancing support, backups).</p>
<p>While SSPL is not an OSI-approved open source license, it lets people generally run the project however they want, both for private use and business use, without running into the issue of someone else monetizing the project and making it financially untenable. We are working on making the guidelines clear, and will make sure that the license does not impact the communities ability to use and modify the project.</p>
<p>If you have concerns about the license leading to project restrictions down the road, just know that there are other paid, closed-source/closed-core options out there, so beyond not wanting to follow that path, we also dont think its a good idea economically either. We firmly believe that having the project open is not only right, but the best option.</p>
<p>All that said, we will re-evaluate the license on a regular basis and determine if an OSI-approved license makes more sense. Its just easier to move from SSPL to another license than vice-versa.</p>
<p>As of now, we think the SSPL is the best way to ensure the long-term viability of the project, but we are regularly evaluating this to see if an OSI-approved license makes more sense.</p>
<p>We believe the SSPL lets most people run the project the way they want, for both for private use and business use, while giving us a path to maintain viability. We are working to make sure the guidelines clear, and do not want the license to impact the communitys ability to use and modify the project.</p>
<p>If you believe the SSPL will negatively impact your ability to use the project, please do not hesitate to reach out.</p>

View file

@ -46,7 +46,7 @@
<title>Troubleshooting &#8212; Netmaker 0.9.0 documentation</title>
<title>Troubleshooting &#8212; Netmaker 0.9.4 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/material.css" />
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
@ -57,7 +57,7 @@
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
<link rel="next" title="Support" href="support.html" />
<link rel="prev" title="API Reference" href="api.html" />
<link rel="prev" title="Upgrades" href="upgrades.html" />
@ -81,7 +81,7 @@
<nav class="md-header-nav md-grid">
<div class="md-flex navheader">
<div class="md-flex__cell md-flex__cell--shrink">
<a href="index.html" title="Netmaker 0.9.0 documentation"
<a href="index.html" title="Netmaker 0.9.4 documentation"
class="md-header-nav__button md-logo">
<i class="md-icon">&#xe869</i>
@ -167,7 +167,7 @@
<nav class="md-tabs" data-md-component="tabs">
<div class="md-tabs__inner md-grid">
<ul class="md-tabs__list">
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.0 documentation</a></li>
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.4 documentation</a></li>
</ul>
</div>
</nav>
@ -179,13 +179,13 @@
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--primary" data-md-level="0">
<label class="md-nav__title md-nav__title--site" for="__drawer">
<a href="index.html" title="Netmaker 0.9.0 documentation" class="md-nav__button md-logo">
<a href="index.html" title="Netmaker 0.9.4 documentation" class="md-nav__button md-logo">
<i class="md-icon">&#xe869</i>
</a>
<a href="index.html"
title="Netmaker 0.9.0 documentation">Netmaker Docs</a>
title="Netmaker 0.9.4 documentation">Netmaker Docs</a>
</label>
<div class="md-nav__source">
<a href="https://github.com/gravitl/netmaker/" title="Go to repository" class="md-source" data-md-source="github">
@ -209,72 +209,16 @@
<li class="md-nav__item">
<a href="about.html" class="md-nav__link">About</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="about.html" class="md-nav__link">1. About</a>
<a href="about.html#what-is-netmaker" class="md-nav__link">What is Netmaker?</a>
</li>
<li class="md-nav__item">
<a href="about.html#how-does-netmaker-work" class="md-nav__link">How Does Netmaker Work?</a>
</li>
<li class="md-nav__item">
<a href="about.html#use-cases-for-netmaker" class="md-nav__link">Use Cases for Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="architecture.html" class="md-nav__link">Architecture</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="architecture.html#core-concepts" class="md-nav__link">Core Concepts</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#components" class="md-nav__link">Components</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#technical-process" class="md-nav__link">Technical Process</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#compatible-systems-for-netclient" class="md-nav__link">Compatible Systems for Netclient</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#limitations" class="md-nav__link">Limitations</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -287,379 +231,85 @@
<a href="quick-start.html" class="md-nav__link">Quick Install</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prerequisites" class="md-nav__link">0. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prepare-dns" class="md-nav__link">1. Prepare DNS</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#open-firewall" class="md-nav__link">3. Open Firewall</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="getting-started.html" class="md-nav__link">Getting Started</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="getting-started.html#setup" class="md-nav__link">Setup</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#deploy-nodes" class="md-nav__link">Deploy Nodes</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#manage-nodes" class="md-nav__link">Manage Nodes</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-the-netclient" class="md-nav__link">Uninstalling the netclient</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-netmaker" class="md-nav__link">Uninstalling Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html" class="md-nav__link">Install with Nginx (depreciated)</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start-nginx.html#introduction" class="md-nav__link">0. Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prerequisites" class="md-nav__link">1. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prepare-vm" class="md-nav__link">3. Prepare VM</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="server-installation.html" class="md-nav__link">Advanced Server Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="server-installation.html#system-compatibility" class="md-nav__link">System Compatibility</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#server-configuration-reference" class="md-nav__link">Server Configuration Reference</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#dns-mode-setup" class="md-nav__link">DNS Mode Setup</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#docker-compose-install" class="md-nav__link">Docker Compose Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#linux-install-without-docker" class="md-nav__link">Linux Install without Docker</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#kubernetes-install" class="md-nav__link">Kubernetes Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#nginx-reverse-proxy-setup-with-https" class="md-nav__link">Nginx Reverse Proxy Setup with https</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-kubernetes" class="md-nav__link">Highly Available Installation (Kubernetes)</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-vms-bare-metal" class="md-nav__link">Highly Available Installation (VMs/Bare Metal)</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="oauth.html" class="md-nav__link">Integrating OAuth</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="oauth.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-your-provider" class="md-nav__link">Configuring your provider</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-netmaker" class="md-nav__link">Configuring Netmaker</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-user-permissions" class="md-nav__link">Configuring User Permissions</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="client-installation.html" class="md-nav__link">Client Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="client-installation.html#introduction-to-netclient" class="md-nav__link">Introduction to Netclient</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#notes-on-windows" class="md-nav__link">Notes on Windows</a>
<a href="external-clients.html" class="md-nav__link">Ingress GW + External Clients</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#modes-and-system-compatibility" class="md-nav__link">Modes and System Compatibility</a>
<a href="egress-gateway.html" class="md-nav__link">Egress Gateway</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#prerequisites" class="md-nav__link">Prerequisites</a>
<a href="relay-server.html" class="md-nav__link">Relay Servers</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#configuration" class="md-nav__link">Configuration</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#installation" class="md-nav__link">Installation</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#managing-netclient" class="md-nav__link">Managing Netclient</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="external-clients.html" class="md-nav__link">External Clients</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="external-clients.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-an-ingress-gateway" class="md-nav__link">Configuring an Ingress Gateway</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#adding-clients-to-a-gateway" class="md-nav__link">Adding Clients to a Gateway</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-dns-for-ext-clients-optional" class="md-nav__link">Configuring DNS for Ext Clients (OPTIONAL)</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="usage.html" class="md-nav__link">Using Netmaker</a>
<ul class="md-nav__list">
</li>
<li class="md-nav__item">
<a href="usage.html#external-tutorials" class="md-nav__link">External Tutorials</a>
<a href="ui-reference.html" class="md-nav__link">UI Reference</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="api.html" class="md-nav__link">API Reference</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="api.html#api-usage" class="md-nav__link">API Usage</a>
</li>
<li class="md-nav__item">
<a href="api.html#authentication" class="md-nav__link">Authentication</a>
<a href="upgrades.html" class="md-nav__link">Upgrades</a>
</li>
<li class="md-nav__item">
<a href="api.html#format-of-calls-for-curl" class="md-nav__link">Format of Calls for Curl</a>
</li>
<li class="md-nav__item">
<a href="api.html#api-documentation" class="md-nav__link">API Documentation</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -731,71 +381,15 @@
<a href="support.html" class="md-nav__link">Support</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="support.html#faq" class="md-nav__link">FAQ</a>
</li>
<li class="md-nav__item">
<a href="support.html#contact" class="md-nav__link">Contact</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="conduct.html" class="md-nav__link">Code of Conduct</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="conduct.html#our-pledge" class="md-nav__link">Our Pledge</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-standards" class="md-nav__link">Our Standards</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-responsibilities" class="md-nav__link">Our Responsibilities</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#scope" class="md-nav__link">Scope</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#enforcement" class="md-nav__link">Enforcement</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#attribution" class="md-nav__link">Attribution</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -954,7 +548,7 @@ You can also see the current WireGuard configuration with <code class="docutils
<div class="md-footer-nav">
<nav class="md-footer-nav__inner md-grid">
<a href="api.html" title="API Reference"
<a href="upgrades.html" title="Upgrades"
class="md-flex md-footer-nav__link md-footer-nav__link--prev"
rel="prev">
<div class="md-flex__cell md-flex__cell--shrink">
@ -963,7 +557,7 @@ You can also see the current WireGuard configuration with <code class="docutils
<div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
<span class="md-flex__ellipsis">
<span
class="md-footer-nav__direction"> Previous </span> API Reference </span>
class="md-footer-nav__direction"> Previous </span> Upgrades </span>
</div>
</a>

698
docs/_build/html/ui-reference.html vendored Normal file
View file

@ -0,0 +1,698 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="viewport" content="width=device-width,initial-scale=1">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="lang:clipboard.copy" content="Copy to clipboard">
<meta name="lang:clipboard.copied" content="Copied to clipboard">
<meta name="lang:search.language" content="en">
<meta name="lang:search.pipeline.stopwords" content="True">
<meta name="lang:search.pipeline.trimmer" content="True">
<meta name="lang:search.result.none" content="No matching documents">
<meta name="lang:search.result.one" content="1 matching document">
<meta name="lang:search.result.other" content="# matching documents">
<meta name="lang:search.tokenizer" content="[\s\-]+">
<link href="https://fonts.gstatic.com/" rel="preconnect" crossorigin>
<link href="https://fonts.googleapis.com/css?family=Roboto+Mono:400,500,700|Roboto:300,400,400i,700&display=fallback" rel="stylesheet">
<style>
body,
input {
font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif
}
code,
kbd,
pre {
font-family: "Roboto Mono", "Courier New", Courier, monospace
}
</style>
<link rel="stylesheet" href="_static/stylesheets/application.css"/>
<link rel="stylesheet" href="_static/stylesheets/application-palette.css"/>
<link rel="stylesheet" href="_static/stylesheets/application-fixes.css"/>
<link rel="stylesheet" href="_static/fonts/material-icons.css"/>
<meta name="theme-color" content="#3f51b5">
<script src="_static/javascripts/modernizr.js"></script>
<title>UI Reference &#8212; Netmaker 0.9.4 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/material.css" />
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
<script src="_static/jquery.js"></script>
<script src="_static/underscore.js"></script>
<script src="_static/doctools.js"></script>
<link rel="author" title="About these documents" href="about.html" />
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
<link rel="next" title="API Reference" href="api.html" />
<link rel="prev" title="External Guides" href="usage.html" />
</head>
<body dir=ltr
data-md-color-primary=indigo data-md-color-accent=light-blue>
<svg class="md-svg">
<defs data-children-count="0">
<svg xmlns="http://www.w3.org/2000/svg" width="416" height="448" viewBox="0 0 416 448" id="__github"><path fill="currentColor" d="M160 304q0 10-3.125 20.5t-10.75 19T128 352t-18.125-8.5-10.75-19T96 304t3.125-20.5 10.75-19T128 256t18.125 8.5 10.75 19T160 304zm160 0q0 10-3.125 20.5t-10.75 19T288 352t-18.125-8.5-10.75-19T256 304t3.125-20.5 10.75-19T288 256t18.125 8.5 10.75 19T320 304zm40 0q0-30-17.25-51T296 232q-10.25 0-48.75 5.25Q229.5 240 208 240t-39.25-2.75Q130.75 232 120 232q-29.5 0-46.75 21T56 304q0 22 8 38.375t20.25 25.75 30.5 15 35 7.375 37.25 1.75h42q20.5 0 37.25-1.75t35-7.375 30.5-15 20.25-25.75T360 304zm56-44q0 51.75-15.25 82.75-9.5 19.25-26.375 33.25t-35.25 21.5-42.5 11.875-42.875 5.5T212 416q-19.5 0-35.5-.75t-36.875-3.125-38.125-7.5-34.25-12.875T37 371.5t-21.5-28.75Q0 312 0 260q0-59.25 34-99-6.75-20.5-6.75-42.5 0-29 12.75-54.5 27 0 47.5 9.875t47.25 30.875Q171.5 96 212 96q37 0 70 8 26.25-20.5 46.75-30.25T376 64q12.75 25.5 12.75 54.5 0 21.75-6.75 42 34 40 34 99.5z"/></svg>
</defs>
</svg>
<input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer">
<input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search">
<label class="md-overlay" data-md-component="overlay" for="__drawer"></label>
<a href="#ui-reference" tabindex="1" class="md-skip"> Skip to content </a>
<header class="md-header" data-md-component="header">
<nav class="md-header-nav md-grid">
<div class="md-flex navheader">
<div class="md-flex__cell md-flex__cell--shrink">
<a href="index.html" title="Netmaker 0.9.4 documentation"
class="md-header-nav__button md-logo">
<i class="md-icon">&#xe869</i>
</a>
</div>
<div class="md-flex__cell md-flex__cell--shrink">
<label class="md-icon md-icon--menu md-header-nav__button" for="__drawer"></label>
</div>
<div class="md-flex__cell md-flex__cell--stretch">
<div class="md-flex__ellipsis md-header-nav__title" data-md-component="title">
<span class="md-header-nav__topic">Netmaker Docs</span>
<span class="md-header-nav__topic"> UI Reference </span>
</div>
</div>
<div class="md-flex__cell md-flex__cell--shrink">
<label class="md-icon md-icon--search md-header-nav__button" for="__search"></label>
<div class="md-search" data-md-component="search" role="dialog">
<label class="md-search__overlay" for="__search"></label>
<div class="md-search__inner" role="search">
<form class="md-search__form" action="search.html" method="get" name="search">
<input type="text" class="md-search__input" name="q" placeholder="Search"
autocapitalize="off" autocomplete="off" spellcheck="false"
data-md-component="query" data-md-state="active">
<label class="md-icon md-search__icon" for="__search"></label>
<button type="reset" class="md-icon md-search__icon" data-md-component="reset" tabindex="-1">
&#xE5CD;
</button>
</form>
<div class="md-search__output">
<div class="md-search__scrollwrap" data-md-scrollfix>
<div class="md-search-result" data-md-component="result">
<div class="md-search-result__meta">
Type to start searching
</div>
<ol class="md-search-result__list"></ol>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="md-flex__cell md-flex__cell--shrink">
<div class="md-header-nav__source">
<a href="https://github.com/gravitl/netmaker/" title="Go to repository" class="md-source" data-md-source="github">
<div class="md-source__icon">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 24 24" width="28" height="28">
<use xlink:href="#__github" width="24" height="24"></use>
</svg>
</div>
<div class="md-source__repository">
Netmaker
</div>
</a>
</div>
</div>
<script src="_static/javascripts/version_dropdown.js"></script>
<script>
var json_loc = ""versions.json"",
target_loc = "../",
text = "Versions";
$( document ).ready( add_version_dropdown(json_loc, target_loc, text));
</script>
</div>
</nav>
</header>
<div class="md-container">
<nav class="md-tabs" data-md-component="tabs">
<div class="md-tabs__inner md-grid">
<ul class="md-tabs__list">
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.4 documentation</a></li>
</ul>
</div>
</nav>
<main class="md-main">
<div class="md-main__inner md-grid" data-md-component="container">
<div class="md-sidebar md-sidebar--primary" data-md-component="navigation">
<div class="md-sidebar__scrollwrap">
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--primary" data-md-level="0">
<label class="md-nav__title md-nav__title--site" for="__drawer">
<a href="index.html" title="Netmaker 0.9.4 documentation" class="md-nav__button md-logo">
<i class="md-icon">&#xe869</i>
</a>
<a href="index.html"
title="Netmaker 0.9.4 documentation">Netmaker Docs</a>
</label>
<div class="md-nav__source">
<a href="https://github.com/gravitl/netmaker/" title="Go to repository" class="md-source" data-md-source="github">
<div class="md-source__icon">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 24 24" width="28" height="28">
<use xlink:href="#__github" width="24" height="24"></use>
</svg>
</div>
<div class="md-source__repository">
Netmaker
</div>
</a>
</div>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="about.html" class="md-nav__link">About</a>
</li>
<li class="md-nav__item">
<a href="architecture.html" class="md-nav__link">Architecture</a>
</li>
<li class="md-nav__item">
<a href="install.html" class="md-nav__link">Install</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html" class="md-nav__link">Quick Install</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html" class="md-nav__link">Getting Started</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html" class="md-nav__link">Ingress + External Clients</a>
</li>
<li class="md-nav__item">
<a href="egress-gateway.html" class="md-nav__link">Egress Gateway</a>
</li>
<li class="md-nav__item">
<a href="relay-server.html" class="md-nav__link">Relay Servers</a>
</li>
<li class="md-nav__item">
<a href="https://nm-k8s.readthedocs.io" class="md-nav__link">Kubernetes</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html" class="md-nav__link">Advanced Server Installation</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html" class="md-nav__link">Advanced Client Installation</a>
</li>
<li class="md-nav__item">
<a href="oauth.html" class="md-nav__link">Integrating OAuth</a>
</li>
<li class="md-nav__item">
<a href="usage.html" class="md-nav__link">External Guides</a>
</li>
<li class="md-nav__item">
<input class="md-toggle md-nav__toggle" data-md-toggle="toc" type="checkbox" id="__toc">
<label class="md-nav__link md-nav__link--active" for="__toc"> UI Reference </label>
<a href="#" class="md-nav__link md-nav__link--active">UI Reference</a>
<nav class="md-nav md-nav--secondary">
<label class="md-nav__title" for="__toc">Contents</label>
<ul class="md-nav__list" data-md-scrollfix="">
<li class="md-nav__item"><a href="#ui-reference--page-root" class="md-nav__link">UI Reference</a><nav class="md-nav">
<ul class="md-nav__list">
<li class="md-nav__item"><a href="#dashboard" class="md-nav__link">Dashboard</a>
</li>
<li class="md-nav__item"><a href="#networks" class="md-nav__link">Networks</a><nav class="md-nav">
<ul class="md-nav__list">
<li class="md-nav__item"><a href="#create" class="md-nav__link">Create</a>
</li>
<li class="md-nav__item"><a href="#edit" class="md-nav__link">Edit</a>
</li></ul>
</nav>
</li>
<li class="md-nav__item"><a href="#nodes" class="md-nav__link">Nodes</a><nav class="md-nav">
<ul class="md-nav__list">
<li class="md-nav__item"><a href="#node-list" class="md-nav__link">Node List</a>
</li>
<li class="md-nav__item"><a href="#create-egress" class="md-nav__link">Create Egress</a>
</li>
<li class="md-nav__item"><a href="#create-relay" class="md-nav__link">Create Relay</a>
</li>
<li class="md-nav__item"><a href="#edit-node-node-details" class="md-nav__link">Edit Node / Node Details</a>
</li></ul>
</nav>
</li>
<li class="md-nav__item"><a href="#ext-clients" class="md-nav__link">Ext Clients</a>
</li>
<li class="md-nav__item"><a href="#dns" class="md-nav__link">DNS</a>
</li>
<li class="md-nav__item"><a href="#create-edit-users" class="md-nav__link">Create / Edit Users</a>
</li></ul>
</nav>
</li>
</ul>
</nav>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#dashboard" class="md-nav__link">Dashboard</a>
</li>
<li class="md-nav__item">
<a href="#networks" class="md-nav__link">Networks</a>
</li>
<li class="md-nav__item">
<a href="#nodes" class="md-nav__link">Nodes</a>
</li>
<li class="md-nav__item">
<a href="#ext-clients" class="md-nav__link">Ext Clients</a>
</li>
<li class="md-nav__item">
<a href="#dns" class="md-nav__link">DNS</a>
</li>
<li class="md-nav__item">
<a href="#create-edit-users" class="md-nav__link">Create / Edit Users</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="api.html" class="md-nav__link">API Reference</a>
</li>
<li class="md-nav__item">
<a href="upgrades.html" class="md-nav__link">Upgrades</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html" class="md-nav__link">Troubleshooting</a>
</li>
<li class="md-nav__item">
<a href="support.html" class="md-nav__link">Support</a>
</li>
<li class="md-nav__item">
<a href="conduct.html" class="md-nav__link">Code of Conduct</a>
</li>
<li class="md-nav__item">
<a href="license.html" class="md-nav__link">License</a>
</li>
</ul>
</nav>
</div>
</div>
</div>
<div class="md-sidebar md-sidebar--secondary" data-md-component="toc">
<div class="md-sidebar__scrollwrap">
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--secondary">
<label class="md-nav__title" for="__toc">Contents</label>
<ul class="md-nav__list" data-md-scrollfix="">
<li class="md-nav__item"><a href="#ui-reference--page-root" class="md-nav__link">UI Reference</a><nav class="md-nav">
<ul class="md-nav__list">
<li class="md-nav__item"><a href="#dashboard" class="md-nav__link">Dashboard</a>
</li>
<li class="md-nav__item"><a href="#networks" class="md-nav__link">Networks</a><nav class="md-nav">
<ul class="md-nav__list">
<li class="md-nav__item"><a href="#create" class="md-nav__link">Create</a>
</li>
<li class="md-nav__item"><a href="#edit" class="md-nav__link">Edit</a>
</li></ul>
</nav>
</li>
<li class="md-nav__item"><a href="#nodes" class="md-nav__link">Nodes</a><nav class="md-nav">
<ul class="md-nav__list">
<li class="md-nav__item"><a href="#node-list" class="md-nav__link">Node List</a>
</li>
<li class="md-nav__item"><a href="#create-egress" class="md-nav__link">Create Egress</a>
</li>
<li class="md-nav__item"><a href="#create-relay" class="md-nav__link">Create Relay</a>
</li>
<li class="md-nav__item"><a href="#edit-node-node-details" class="md-nav__link">Edit Node / Node Details</a>
</li></ul>
</nav>
</li>
<li class="md-nav__item"><a href="#ext-clients" class="md-nav__link">Ext Clients</a>
</li>
<li class="md-nav__item"><a href="#dns" class="md-nav__link">DNS</a>
</li>
<li class="md-nav__item"><a href="#create-edit-users" class="md-nav__link">Create / Edit Users</a>
</li></ul>
</nav>
</li>
</ul>
</nav>
</div>
</div>
</div>
<div class="md-content">
<article class="md-content__inner md-typeset" role="main">
<h1 id="ui-reference--page-root">UI Reference<a class="headerlink" href="#ui-reference--page-root" title="Permalink to this headline"></a></h1>
<p>This page contains annotated screenshots of most UI components, detailing the configuration options of each field across Nodes, Networks, DNS, Ext Clients, Users, and more.</p>
<h2 id="dashboard">Dashboard<a class="headerlink" href="#dashboard" title="Permalink to this headline"></a></h2>
<a class="reference internal image-reference" href="_images/ui-1.jpg"><img alt="dashboard" class="align-center" src="_images/ui-1.jpg" style="width: 80%;"/></a>
<h2 id="networks">Networks<a class="headerlink" href="#networks" title="Permalink to this headline"></a></h2>
<h3 id="create">Create<a class="headerlink" href="#create" title="Permalink to this headline"></a></h3>
<a class="reference internal image-reference" href="_images/ui-2.jpg"><img alt="create network" class="align-center" src="_images/ui-2.jpg" style="width: 80%;"/></a>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span>
</pre></div>
</div>
<ol class="arabic simple">
<li><p><strong>Autofill:</strong> Provides sensible defaults for network details and makes up a name.</p></li>
<li><p><strong>Network Name:</strong> The name of the network. Character limited, as this translates to the interface name on hosts (nm-&lt;network name&gt;)</p></li>
<li><p><strong>Address Range:</strong> The CIDR of the network. Must be a valid IPv4 Subnet and should be a private address range.</p></li>
<li><p><strong>Udp Hole Punching:</strong> Enables or disables “UDP Hole Punching” on the network. When on, clients will first reach out to the server. The server will keep track of public addresses / ports and send these to all other clients in the network. This increases NAT traversibility, but can also cause issues depending on the server environment (if server is in a private network, for example). Typically good to enable if clients will “roam” frequently or are user devices. Typically better to disable if most clients will be servers with well-defined endpoints / ports. If enabled, you can also disable UDP Hole Punching on any individual machine via the UI (see Node section) but it will be enabled by default.</p></li>
<li><p><strong>Is Local Network:</strong> Turn on if all clients in the network will be in the same “local” network. This is a very rare situation and depends on the use case. Almost always leave this off. Turn on if you are in a large data center with a large private address space over which clients should communicate. Can also enable if using a VPC and are treating a single client as “egress” for the VPC. If enabled, fill out the address range of the local network which should determine endpoints.</p></li>
<li><p><strong>Is Dual Stack:</strong> Turn on to add private ipv6 addresses to all clients in addition to their ipv4 addresses. Not typically necessary. If on, enter a private ipv6 address range to pull from.</p></li>
</ol>
<h3 id="edit">Edit<a class="headerlink" href="#edit" title="Permalink to this headline"></a></h3>
<a class="reference internal image-reference" href="_images/ui-3.jpg"><img alt="edit network" class="align-center" src="_images/ui-3.jpg" style="width: 80%;"/></a>
<p><strong>NOTE:</strong> With the exception of Address Ranges (1-2) any setting that affects nodes will not take effect on existing nodes. It will only set the settings on any <strong>new</strong> node, after the setting has been changed.</p>
<ol class="arabic simple">
<li><p><strong>Address Range (ipv4):</strong> The ipv4 private network CIDR. If edited, Netmaker will go through all nodes and update private addresses based on the new range.**</p></li>
<li><p><strong>Address Range (ipv6):</strong> The ipv6 private network CIDR. If edited, Netmaker will go through all nodes and update private addresses based on the new range.**</p></li>
<li><p><strong>Local Range:</strong> Only relevant if “Is Local” was switched on during creation. Specifies the local range that nodes will base their Endpoint off of (note: if a node cannot find an enpoint within the range it will fallback to public ip).</p></li>
<li><p><strong>Display Name:</strong> The display name of the network. Network Name cannot be changed (acts as a unique ID) but display name can be changed. Only effects appearance in UI.</p></li>
<li><p><strong>Default Interface:</strong> The default network interface name configured on each node. This defaults to “nm-&lt;network name&gt;”.</p></li>
<li><p><strong>Default Port:</strong> The default WireGuard port each node will attempt to use. Nodes will iterate up from this port until they find a free port.</p></li>
<li><p><strong>Default PostUp:</strong> A default post-up command to run on each node (after interface has been configured). Disabled by default to prevent RCE vulnerabilities.</p></li>
<li><p><strong>Default PostDown:</strong> A default post-down command to run on each node (after interface has been removed). Disabled by default to prevent RCE vulnerabilities.</p></li>
<li><p><strong>Default Keepalive:</strong> How often nodes should send packets to keep connection alive with all peers (in seconds).</p></li>
<li><p><strong>Default Ext Client DNS:</strong> If set, adds a “DNS=&lt;value&gt;” line to each ext client config. Set this to add DNS to clients. Typically will set this to the servers public IP.</p></li>
<li><p><strong>Default MTU:</strong> Default MTU for interfaces of all clients in network. Can be useful to set lower in certain difficult environments such as Kubernetes.</p></li>
<li><p><strong>Allow Node Signup Without Keys:</strong> Allows nodes to join the network without a valid Access Key. Nodes will be put in “pending” status until approved via UI by an admin. Useful if an arbitrary number of people need to join the network and there is no easy way to distribute keys to users.</p></li>
<li><p><strong>Is Dual Stack:</strong> Enable the Dual Stack feature of networks and add ipv6 addresses to nodes.</p></li>
<li><p><strong>Default Saveconfig:</strong> Typically ignore this. Sets the SaveConfig field on wireguard config.</p></li>
<li><p><strong>UDP Hole Punching:</strong> Whether or not UDP Hole Punching is turned on (see Network Create notes). Only effects new nodes. Enables or disables “UDP Hole Punching” on the network. When on, clients will first reach out to the server. The server will keep track of public addresses / ports and send these to all other clients in the network. This increases NAT traversibility, but can also cause issues depending on the server environment (if server is in a private network, for example). Typically good to enable if clients will “roam” frequently or are user devices. Typically better to disable if most clients will be servers with well-defined endpoints / ports. If enabled, you can also disable UDP Hole Punching on any individual machine via the UI (see Node section) but it will be enabled by default.</p></li>
</ol>
<h2 id="nodes">Nodes<a class="headerlink" href="#nodes" title="Permalink to this headline"></a></h2>
<h3 id="node-list">Node List<a class="headerlink" href="#node-list" title="Permalink to this headline"></a></h3>
<a class="reference internal image-reference" href="_images/ui-4.jpg"><img alt="dashboard" class="align-center" src="_images/ui-4.jpg" style="width: 80%;"/></a>
<ol class="arabic simple">
<li><p><strong>Search Nodes:</strong> Look up a node by name.</p></li>
<li><p><strong>Select Network:</strong> Filter nodes by network.</p></li>
<li><p><strong>Node Name:</strong> Name of node. By default set to hostname of machine.</p></li>
<li><p><strong>IP Address:</strong> Private IP of node within network.</p></li>
<li><p><strong>Network:</strong> Network the node is in.</p></li>
<li><p><strong>Egress:</strong> Indicates if node is an egress gateway. Click to convert into egress gateway. Egress gateways route traffic from the network into a specific subnet or subnets. Egress gateways should be servers in a static location with a reliable IP.</p></li>
<li><p><strong>Ingress:</strong> Indicates if the node is an ingress. Click to convert into ingress gateway. Ingress gateways route traffic into the network over the WireGuard interface using “ext clients,” which are static WireGuard config files. Ingress gateways should be servers in a static location with a reliable IP.</p></li>
<li><p><strong>Relay:</strong> Indicates if the node is a relay. Click to convert into relay. Relays route traffic to specified nodes for the network (typically hard to reach / CGNATted nodes. Relays should be servers in a static location with a reliable IP.</p></li>
<li><p><strong>Status:</strong> Indicates how recently the node checked into the server. Displays “Warning” after 5 minutes and “Error” after 30 minutes without a check in. Does <strong>not</strong> indicate the health of the nodes virtual network connections.</p></li>
<li><p><strong>Delete:</strong> Delete the node.</p></li>
</ol>
<h3 id="create-egress">Create Egress<a class="headerlink" href="#create-egress" title="Permalink to this headline"></a></h3>
<a class="reference internal image-reference" href="_images/ui-6.jpg"><img alt="dashboard" class="align-center" src="_images/ui-6.jpg" style="width: 80%;"/></a>
<ol class="arabic simple">
<li><p><strong>Egress Gateway Ranges:</strong> A comma-separated list of the subnets for which the gateway will route traffic. For instance, with Kubernetes this could be both the Service Network and Pod Network. For a standard VPN, Netmaker can use a list of the public CIDRs (see the docs). Typically, this will be something like a data center network, VPC, or home network.</p></li>
<li><p><strong>Interface:</strong> The interface on the machine used to access the provided egress gateway ranges. For instance, on a typical linux machine, the interface for public traffic would be “eth0”. Usually you will need to check on the machine first to find the right interface. For instance, on Linux, you can find the interface by running this: ip route get &lt;address in subnet&gt;.</p></li>
</ol>
<h3 id="create-relay">Create Relay<a class="headerlink" href="#create-relay" title="Permalink to this headline"></a></h3>
<a class="reference internal image-reference" href="_images/ui-7.jpg"><img alt="dashboard" class="align-center" src="_images/ui-7.jpg" style="width: 80%;"/></a>
<ol class="arabic simple">
<li><p><strong>Relay Addresses:</strong> Specify which private addresses (of nodes) that this node should relay for.</p></li>
<li><p><strong>Select Nodes:</strong> Rather than specify by IP, you can just select from a list of node names instead.</p></li>
<li><p><strong>Select All:</strong> Rather than select a list, you can “select all”, which converts the network from “pure mesh” into “hub-and-spoke”, meaning there are no p2p connections, everything goes through this relay first.</p></li>
</ol>
<h3 id="edit-node-node-details">Edit Node / Node Details<a class="headerlink" href="#edit-node-node-details" title="Permalink to this headline"></a></h3>
<a class="reference internal image-reference" href="_images/ui-5.jpg"><img alt="dashboard" class="align-center" src="_images/ui-5.jpg" style="width: 80%;"/></a>
<ol class="arabic simple">
<li><p><strong>IP Address:</strong> The primary private IP address of the node. Assigned automatically by Netmaker but can be changed to whatever you want within the Network CIDR.</p></li>
<li><p><strong>IPv6 Address:</strong> (Only if running dual stack) the primary private IPv6 address of the node. Assigned automatically by Netmaker but can be changed to whatever you want within the Network CIDR.</p></li>
<li><p><strong>Local Address:</strong> The “locally reachable” address of the node. Other nodes will take note of this to see if this node is on the same network. If so, they will use this address instead of the public “Endpoint.” If running a few nodes inside of a VPC, home network, or similar, make sure the local address is populated correctly for faster and more secure inter-node communication.</p></li>
<li><p><strong>Node Name:</strong> The name of the node within the network. Hostname by default but can be anything (within the character limits).</p></li>
<li><p><strong>Port:</strong> The port used by the node locally. <strong>This value is ignored if UDP Hole Punching is on,</strong> because port is set dynamically every time interface is created. If UDP Hole Punching is off, the port can be set to any reasonable (and available) value youd like for the local machine. Typi</p></li>
<li><p><strong>Public Key:</strong> (Uneditable) The public key of the node, distributed to other peers in the network.</p></li>
<li><p><strong>Endpoint:</strong> The (typically public) IP of the machine, which peers will use to reach it, in combination with the port. If changing this value, make sure Roaming is turned off, since otherwise, the node will check to see if there is a change in the public IP regularly and update it.</p></li>
<li><p><strong>PostUp:</strong> Uneditable by default to disable RCE. Commands to run after the interface is created. If an ingress or egress gateway are created, this field will populate automatically with appropriate iptables commands.</p></li>
<li><p><strong>PostDown:</strong> Uneditable by default to disable RCE. Commands to run after the interface is brought down. If an ingress or egress gateway are created, this field will populate automatically with appropriate iptables commands.</p></li>
<li><p><strong>Allowed IPs:</strong> Additional private addresses given to the node (in addition to the IPAddress and IPv6Address). Useful in some scenarios where there is a known address a server should have. Any IPs added here will be tacked onto the AllowedIPs of other peers, so this node will be shown to have multiple reachable private addresses.</p></li>
<li><p><strong>Persistent Keepalive:</strong> How often packets are sent to keep connections open with other peers.</p></li>
<li><p><strong>Relay Addresses:</strong> If “Relay” is enabled on this node, this field can be edited to add and remove nodes from the relay. So if you are currently relaying just one node but wish to relay an additional node, just add its private IP here.</p></li>
<li><p><strong>Node Expiration Datetime:</strong> If a node should become invalid after a length of time, you can set it in this field, after which time, it will lose access to the network and will not populate to other nodes. Useful for scenarios where temporary access is granted to 3rd parties.</p></li>
<li><p><strong>Last Checkin:</strong> Unix timestamp of the last time the node checked in with the server. Used to determine generic health of node.</p></li>
<li><p><strong>Mac Address:</strong> The hardware mac address of the machine. Used to be used as the unique ID, but is being depreciated.</p></li>
<li><p><strong>Network:</strong> The network this 1node belongs to.</p></li>
<li><p><strong>Egress Gateway Ranges:</strong> If Egress is enabled, the gateway ranges that this machine routes to.</p></li>
<li><p><strong>Local Range:</strong> If IsLocal has been enabled on the network, this is the local range in which the node will look for a private address from its local interfaces, to use as an endpoint.</p></li>
<li><p><strong>Node Operating System:</strong> The OS of the machine.</p></li>
<li><p><strong>MTU:</strong> The MTU that the node will use on the interface. If “wg show” displays a valid handshake but pings are not working, many times the issue is MTU. Making this value lower can solve this issue. Some typical values are 1024, 1280, and 1420.</p></li>
<li><p><strong>Saveconfig:</strong> Usually best to ignore this. Sets the “SaveConfig” value on wireguard config files.</p></li>
<li><p><strong>Is Static:</strong> Ports and Endpoints can be changed automatically by the netclient. Switching on “Is Static” means the port and endpoint will stay the same until you change it. This can be good to set if the machine is a server sitting in a location that is not expected to change. It is also good to have Is Static switched on for Ingress, Egress, and Relay Servers, since they should be in a reliable location.</p></li>
<li><p><strong>UDP Hole Punching:</strong> If on, the nodes port will be randomized. The port and endpoint distributed to other nodes are no longer determined by the settings in this file. Instead, the node will “check in” with the server regularly. The server will track the IP and port used to open a connection, and store these values. These values then get distributed to nodes. This is helpful for getting around NATs which may obscure the nodes location.</p></li>
<li><p><strong>Is DNS On:</strong> DNS is solely handled by resolvectl at the moment, which is on many Linux distributions. For anything else, this value should remain off. If you wish to configure DNS for non-compatible systems, you must do so manually.</p></li>
<li><p><strong>Dualstack:</strong> Whether or not this machine should have both a private ipv4 address and ipv6 address.</p></li>
<li><p><strong>Is Local:</strong> If on, will only communicate over the local address (Assumes IsLocal tuned to yes on the network level.)</p></li>
<li><p><strong>Roaming:</strong> If on, will check regularly for changes in the Endpoint and modify the Endpoint value appropriately. This allows a client to “roam” between wifi networks and maintain a connection. Good to keep on for machines where the public address may change.</p></li>
<li><p><strong>IPforwarding:</strong> If on, ipforwarding is enabled on the machine. Should almost always be kept on.</p></li>
</ol>
<h2 id="ext-clients">Ext Clients<a class="headerlink" href="#ext-clients" title="Permalink to this headline"></a></h2>
<a class="reference internal image-reference" href="_images/ui-8.jpg"><img alt="dashboard" class="align-center" src="_images/ui-8.jpg" style="width: 80%;"/></a>
<ol class="arabic simple">
<li><p><strong>Gateway Name / IP Address:</strong> Information about which Node is the Ingress Gateway.</p></li>
<li><p><strong>Add External Client:</strong> Button to generate a new ext client.</p></li>
<li><p><strong>Client ID:</strong> The randomly-generated name of the client. Click on the ID to change the name to something sensible.</p></li>
<li><p><strong>IP Address:</strong> The private ip address of the ext client.</p></li>
<li><p><strong>QR Code:</strong> If joining form iOS or Android, open the WireGuard app and scan the QR code to join the network.</p></li>
<li><p><strong>Download Client Configuration:</strong> If joining from a laptop/desktop, download the config file and run “wg-quick up /path/to/config”</p></li>
<li><p><strong>Delete:</strong> Delete the ext client and remove its network access.</p></li>
</ol>
<h2 id="dns">DNS<a class="headerlink" href="#dns" title="Permalink to this headline"></a></h2>
<a class="reference internal image-reference" href="_images/ui-10.jpg"><img alt="dashboard" class="align-center" src="_images/ui-10.jpg" style="width: 80%;"/></a>
<ol class="arabic simple">
<li><p><strong>DNS Name:</strong> The private DNS entry. Must end in “.&lt;network name&gt;” (added automatically). This avoids conflicts between networks.</p></li>
<li><p><strong>IP Address:</strong> The IP address of the entry. Can be anything (public addresses too!) but typically a node IP.</p></li>
<li><p><strong>Select Node Address:</strong> Select a node name to populate its IP address automatically.</p></li>
</ol>
<h2 id="create-edit-users">Create / Edit Users<a class="headerlink" href="#create-edit-users" title="Permalink to this headline"></a></h2>
<a class="reference internal image-reference" href="_images/ui-11.jpg"><img alt="dashboard" class="align-center" src="_images/ui-11.jpg" style="width: 80%;"/></a>
<ol class="arabic simple">
<li><p><strong>Username:</strong> Specify Username.</p></li>
<li><p><strong>Password:</strong> Specify password.</p></li>
<li><p><strong>Confirm Password:</strong> Confirm password.</p></li>
<li><p><strong>Make Admin:</strong> Make into a server admin or “super admin”, which has access to all networks and server-level settings.</p></li>
<li><p><strong>Networks:</strong> If not made into an “admin”, select the networks which this user has access to. The user will be a “network admin” of these networks, but other networks will be invisible/unaccessible.</p></li>
</ol>
</article>
</div>
</div>
</main>
</div>
<footer class="md-footer">
<div class="md-footer-nav">
<nav class="md-footer-nav__inner md-grid">
<a href="usage.html" title="External Guides"
class="md-flex md-footer-nav__link md-footer-nav__link--prev"
rel="prev">
<div class="md-flex__cell md-flex__cell--shrink">
<i class="md-icon md-icon--arrow-back md-footer-nav__button"></i>
</div>
<div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
<span class="md-flex__ellipsis">
<span
class="md-footer-nav__direction"> Previous </span> External Guides </span>
</div>
</a>
<a href="api.html" title="API Reference"
class="md-flex md-footer-nav__link md-footer-nav__link--next"
rel="next">
<div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title"><span
class="md-flex__ellipsis"> <span
class="md-footer-nav__direction"> Next </span> API Reference </span>
</div>
<div class="md-flex__cell md-flex__cell--shrink"><i
class="md-icon md-icon--arrow-forward md-footer-nav__button"></i>
</div>
</a>
</nav>
</div>
<div class="md-footer-meta md-typeset">
<div class="md-footer-meta__inner md-grid">
<div class="md-footer-copyright">
<div class="md-footer-copyright__highlight">
&#169; Copyright 2021, Alex Feiszli.
</div>
Created using
<a href="http://www.sphinx-doc.org/">Sphinx</a> 4.3.0.
and
<a href="https://github.com/bashtage/sphinx-material/">Material for
Sphinx</a>
</div>
</div>
</div>
</footer>
<script src="_static/javascripts/application.js"></script>
<script>app.initialize({version: "1.0.4", url: {base: ".."}})</script>
</body>
</html>

521
docs/_build/html/upgrades.html vendored Normal file
View file

@ -0,0 +1,521 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="viewport" content="width=device-width,initial-scale=1">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="lang:clipboard.copy" content="Copy to clipboard">
<meta name="lang:clipboard.copied" content="Copied to clipboard">
<meta name="lang:search.language" content="en">
<meta name="lang:search.pipeline.stopwords" content="True">
<meta name="lang:search.pipeline.trimmer" content="True">
<meta name="lang:search.result.none" content="No matching documents">
<meta name="lang:search.result.one" content="1 matching document">
<meta name="lang:search.result.other" content="# matching documents">
<meta name="lang:search.tokenizer" content="[\s\-]+">
<link href="https://fonts.gstatic.com/" rel="preconnect" crossorigin>
<link href="https://fonts.googleapis.com/css?family=Roboto+Mono:400,500,700|Roboto:300,400,400i,700&display=fallback" rel="stylesheet">
<style>
body,
input {
font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif
}
code,
kbd,
pre {
font-family: "Roboto Mono", "Courier New", Courier, monospace
}
</style>
<link rel="stylesheet" href="_static/stylesheets/application.css"/>
<link rel="stylesheet" href="_static/stylesheets/application-palette.css"/>
<link rel="stylesheet" href="_static/stylesheets/application-fixes.css"/>
<link rel="stylesheet" href="_static/fonts/material-icons.css"/>
<meta name="theme-color" content="#3f51b5">
<script src="_static/javascripts/modernizr.js"></script>
<title>Upgrades &#8212; Netmaker 0.9.4 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/material.css" />
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
<script src="_static/jquery.js"></script>
<script src="_static/underscore.js"></script>
<script src="_static/doctools.js"></script>
<link rel="author" title="About these documents" href="about.html" />
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
<link rel="next" title="Troubleshooting" href="troubleshoot.html" />
<link rel="prev" title="API Reference" href="api.html" />
</head>
<body dir=ltr
data-md-color-primary=indigo data-md-color-accent=light-blue>
<svg class="md-svg">
<defs data-children-count="0">
<svg xmlns="http://www.w3.org/2000/svg" width="416" height="448" viewBox="0 0 416 448" id="__github"><path fill="currentColor" d="M160 304q0 10-3.125 20.5t-10.75 19T128 352t-18.125-8.5-10.75-19T96 304t3.125-20.5 10.75-19T128 256t18.125 8.5 10.75 19T160 304zm160 0q0 10-3.125 20.5t-10.75 19T288 352t-18.125-8.5-10.75-19T256 304t3.125-20.5 10.75-19T288 256t18.125 8.5 10.75 19T320 304zm40 0q0-30-17.25-51T296 232q-10.25 0-48.75 5.25Q229.5 240 208 240t-39.25-2.75Q130.75 232 120 232q-29.5 0-46.75 21T56 304q0 22 8 38.375t20.25 25.75 30.5 15 35 7.375 37.25 1.75h42q20.5 0 37.25-1.75t35-7.375 30.5-15 20.25-25.75T360 304zm56-44q0 51.75-15.25 82.75-9.5 19.25-26.375 33.25t-35.25 21.5-42.5 11.875-42.875 5.5T212 416q-19.5 0-35.5-.75t-36.875-3.125-38.125-7.5-34.25-12.875T37 371.5t-21.5-28.75Q0 312 0 260q0-59.25 34-99-6.75-20.5-6.75-42.5 0-29 12.75-54.5 27 0 47.5 9.875t47.25 30.875Q171.5 96 212 96q37 0 70 8 26.25-20.5 46.75-30.25T376 64q12.75 25.5 12.75 54.5 0 21.75-6.75 42 34 40 34 99.5z"/></svg>
</defs>
</svg>
<input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer">
<input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search">
<label class="md-overlay" data-md-component="overlay" for="__drawer"></label>
<a href="#upgrades" tabindex="1" class="md-skip"> Skip to content </a>
<header class="md-header" data-md-component="header">
<nav class="md-header-nav md-grid">
<div class="md-flex navheader">
<div class="md-flex__cell md-flex__cell--shrink">
<a href="index.html" title="Netmaker 0.9.4 documentation"
class="md-header-nav__button md-logo">
<i class="md-icon">&#xe869</i>
</a>
</div>
<div class="md-flex__cell md-flex__cell--shrink">
<label class="md-icon md-icon--menu md-header-nav__button" for="__drawer"></label>
</div>
<div class="md-flex__cell md-flex__cell--stretch">
<div class="md-flex__ellipsis md-header-nav__title" data-md-component="title">
<span class="md-header-nav__topic">Netmaker Docs</span>
<span class="md-header-nav__topic"> Upgrades </span>
</div>
</div>
<div class="md-flex__cell md-flex__cell--shrink">
<label class="md-icon md-icon--search md-header-nav__button" for="__search"></label>
<div class="md-search" data-md-component="search" role="dialog">
<label class="md-search__overlay" for="__search"></label>
<div class="md-search__inner" role="search">
<form class="md-search__form" action="search.html" method="get" name="search">
<input type="text" class="md-search__input" name="q" placeholder="Search"
autocapitalize="off" autocomplete="off" spellcheck="false"
data-md-component="query" data-md-state="active">
<label class="md-icon md-search__icon" for="__search"></label>
<button type="reset" class="md-icon md-search__icon" data-md-component="reset" tabindex="-1">
&#xE5CD;
</button>
</form>
<div class="md-search__output">
<div class="md-search__scrollwrap" data-md-scrollfix>
<div class="md-search-result" data-md-component="result">
<div class="md-search-result__meta">
Type to start searching
</div>
<ol class="md-search-result__list"></ol>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="md-flex__cell md-flex__cell--shrink">
<div class="md-header-nav__source">
<a href="https://github.com/gravitl/netmaker/" title="Go to repository" class="md-source" data-md-source="github">
<div class="md-source__icon">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 24 24" width="28" height="28">
<use xlink:href="#__github" width="24" height="24"></use>
</svg>
</div>
<div class="md-source__repository">
Netmaker
</div>
</a>
</div>
</div>
<script src="_static/javascripts/version_dropdown.js"></script>
<script>
var json_loc = ""versions.json"",
target_loc = "../",
text = "Versions";
$( document ).ready( add_version_dropdown(json_loc, target_loc, text));
</script>
</div>
</nav>
</header>
<div class="md-container">
<nav class="md-tabs" data-md-component="tabs">
<div class="md-tabs__inner md-grid">
<ul class="md-tabs__list">
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.4 documentation</a></li>
</ul>
</div>
</nav>
<main class="md-main">
<div class="md-main__inner md-grid" data-md-component="container">
<div class="md-sidebar md-sidebar--primary" data-md-component="navigation">
<div class="md-sidebar__scrollwrap">
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--primary" data-md-level="0">
<label class="md-nav__title md-nav__title--site" for="__drawer">
<a href="index.html" title="Netmaker 0.9.4 documentation" class="md-nav__button md-logo">
<i class="md-icon">&#xe869</i>
</a>
<a href="index.html"
title="Netmaker 0.9.4 documentation">Netmaker Docs</a>
</label>
<div class="md-nav__source">
<a href="https://github.com/gravitl/netmaker/" title="Go to repository" class="md-source" data-md-source="github">
<div class="md-source__icon">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 24 24" width="28" height="28">
<use xlink:href="#__github" width="24" height="24"></use>
</svg>
</div>
<div class="md-source__repository">
Netmaker
</div>
</a>
</div>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="about.html" class="md-nav__link">About</a>
</li>
<li class="md-nav__item">
<a href="architecture.html" class="md-nav__link">Architecture</a>
</li>
<li class="md-nav__item">
<a href="install.html" class="md-nav__link">Install</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html" class="md-nav__link">Quick Install</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html" class="md-nav__link">Getting Started</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html" class="md-nav__link">Ingress + External Clients</a>
</li>
<li class="md-nav__item">
<a href="egress-gateway.html" class="md-nav__link">Egress Gateway</a>
</li>
<li class="md-nav__item">
<a href="relay-server.html" class="md-nav__link">Relay Servers</a>
</li>
<li class="md-nav__item">
<a href="https://nm-k8s.readthedocs.io" class="md-nav__link">Kubernetes</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html" class="md-nav__link">Advanced Server Installation</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html" class="md-nav__link">Advanced Client Installation</a>
</li>
<li class="md-nav__item">
<a href="oauth.html" class="md-nav__link">Integrating OAuth</a>
</li>
<li class="md-nav__item">
<a href="usage.html" class="md-nav__link">External Guides</a>
</li>
<li class="md-nav__item">
<a href="ui-reference.html" class="md-nav__link">UI Reference</a>
</li>
<li class="md-nav__item">
<a href="api.html" class="md-nav__link">API Reference</a>
</li>
<li class="md-nav__item">
<input class="md-toggle md-nav__toggle" data-md-toggle="toc" type="checkbox" id="__toc">
<label class="md-nav__link md-nav__link--active" for="__toc"> Upgrades </label>
<a href="#" class="md-nav__link md-nav__link--active">Upgrades</a>
<nav class="md-nav md-nav--secondary">
<label class="md-nav__title" for="__toc">Contents</label>
<ul class="md-nav__list" data-md-scrollfix="">
<li class="md-nav__item"><a href="#upgrades--page-root" class="md-nav__link">Upgrades</a><nav class="md-nav">
<ul class="md-nav__list">
<li class="md-nav__item"><a href="#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item"><a href="#upgrade-the-server-netmaker" class="md-nav__link">Upgrade the Server (netmaker)</a>
</li>
<li class="md-nav__item"><a href="#upgrade-the-clients-netclient" class="md-nav__link">Upgrade the Clients (netclient)</a>
</li></ul>
</nav>
</li>
</ul>
</nav>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="#upgrade-the-server-netmaker" class="md-nav__link">Upgrade the Server (netmaker)</a>
</li>
<li class="md-nav__item">
<a href="#upgrade-the-clients-netclient" class="md-nav__link">Upgrade the Clients (netclient)</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html" class="md-nav__link">Troubleshooting</a>
</li>
<li class="md-nav__item">
<a href="support.html" class="md-nav__link">Support</a>
</li>
<li class="md-nav__item">
<a href="conduct.html" class="md-nav__link">Code of Conduct</a>
</li>
<li class="md-nav__item">
<a href="license.html" class="md-nav__link">License</a>
</li>
</ul>
</nav>
</div>
</div>
</div>
<div class="md-sidebar md-sidebar--secondary" data-md-component="toc">
<div class="md-sidebar__scrollwrap">
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--secondary">
<label class="md-nav__title" for="__toc">Contents</label>
<ul class="md-nav__list" data-md-scrollfix="">
<li class="md-nav__item"><a href="#upgrades--page-root" class="md-nav__link">Upgrades</a><nav class="md-nav">
<ul class="md-nav__list">
<li class="md-nav__item"><a href="#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item"><a href="#upgrade-the-server-netmaker" class="md-nav__link">Upgrade the Server (netmaker)</a>
</li>
<li class="md-nav__item"><a href="#upgrade-the-clients-netclient" class="md-nav__link">Upgrade the Clients (netclient)</a>
</li></ul>
</nav>
</li>
</ul>
</nav>
</div>
</div>
</div>
<div class="md-content">
<article class="md-content__inner md-typeset" role="main">
<h1 id="upgrades--page-root">Upgrades<a class="headerlink" href="#upgrades--page-root" title="Permalink to this headline"></a></h1>
<h2 id="introduction">Introduction<a class="headerlink" href="#introduction" title="Permalink to this headline"></a></h2>
<p>As of 0.9.4, upgrading Netmaker is a manual process. This is expected to be automated in the future, but for now is still a relatively straightforward process.</p>
<h2 id="upgrade-the-server-netmaker">Upgrade the Server (netmaker)<a class="headerlink" href="#upgrade-the-server-netmaker" title="Permalink to this headline"></a></h2>
<p>To upgrade the server, you only need to change the docker image versions:</p>
<ol class="arabic simple">
<li><p><cite>ssh root@my-server-ip</cite></p></li>
<li><p><cite>docker compose down</cite></p></li>
<li><p><cite>vi docker-compose.yml</cite></p></li>
<li><p>Change gravitl/netmaker:&lt;version&gt; and gravitl/netmaker-ui:&lt;version&gt; to the new version.</p></li>
<li><p>Save and close the file</p></li>
<li><p><cite>docker-compose up -d</cite></p></li>
</ol>
<h2 id="upgrade-the-clients-netclient">Upgrade the Clients (netclient)<a class="headerlink" href="#upgrade-the-clients-netclient" title="Permalink to this headline"></a></h2>
<p>To upgrade the client, you must get the new client binary and place it in /etc/netclient. Depending on the new vs. old version, there may be minor incompatibilities (discussed below).</p>
<ol class="arabic simple">
<li><p>Vists <a class="reference external" href="https://github.com/gravitl/netmaker/releases/">https://github.com/gravitl/netmaker/releases/</a></p></li>
<li><p>Find the appropriate binary for your machine.</p></li>
<li><p>Download. E.x.: <cite>wget https://github.com/gravitl/netmaker/releases/download/vX.X.X/netclient-myversion</cite></p></li>
<li><p>Rename binary to <cite>netclient</cite> and move to folder. E.x.: <cite>mv netclient-myversion /etc/netclient/netclient</cite></p></li>
<li><p><cite>netclient version</cite> (confirm its the correct version)</p></li>
<li><p><cite>netclient pull</cite></p></li>
</ol>
<p>This last step helps ensure any newly added fields are now present. You may run into a “panic” based on missing fields and your version mismatch. In such cases, you can either:</p>
<ol class="arabic simple">
<li><p>Add the missing field to /etc/netclient/config/netconfig-yournetwork and then run “netclient checkin”</p></li>
</ol>
<p>or</p>
<ol class="arabic simple" start="2">
<li><p>Leave and rejoin the network</p></li>
</ol>
</article>
</div>
</div>
</main>
</div>
<footer class="md-footer">
<div class="md-footer-nav">
<nav class="md-footer-nav__inner md-grid">
<a href="api.html" title="API Reference"
class="md-flex md-footer-nav__link md-footer-nav__link--prev"
rel="prev">
<div class="md-flex__cell md-flex__cell--shrink">
<i class="md-icon md-icon--arrow-back md-footer-nav__button"></i>
</div>
<div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
<span class="md-flex__ellipsis">
<span
class="md-footer-nav__direction"> Previous </span> API Reference </span>
</div>
</a>
<a href="troubleshoot.html" title="Troubleshooting"
class="md-flex md-footer-nav__link md-footer-nav__link--next"
rel="next">
<div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title"><span
class="md-flex__ellipsis"> <span
class="md-footer-nav__direction"> Next </span> Troubleshooting </span>
</div>
<div class="md-flex__cell md-flex__cell--shrink"><i
class="md-icon md-icon--arrow-forward md-footer-nav__button"></i>
</div>
</a>
</nav>
</div>
<div class="md-footer-meta md-typeset">
<div class="md-footer-meta__inner md-grid">
<div class="md-footer-copyright">
<div class="md-footer-copyright__highlight">
&#169; Copyright 2021, Alex Feiszli.
</div>
Created using
<a href="http://www.sphinx-doc.org/">Sphinx</a> 4.3.0.
and
<a href="https://github.com/bashtage/sphinx-material/">Material for
Sphinx</a>
</div>
</div>
</div>
</footer>
<script src="_static/javascripts/application.js"></script>
<script>app.initialize({version: "1.0.4", url: {base: ".."}})</script>
</body>
</html>

View file

@ -46,7 +46,7 @@
<title>Using Netmaker &#8212; Netmaker 0.9.0 documentation</title>
<title>External Guides &#8212; Netmaker 0.9.4 documentation</title>
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
<link rel="stylesheet" type="text/css" href="_static/material.css" />
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
@ -56,8 +56,8 @@
<link rel="author" title="About these documents" href="about.html" />
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
<link rel="next" title="API Reference" href="api.html" />
<link rel="prev" title="External Clients" href="external-clients.html" />
<link rel="next" title="UI Reference" href="ui-reference.html" />
<link rel="prev" title="Integrating OAuth" href="oauth.html" />
@ -81,7 +81,7 @@
<nav class="md-header-nav md-grid">
<div class="md-flex navheader">
<div class="md-flex__cell md-flex__cell--shrink">
<a href="index.html" title="Netmaker 0.9.0 documentation"
<a href="index.html" title="Netmaker 0.9.4 documentation"
class="md-header-nav__button md-logo">
<i class="md-icon">&#xe869</i>
@ -94,7 +94,7 @@
<div class="md-flex__cell md-flex__cell--stretch">
<div class="md-flex__ellipsis md-header-nav__title" data-md-component="title">
<span class="md-header-nav__topic">Netmaker Docs</span>
<span class="md-header-nav__topic"> Using Netmaker </span>
<span class="md-header-nav__topic"> External Guides </span>
</div>
</div>
<div class="md-flex__cell md-flex__cell--shrink">
@ -167,7 +167,7 @@
<nav class="md-tabs" data-md-component="tabs">
<div class="md-tabs__inner md-grid">
<ul class="md-tabs__list">
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.0 documentation</a></li>
<li class="md-tabs__item"><a href="index.html" class="md-tabs__link">Netmaker 0.9.4 documentation</a></li>
</ul>
</div>
</nav>
@ -179,13 +179,13 @@
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--primary" data-md-level="0">
<label class="md-nav__title md-nav__title--site" for="__drawer">
<a href="index.html" title="Netmaker 0.9.0 documentation" class="md-nav__button md-logo">
<a href="index.html" title="Netmaker 0.9.4 documentation" class="md-nav__button md-logo">
<i class="md-icon">&#xe869</i>
</a>
<a href="index.html"
title="Netmaker 0.9.0 documentation">Netmaker Docs</a>
title="Netmaker 0.9.4 documentation">Netmaker Docs</a>
</label>
<div class="md-nav__source">
<a href="https://github.com/gravitl/netmaker/" title="Go to repository" class="md-source" data-md-source="github">
@ -210,71 +210,15 @@
<a href="about.html" class="md-nav__link">About</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="about.html#what-is-netmaker" class="md-nav__link">What is Netmaker?</a>
</li>
<li class="md-nav__item">
<a href="about.html#how-does-netmaker-work" class="md-nav__link">How Does Netmaker Work?</a>
</li>
<li class="md-nav__item">
<a href="about.html#use-cases-for-netmaker" class="md-nav__link">Use Cases for Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="architecture.html" class="md-nav__link">Architecture</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="architecture.html#core-concepts" class="md-nav__link">Core Concepts</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#components" class="md-nav__link">Components</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#technical-process" class="md-nav__link">Technical Process</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#compatible-systems-for-netclient" class="md-nav__link">Compatible Systems for Netclient</a>
</li>
<li class="md-nav__item">
<a href="architecture.html#limitations" class="md-nav__link">Limitations</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -287,352 +231,82 @@
<a href="quick-start.html" class="md-nav__link">Quick Install</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prerequisites" class="md-nav__link">0. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#prepare-dns" class="md-nav__link">1. Prepare DNS</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#open-firewall" class="md-nav__link">3. Open Firewall</a>
</li>
<li class="md-nav__item">
<a href="quick-start.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="getting-started.html" class="md-nav__link">Getting Started</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="getting-started.html#setup" class="md-nav__link">Setup</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#deploy-nodes" class="md-nav__link">Deploy Nodes</a>
<a href="external-clients.html" class="md-nav__link">Ingress + External Clients</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#manage-nodes" class="md-nav__link">Manage Nodes</a>
<a href="egress-gateway.html" class="md-nav__link">Egress Gateway</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-the-netclient" class="md-nav__link">Uninstalling the netclient</a>
<a href="relay-server.html" class="md-nav__link">Relay Servers</a>
</li>
<li class="md-nav__item">
<a href="getting-started.html#uninstalling-netmaker" class="md-nav__link">Uninstalling Netmaker</a>
<a href="https://nm-k8s.readthedocs.io" class="md-nav__link">Kubernetes</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html" class="md-nav__link">Install with Nginx (depreciated)</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="quick-start-nginx.html#introduction" class="md-nav__link">0. Introduction</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prerequisites" class="md-nav__link">1. Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-dependencies" class="md-nav__link">2. Install Dependencies</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#prepare-vm" class="md-nav__link">3. Prepare VM</a>
</li>
<li class="md-nav__item">
<a href="quick-start-nginx.html#install-netmaker" class="md-nav__link">4. Install Netmaker</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="server-installation.html" class="md-nav__link">Advanced Server Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="server-installation.html#system-compatibility" class="md-nav__link">System Compatibility</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#server-configuration-reference" class="md-nav__link">Server Configuration Reference</a>
<a href="client-installation.html" class="md-nav__link">Advanced Client Installation</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#dns-mode-setup" class="md-nav__link">DNS Mode Setup</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#docker-compose-install" class="md-nav__link">Docker Compose Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#linux-install-without-docker" class="md-nav__link">Linux Install without Docker</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#kubernetes-install" class="md-nav__link">Kubernetes Install</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#nginx-reverse-proxy-setup-with-https" class="md-nav__link">Nginx Reverse Proxy Setup with https</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-kubernetes" class="md-nav__link">Highly Available Installation (Kubernetes)</a>
</li>
<li class="md-nav__item">
<a href="server-installation.html#highly-available-installation-vms-bare-metal" class="md-nav__link">Highly Available Installation (VMs/Bare Metal)</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="oauth.html" class="md-nav__link">Integrating OAuth</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="oauth.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-your-provider" class="md-nav__link">Configuring your provider</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-netmaker" class="md-nav__link">Configuring Netmaker</a>
</li>
<li class="md-nav__item">
<a href="oauth.html#configuring-user-permissions" class="md-nav__link">Configuring User Permissions</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="client-installation.html" class="md-nav__link">Client Installation</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="client-installation.html#introduction-to-netclient" class="md-nav__link">Introduction to Netclient</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#notes-on-windows" class="md-nav__link">Notes on Windows</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#modes-and-system-compatibility" class="md-nav__link">Modes and System Compatibility</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#prerequisites" class="md-nav__link">Prerequisites</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#configuration" class="md-nav__link">Configuration</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#installation" class="md-nav__link">Installation</a>
</li>
<li class="md-nav__item">
<a href="client-installation.html#managing-netclient" class="md-nav__link">Managing Netclient</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="external-clients.html" class="md-nav__link">External Clients</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="external-clients.html#introduction" class="md-nav__link">Introduction</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-an-ingress-gateway" class="md-nav__link">Configuring an Ingress Gateway</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#adding-clients-to-a-gateway" class="md-nav__link">Adding Clients to a Gateway</a>
</li>
<li class="md-nav__item">
<a href="external-clients.html#configuring-dns-for-ext-clients-optional" class="md-nav__link">Configuring DNS for Ext Clients (OPTIONAL)</a>
</li></ul>
</li>
<li class="md-nav__item">
<input class="md-toggle md-nav__toggle" data-md-toggle="toc" type="checkbox" id="__toc">
<label class="md-nav__link md-nav__link--active" for="__toc"> Using Netmaker </label>
<label class="md-nav__link md-nav__link--active" for="__toc"> External Guides </label>
<a href="#" class="md-nav__link md-nav__link--active">Using Netmaker</a>
<a href="#" class="md-nav__link md-nav__link--active">External Guides</a>
<nav class="md-nav md-nav--secondary">
<label class="md-nav__title" for="__toc">Contents</label>
<ul class="md-nav__list" data-md-scrollfix="">
<li class="md-nav__item"><a href="#usage--page-root" class="md-nav__link">Using Netmaker</a><nav class="md-nav">
<ul class="md-nav__list">
<li class="md-nav__item"><a href="#external-tutorials" class="md-nav__link">External Tutorials</a><nav class="md-nav">
<li class="md-nav__item"><a href="#usage--page-root" class="md-nav__link">External Guides</a><nav class="md-nav">
<ul class="md-nav__list">
<li class="md-nav__item"><a href="#video-tutorials" class="md-nav__link">Video Tutorials</a>
</li>
<li class="md-nav__item"><a href="#written-tutorials" class="md-nav__link">Written Tutorials</a>
</li></ul>
</nav>
</li></ul>
</nav>
</li>
@ -642,158 +316,60 @@
<li class="md-nav__item">
<a href="#external-tutorials" class="md-nav__link">External Tutorials</a>
<a href="#video-tutorials" class="md-nav__link">Video Tutorials</a>
</li>
<li class="md-nav__item">
<a href="#written-tutorials" class="md-nav__link">Written Tutorials</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="ui-reference.html" class="md-nav__link">UI Reference</a>
</li>
<li class="md-nav__item">
<a href="api.html" class="md-nav__link">API Reference</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="api.html#api-usage" class="md-nav__link">API Usage</a>
</li>
<li class="md-nav__item">
<a href="api.html#authentication" class="md-nav__link">Authentication</a>
<a href="upgrades.html" class="md-nav__link">Upgrades</a>
</li>
<li class="md-nav__item">
<a href="api.html#format-of-calls-for-curl" class="md-nav__link">Format of Calls for Curl</a>
</li>
<li class="md-nav__item">
<a href="api.html#api-documentation" class="md-nav__link">API Documentation</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html" class="md-nav__link">Troubleshooting</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="troubleshoot.html#common-issues" class="md-nav__link">Common Issues</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#server" class="md-nav__link">Server</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#ui" class="md-nav__link">UI</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#netclient" class="md-nav__link">Netclient</a>
</li>
<li class="md-nav__item">
<a href="troubleshoot.html#coredns" class="md-nav__link">CoreDNS</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="support.html" class="md-nav__link">Support</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="support.html#faq" class="md-nav__link">FAQ</a>
</li>
<li class="md-nav__item">
<a href="support.html#contact" class="md-nav__link">Contact</a>
</li></ul>
</li>
<li class="md-nav__item">
<a href="conduct.html" class="md-nav__link">Code of Conduct</a>
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="conduct.html#our-pledge" class="md-nav__link">Our Pledge</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-standards" class="md-nav__link">Our Standards</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#our-responsibilities" class="md-nav__link">Our Responsibilities</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#scope" class="md-nav__link">Scope</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#enforcement" class="md-nav__link">Enforcement</a>
</li>
<li class="md-nav__item">
<a href="conduct.html#attribution" class="md-nav__link">Attribution</a>
</li></ul>
</li>
<li class="md-nav__item">
@ -816,15 +392,11 @@
<nav class="md-nav md-nav--secondary">
<label class="md-nav__title" for="__toc">Contents</label>
<ul class="md-nav__list" data-md-scrollfix="">
<li class="md-nav__item"><a href="#usage--page-root" class="md-nav__link">Using Netmaker</a><nav class="md-nav">
<ul class="md-nav__list">
<li class="md-nav__item"><a href="#external-tutorials" class="md-nav__link">External Tutorials</a><nav class="md-nav">
<li class="md-nav__item"><a href="#usage--page-root" class="md-nav__link">External Guides</a><nav class="md-nav">
<ul class="md-nav__list">
<li class="md-nav__item"><a href="#video-tutorials" class="md-nav__link">Video Tutorials</a>
</li>
<li class="md-nav__item"><a href="#written-tutorials" class="md-nav__link">Written Tutorials</a>
</li></ul>
</nav>
</li></ul>
</nav>
</li>
@ -838,13 +410,10 @@
<article class="md-content__inner md-typeset" role="main">
<h1 id="usage--page-root">Using Netmaker<a class="headerlink" href="#usage--page-root" title="Permalink to this headline"></a></h1>
<p>Netmaker has many different use cases, from a basic virtual network to an office gateway VPN to a Kubernetes underlay. It can be a bit overwhelming to figure out where to start. If you dont find your use case here, but think Netmaker is a good fit, let us know!</p>
<h1 id="usage--page-root">External Guides<a class="headerlink" href="#usage--page-root" title="Permalink to this headline"></a></h1>
<p>Netmaker has many use cases, from a basic virtual network to an office gateway VPN to a Kubernetes underlay. It can be a bit overwhelming to figure out where to start. If you dont find your use case here, but think Netmaker is a good fit, let us know!</p>
<h2 id="external-tutorials">External Tutorials<a class="headerlink" href="#external-tutorials" title="Permalink to this headline"></a></h2>
<p>Members of the community have created helpful tutorials for getting started with Netmaker. Below are some selected tutorials on different topics.</p>
<h3 id="video-tutorials">Video Tutorials<a class="headerlink" href="#video-tutorials" title="Permalink to this headline"></a></h3>
<h2 id="video-tutorials">Video Tutorials<a class="headerlink" href="#video-tutorials" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li><p><a class="reference external" href="https://youtu.be/PWLPT320Ybo">Intro/Overview</a>: Tutorial on first-time usage, setting up a mesh network.</p></li>
<li><p><a class="reference external" href="https://youtu.be/krCKBJhwwDk">Site-to-Site Gateway</a>: Tutorial on setting up site-to-site connections, allowing peers to access external networks via gateways.</p></li>
@ -853,7 +422,7 @@
</ul>
<h3 id="written-tutorials">Written Tutorials<a class="headerlink" href="#written-tutorials" title="Permalink to this headline"></a></h3>
<h2 id="written-tutorials">Written Tutorials<a class="headerlink" href="#written-tutorials" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li><p><a class="reference external" href="https://itnext.io/how-to-deploy-a-single-kubernetes-cluster-across-multiple-clouds-using-k3s-and-wireguard-a5ae176a6e81">K3s Cross-cloud cluster</a>: Tutorial on setting up cross-cloud K3s clusters using Netmaker.</p></li>
<li><p><a class="reference external" href="https://itnext.io/how-to-deploy-a-cross-cloud-kubernetes-cluster-with-built-in-disaster-recovery-bbce27fcc9d7">MicroK8s Cross-cloud cluster</a>: Tutorial on setting up cross-cloud MicroK8s clusters using Netmaker.</p></li>
@ -863,7 +432,6 @@
</article>
</div>
</div>
@ -873,7 +441,7 @@
<div class="md-footer-nav">
<nav class="md-footer-nav__inner md-grid">
<a href="external-clients.html" title="External Clients"
<a href="oauth.html" title="Integrating OAuth"
class="md-flex md-footer-nav__link md-footer-nav__link--prev"
rel="prev">
<div class="md-flex__cell md-flex__cell--shrink">
@ -882,17 +450,17 @@
<div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
<span class="md-flex__ellipsis">
<span
class="md-footer-nav__direction"> Previous </span> External Clients </span>
class="md-footer-nav__direction"> Previous </span> Integrating OAuth </span>
</div>
</a>
<a href="api.html" title="API Reference"
<a href="ui-reference.html" title="UI Reference"
class="md-flex md-footer-nav__link md-footer-nav__link--next"
rel="next">
<div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title"><span
class="md-flex__ellipsis"> <span
class="md-footer-nav__direction"> Next </span> API Reference </span>
class="md-footer-nav__direction"> Next </span> UI Reference </span>
</div>
<div class="md-flex__cell md-flex__cell--shrink"><i
class="md-icon md-icon--arrow-forward md-footer-nav__button"></i>

View file

@ -1,6 +1,6 @@
===============
==========
About
===============
==========
What is Netmaker?
==================

View file

@ -107,7 +107,7 @@ The check in process is what allows Netmaker to create dynamic mesh networks. As
Database (sqlite, rqlite, postgres)
-------------------------------------
As of v0.8, Netmaker uses sqlite by default as a database. It can also use PostgreSQL, or rqlite, a distributed (RAFT consensus) databaseand. Netmaker interacts with this database to store and retrieve information about nodes, networks, and users.
As of v0.8, Netmaker uses sqlite by default as a database. It can also use PostgreSQL, or rqlite, a distributed (RAFT consensus) database. Netmaker interacts with this database to store and retrieve information about nodes, networks, and users.
Additional database support (besides sqlite and rqlite) is very easy to implement for special use cases. Netmaker uses simple key value lookups to run the networks, and the database was designed to be extensible, so support for key-value stores and other SQL-based databases can be achieved by changing a single file.

View file

@ -1,6 +1,6 @@
====================
Client Installation
====================
================================
Advanced Client Installation
================================
This document tells you how to install the netclient on machines that will be a part of your Netmaker network, as well as non-compatible systems.

View file

@ -22,7 +22,7 @@ copyright = '2021, Alex Feiszli'
author = 'Alex Feiszli'
# The full version, including alpha/beta/rc tags
release = '0.9.1'
release = '0.9.4'
# -- General configuration ---------------------------------------------------
@ -60,7 +60,7 @@ html_theme_options = {
'color_accent': 'light-blue',
'logo_icon': '&#xe869',
'globaltoc_depth': 2,
'globaltoc_collapse': False,
'globaltoc_collapse': True,
}
html_sidebars = {
@ -70,4 +70,4 @@ html_sidebars = {
# Add any paths that contain custom static files (such as style sheets) here,
# relative to this directory. They are copied after the builtin static files,
# so a file named "default.css" will overwrite the builtin "default.css".
html_static_path = ['_static']
# html_static_path = ['_static']

96
docs/egress-gateway.rst Normal file
View file

@ -0,0 +1,96 @@
=====================================
Egress Gateway
=====================================
Introduction
===============
.. image:: images/egress1.png
:width: 80%
:alt: Gateway
:align: center
Netmaker allows your clients to reach external networks via an Egress Gateway. The Egress Gateway is a netclient which has been deployed to a server or router with access to a given subnet.
In the netmaker UI, that node is set as an "egress gateway." Range(s) are specified which this node has access to. Once created, all clients (and all new ext clients) in the network will be able to reach those ranges via the gateway.
Configuring an Egress Gateway
==================================
Configuring an Egress Gateway is very straight forward. As a prerequisite, you must know what you are trying to access remotely. For instance:
- a VPC
- a Kubernetes network
- a home network
- an office network
- a data center
After you have determined this, you must next deploy a netclient in a compatible location where the network is accessible. For instance, a Linux server or router in the office, or a Kubernetes worker node. This machine should be stable and relatively static (not expected to change its IP frequently or shut down unexpectedly).
Next, you must determine which interface to use in order to reach the internal network. As an example, lets say there is a machine in the network at 10.10.10.2, and you have deployed the netclient on a different machine. You can run
.. code-block::
ip route get 10.10.10.2
This should return the interface used to reach that address (e.x. "eth2")
Finally, once you have determined the interface, the subnet, and deployed your netclient, you can go to your Netmaker UI and set the node as a gateway.
.. image:: images/egress7.png
:width: 80%
:alt: Gateway
:align: center
At this point simply insert the range(s) into the first field, and the interface name into the second field, and click "create".
.. image:: images/ui-6.jpg
:width: 80%
:alt: Gateway
:align: center
Netmaker will set iptables rules on the node, which will then implement these rules, allowing it to route traffic from the network to the specified range(s).
Use Cases
============
1) Remote Access
-------------------
A common scenario would be to combine this with an "Ingress Gateway" to create a simple method for accessing a home or office network. Such a setup would typically have only two nodes: the ingress and egress gateways. The Ingress Gateway should usually be globally accessible, which makes the Netmaker server itself a good candidate. This means you need only the netmaker server as the Ingress, and one additional machine (in the private network you wish to reach), as the Egress.
.. image:: images/egress2.png
:width: 80%
:alt: Gateway
:align: center
In some scenarios, a single node will act as both ingress and egress! For instance, you can enable acess to a VPC using your Netmaker server, deployed with a public IP. Traffic comes in over the public IP (encrypted of course) and then routes to the VPC subnet via the egress gateway.
.. image:: images/egress3.png
:width: 50%
:alt: Gateway
:align: center
2) VPN / NAT Gateway
-----------------------
Most people think of a VPN as a remote server that keeps your internet traffic secure while you browse the web, or as a tool for accessing internet services in another country,using a VPN server based in that country.
These are not typical use cases for Netmaker, but can be easily enabled.
**The most important note is this: Do not use 0.0.0.0/0 as your egress gateway.** This is how you typically set up a "standard" VPN with WireGuard, however, it will not work with Netmaker. The Netclient specifically ignores gateways that overlap with local ranges (for efficiency ranges). 0.0.0.0 overlaps with everything, so it is always ignored.
Instead, use the following list of ranges:
.. code-block::
0.0.0.0/5,8.0.0.0/7,11.0.0.0/8,12.0.0.0/6,16.0.0.0/4,32.0.0.0/3,64.0.0.0/2,128.0.0.0/3,160.0.0.0/5,168.0.0.0/6,172.0.0.0/12,172.32.0.0/11,172.64.0.0/10,172.128.0.0/9,173.0.0.0/8,174.0.0.0/7,176.0.0.0/4,192.0.0.0/9,192.128.0.0/11,192.160.0.0/13,192.169.0.0/16,192.170.0.0/15,192.172.0.0/14,192.176.0.0/12,192.192.0.0/10,193.0.0.0/8,194.0.0.0/7,196.0.0.0/6,200.0.0.0/5,208.0.0.0/4
This list encompasses the standard "public" network ranges, and ignores the standard "private" network ranges.
Simply paste this list into your "egress gateway ranges" and your clients should begin routing public-facing traffic over the gateway.
.. image:: images/egress5.png
:width: 50%
:alt: Gateway
:align: center

View file

@ -1,10 +1,15 @@
================
External Clients
================
=====================================
Ingress + External Clients
=====================================
Introduction
===============
.. image:: images/ingress1.png
:width: 50%
:alt: Gateway
:align: center
Netmaker allows for "external clients" to reach into a network and access services via an Ingress Gateway. So what is an "external client"? An external client is any machine which cannot or should not be meshed. This can include:
- Phones
- Laptops

BIN
docs/images/egress1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 117 KiB

BIN
docs/images/egress2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 116 KiB

BIN
docs/images/egress3.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

BIN
docs/images/egress5.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

BIN
docs/images/egress7.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 102 KiB

BIN
docs/images/ingress1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

BIN
docs/images/relay1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 119 KiB

BIN
docs/images/ui-1.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 88 KiB

BIN
docs/images/ui-10.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

BIN
docs/images/ui-11.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB

BIN
docs/images/ui-2.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 79 KiB

BIN
docs/images/ui-3.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 109 KiB

Some files were not shown because too many files have changed in this diff Show more