Kürzlich bin ich (erneut?!) in einem interessanten Video von Bram Vogelaar
über Nebula gestolpert. Bevor ich es nochmal tue, habe ich es lieber gleich ausprobiert.
Nebula ist "A scalable overlay networking tool with a focus on performance, simplicity and security". Selbst der "Marktbegleiter" Tailscale hat eine "Vergleichsseite" für Nebula.
Mit dem Quickstart ist man schnell dabei, Hosts in ein Overlay-Netzwerk einzubinden.
Dabei startet man mit der Bereitstellung eines sogenannten "Lighthouse" Servers, den VMs, die am Overlay-Netzerk teilnehmen wollen, verwenden, um sich zu finden. Die Installation ist simpel - aus dem Netz muß der Lighthouse Server per UDP auf Port 4242 erreichbar sein.
Hosts, die am Overlay-Netzwerk teilnehmen wollen, bekommen in ihrem Zertifikat eine IP-Adresse zugewiesen. In ihrer Konfiguration ist ansonsten i. W. der Lighthouse Server eingetragen.
Ist der Nebula-Prozess gestartet worden, wird ein Netzwerkinteface angelegt, mit dem der Host im Overlay-Netzwerk erreichbar ist:
root@nomad-client-0:~# ifconfig nebula1
nebula1: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST> mtu 1300
inet 10.21.20.11 netmask 255.255.255.0 destination 10.21.20.11
inet6 fe80::6b5:42e3:f1e3:def3 prefixlen 64 scopeid 0x20<link>
unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 txqueuelen 500 (UNSPEC)
RX packets 11 bytes 924 (924.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 19 bytes 1308 (1.2 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Ping geht danach sofort. Ein Test mit iperf3 zeigt jetzt aber keine atemberaubende Performance (ca. 1 Gbit/s). Möglicherweise gibt es aber auch noch Tuningmöglichkeiten. Ah - ich glaube hier ist "Quality of Service" am Werk.