networking
This commit is contained in:
parent
cfa2670cd1
commit
ce1c65578a
114
services/doc/networking.md
Normal file
114
services/doc/networking.md
Normal file
@ -0,0 +1,114 @@
|
||||
Hostsharing IP-Networking
|
||||
=========================
|
||||
|
||||
Für die Überarbeitung des Paket-Moduls in HSAdmin sollten die
|
||||
künftigen Anforderungen an die Netzwerkanbindung der Pakete
|
||||
(Stichwort "Paket-IP-Adresse") festgelegt sein.
|
||||
|
||||
Zwei wichtige Anforderungen an die Hostsharing-Infrastruktur
|
||||
für die nahe Zukunft sind:
|
||||
|
||||
* Unterstützung von IPv6
|
||||
* kundenspezifische Netze zwischen mehreren Managed
|
||||
Servern ("Hives")
|
||||
|
||||
Die fehlende IPv6-Anbindung bei Hostsharing ist fast schon ein
|
||||
Anachronismus. Die kundenspezifischen Netze werden zur Zeit
|
||||
aufwändig manuell konfiguriert.
|
||||
|
||||
Public Network
|
||||
--------------
|
||||
|
||||
Unter dem "public network" verstehen wir die Anbindung der
|
||||
Server ans das öffentliche Internet.
|
||||
|
||||
### Status Quo
|
||||
|
||||
Zur Zeit hat jeder Hive eine zentrale IPv4-Adresse, die für
|
||||
Verbindungen ins Internet genutzt wird. Über diese Adresse
|
||||
ist die Default-Route konfiguriert.
|
||||
|
||||
Für eingehende Verbindungen ist für jedes Paket eine
|
||||
eigene IPv4-Adresse konfiguriert. Anfangs wurde die eigene
|
||||
Adresse nur für Pakete mit den Paket-Optionen "HTTPS" oder
|
||||
"Anonymes FTP" vergeben. Seit einigen Jahren sind diese
|
||||
Optionen (und damit die eigene IPv4-Adresse) inklusive
|
||||
für alle Pakete.
|
||||
|
||||
Anonymes FTP wir heute kaum noch verwendet. Und mit der
|
||||
breiten Unterstützung für SNI in allen HTTP-Browsern ist
|
||||
die eigene IP-Adresse für HTTPS nicht mehr erforderlich.
|
||||
|
||||
Hostsharing nutzt die eigene IP-Adresse seitdem auch für
|
||||
die Traffic-Abrechnung auf Paket-Ebene. Vor der Vergabe der
|
||||
IP-Adressen pro Paket wurde lediglich HTTP-Traffic aus den
|
||||
Apache-Log-Dateien ermittelt.
|
||||
|
||||
Alle IPv4 Adressen stammen aus drei nicht zusammenhängenden
|
||||
/24-Netzen. Aus historischen Gründen sind die Adressen
|
||||
willkürlich über die gesamte Hostsharing-Infrastruktur am
|
||||
Standort Berlin verteilt.
|
||||
|
||||
### Planung für die Zukunft
|
||||
|
||||
Jeder Hive soll nur genau je eine externe IPv4- und IPv6-Adresse
|
||||
erhalten. Die IPv4-Adressen einer Server-Gruppe werden aus
|
||||
einem /24-Netz entnommen, das der Server-Gruppe fest zugeordnet
|
||||
ist. Für IPv6 wird ein /64-Netz pro Server-Gruppe zugeordnet.
|
||||
|
||||
Dieses Vorgehen macht die Konfiguration einfach und stellt
|
||||
keine großen Anforderungen an die Leistungsfähigkeit der
|
||||
Router-Infrastruktur.
|
||||
|
||||
Wir sehen die Vorteile:
|
||||
|
||||
* Einfachheit
|
||||
* Eigenes Netz pro Host-Gruppe (Routing)
|
||||
* Wenige belegte IP-Adressen bei IPv6
|
||||
|
||||
Nachteile können sein:
|
||||
|
||||
* bei Virtualisierung innerhalb von Hives, die als Root-Server
|
||||
vermietet werden (z.B. LXC, Docker) gibt es keine
|
||||
gerouteten IP-Adressen für die virtuellen Instanzen. Die
|
||||
Services müssen über IP-Tables-regeln erreichbar gemacht
|
||||
werden, wie es zum Beispiel von Docker unterstützt wird.
|
||||
* Das Traffic-Accounting pro Paket muss wieder auf weniger
|
||||
zuverlässige Lösungen (wie zum Beispiel Log-File-Auswertungen)
|
||||
umgestellt werden.
|
||||
* Keine Vergabe von IPv6-Adressen pro Domain, obwohl es
|
||||
natürlich genügend Adressen gäbe
|
||||
|
||||
Private Network
|
||||
---------------
|
||||
|
||||
Die Server einer Server-Gruppe sind jeweils über ein internes
|
||||
physikalisches Netzwerk ohne weitere Anbindung an aussen
|
||||
miteinander verbunden. Auf diesem Netz werden kundenspezifische
|
||||
Netze als virtuelle Netze ("tagged VLANs") realisiert.
|
||||
|
||||
Die Konfiguration dieser Netze erfolgt heute manuell und
|
||||
soll künftig in HSAdmin definiert und per Configuration
|
||||
Management ("Saltstack") angewendet werden.
|
||||
|
||||
Jeder Kunde (jedes Mitglied) kann mehrere private Netze definieren
|
||||
und jeweils seine Managed Server an diese Netze anbinden.
|
||||
|
||||
Services und Port-Vergabe
|
||||
-------------------------
|
||||
|
||||
Alle von Hostsharing verantworteten Services der Managed Server
|
||||
werden ausschließlich auf ihren jeweiligen Standard-Port am
|
||||
Loopback-Device gebunden. Der Kunde konfiguriert in HSAdmin
|
||||
IP-Tables-Regeln, die die Weiterleitung von IP-Paketen
|
||||
vom Public- oder einem Private-Interface an den Service steuern.
|
||||
|
||||
Kunden VPNs
|
||||
-----------
|
||||
|
||||
Zu einem späteren Zeitpunkt können Kunden-VPN als Erweiterung
|
||||
der abgeschlossenen VLANs angeboten werden. Ein VPN mit Verbindung
|
||||
ins Internet würde auch managed Server ohne externe geroutete
|
||||
IP-Adressen erlauben. Eine "Einwahl" ins VPN für den Kunden
|
||||
ermöglich den administrativen Zugang zu Servern ohne Public
|
||||
Network.
|
Loading…
Reference in New Issue
Block a user