Mal eine dumme Frage:
Kann ich mit nur einem /64 IPv6 Adressraum mehrere lokale Netze betreiben, die voneinander abschotten und denen gleichzeitig eine Verbindung ins Internet erlauben?
Beispiel
- pfsense
- zwei Netze
NetzA = "Internet of shit"-Geräte
NetzB = alles andere
- ein /64 ipv6-Adressraum 2a01:4f8:200:710e:0:0:0:0/64
Regeln
- niemand darf Verbindungen aus dem Internet in lokale Netze machen
- alle dürfen Verbindungen ins Internet machen
- NetzB darf Verbindungen nach NetzA machen
Kann ich mit nur einem /64 IPv6 Adressraum mehrere lokale Netze betreiben, die voneinander abschotten und denen gleichzeitig eine Verbindung ins Internet erlauben?
Beispiel
- pfsense
- zwei Netze
NetzA = "Internet of shit"-Geräte
NetzB = alles andere
- ein /64 ipv6-Adressraum 2a01:4f8:200:710e:0:0:0:0/64
Regeln
- niemand darf Verbindungen aus dem Internet in lokale Netze machen
- alle dürfen Verbindungen ins Internet machen
- NetzB darf Verbindungen nach NetzA machen
elrido
Als Antwort auf mk • •Das "Problem" ist, dass kleinere subnetze Netze als /64 eigentlich nicht im Standard vorgesehen sind. Man soll den Endkunden ein /48 routen und diese können dann die nächsten 16 Bit für das Subnetting nutzen (also maximal 65535 Subnetze - in der Regel weniger da hierarchisch gegliedert). Technisch ist es aber kein Problem und IPv6-stacks sowohl von Linux, BSD (inkl. MacOS) und Windows lassen solche Konfigurationen zu. Ich hatte allerdings hin und wieder Probleme, dass gewisse Admin-Skripte oder -Werkzeuge keine Subnetz-Grössen kleiner als /64 akzeptieren, da diese eben nicht Standard-Konform sind - man muss das dann Händisch in den entsprechenden Konfigurations-Dateien eintragen.
Ich selbst nutze diese kleineren Subnetze auf einigen Docker-Hosts um S... mehr anzeigen
Das "Problem" ist, dass kleinere subnetze Netze als /64 eigentlich nicht im Standard vorgesehen sind. Man soll den Endkunden ein /48 routen und diese können dann die nächsten 16 Bit für das Subnetting nutzen (also maximal 65535 Subnetze - in der Regel weniger da hierarchisch gegliedert). Technisch ist es aber kein Problem und IPv6-stacks sowohl von Linux, BSD (inkl. MacOS) und Windows lassen solche Konfigurationen zu. Ich hatte allerdings hin und wieder Probleme, dass gewisse Admin-Skripte oder -Werkzeuge keine Subnetz-Grössen kleiner als /64 akzeptieren, da diese eben nicht Standard-Konform sind - man muss das dann Händisch in den entsprechenden Konfigurations-Dateien eintragen.
Ich selbst nutze diese kleineren Subnetze auf einigen Docker-Hosts um Services direkt aus dem IPv6-Internet zugänglich zu machen. Diese Hosts sind selbst in einem normalen /64 Subnetz angesiedelt und kriegen ein /79 Subnetz daraus geroutet (von einem OPNsense Router), dieses wird von Docker in /80 Netze aufgeteilt, eines als internes standard-IPv6 Zwischennetz, wenn nichts anderes im Container angegeben wird (so wie bei IPv4) und die anderen werden verwendet wenn ich explizit ein IPv6 Subnetz von Docker verlange. Die Services welche extern erreichbar sein sollen werden in ein solches IPv6 Subnetz und (per docker proxy) an die externe IPv4 exposed.
Problem bei dieser Konfiguration: Diese /79 Subnetze können standardmässig nur von aussen erreicht werden - Andere Docker-Hosts im gleichen /64 wollen Pakete an dieses Netz direkt zustellen und leiten diese nicht an den default gateway weiter. Falls nötig muss man somit manuelle gateways für alle diese Netze auf allen Hosts konfigurieren (das habe ich auf meinem monitoring Host gemacht). Eleganter wäre es, wenn ich, wie vom Standard vorgesehen, alle diese Hosts in unabhängige Netze platziere und somit alles automatisch via default gateway abgewickelt werden würde. Das würde allerdings zusätzlichen Traffic für diesen Router bedeuten (und zusätzliche VLANs, Paketfilter-Regeln, etc.), würde dann aber auch die Sicherheit erhöhen, da ich die Zugriffe von einem Host zum anderen feiner Kontrollieren kann.
Die /etc/docker/daemon.json sieht z.B. so aus:
Und die ansible tasks zum Anlegen des Subnetzes und eines nginx containers auf diesem Host sieht so aus:
mk mag das.
mk
Als Antwort auf elrido • • •Ich will einen Punkt haben an dem ich Filterregeln definiere..alles andere ist Augenwischerei und gefährlich.
mk
Als Antwort auf mk • • •NetzA == internet of shit Netzwerk == WindowsNetzwerk
---
Adressraum, der zu mir geroutet wird: 2a01:4f8:200:710e:0:0:0:0 /64
---
1. Adressraum in kleinere Stücke zerhacken und via static-ipv6 an die Interfaces verteilen
WAN: 2a01:4f8:200:710e:0:0:0:254 /112
NetzA: 2a01:4f8:200:710e:0:0:1:254 /112
NetzB: 2a01:4f8:200:710e:0:0:2:254 /112
@cinux
@kranfahrer
mk
Als Antwort auf mk • • •2. DHCPv6 Server auf den lokalen Interfaces aktivieren (nicht auf WAN)
- Adresspool und DNS-Server (pfsense IPv6 Adresse) einstellen
@cinux @kranfahrer
mk
Als Antwort auf mk • • •3. Im DNS Resolver IPv6 Link-Local Verbindungen erlauben
@cinux @kranfahrer
mk
Als Antwort auf mk • • •4. Firewall
NetzA
- Alias mit lokalen Netzen anlegen
- Firewall-Regel: Alle Verbindungen erlauben ausser denen, die als Ziel die Netze im Alias haben ("invert match" gegen den alias)
- Firewall-Regel: lokales Netz darf mit pfsense sprechen (für z.B. DNS)
NetzB
- Firewall-Regel: Verbindungen überallhin erlauben (Destination "any" anstatt "invert match")
@cinux @kranfahrer
elrido
Als Antwort auf mk • •mk mag das.
mk
Als Antwort auf elrido • • •@cinux @kranfahrer
elrido
Als Antwort auf mk • •In meinem Fall habe ich nur Paketfilterregeln zwischen Extern und der DMZ in der alle diese VMs sind, aber nichts was die VMs daran hindert untereinander zu kommunizieren.
Alexander
Als Antwort auf mk • • •Die erste Regel ist bei pfsense sowieso gegeben. Die beiden anderen regeln sind abbildbar.
Die beiden Netze müssen natürlich, wie @tux schon erwähnte, getrennt werden.
mk
Als Antwort auf Alexander • • •@tux
mk
Als Antwort auf mk • • •@buzztee
@tux
@elrido
Alexander
Als Antwort auf mk • • •@buzztee @tux @elrido
mk
Als Antwort auf Alexander • • •Verkäufer: No problema, Amigo.. Hier hast du 1 Auto
Käufer: Ey, aber das hat nur drei Reifen
Verkäufer: Isse keine Probleme, Senior..Hier hassu vierte Reifen..Reifen koste nix, mussu nur bezahle 17,85€ für Montage durch Techniker.
@buzztee @tux @elrido
mk
Als Antwort auf mk • • •Ich kann mich noch daran erinnern, dass Internet-Endkunden /48 Netze bekommen haben...
@buzztee @tux @elrido
elrido mag das.
Alexander
Als Antwort auf mk • • •@buzztee @tux @elrido
Alexander
Als Antwort auf mk • • •Und man hat ja ne Menge Adressen bei einem /64 für eine statische Zuordnung zur Verfügung.
Und wie gesagt brauchst du ein größeres Netz auch nur bei SLAAC, wenn du dhcpv6 einsetzt kannste auch das /64 nutzen.
@buzztee @tux @elrido
mk
Als Antwort auf Alexander • • •Ich habe bei denen einen rootserver auf dem ich zwei komplett abgekapselte Infrastrukturen betreibe.
mariokuschel.info und satoshishop.de haben jeweils eine eigene pfsense, eigene netze und server.
@buzztee @tux @elrido
mk
Als Antwort auf mk • • •Migration einer kompletten IT-Umgebung in weniger als 10min von einem Standort zu einem anderen - kurze Version
https://peertube.satoshishop.de/w/1q5fWCPxQTqvYcoST8w4yc
Migration einer kompletten IT-Umgebung von einem Standort zu einem anderen - lange Version
https://peertube.satoshishop.de/w/7BfVNPvYn5xgY2dC7HMXAX
Sorry für das schlechte Audio. Ich habe im Moment keine Zeit das zu fixen.
@buzztee @tux @elrido
Migration einer kompletten IT-Umgebung in weniger als 10min von einem Standort zu einem anderen - kurze Version
PeerTube - satoshishop.deelrido mag das.
mk
Als Antwort auf mk • • •Das thema mit den "global ipv6 netzen" hat sich für mich eh erledigt,weil ich nicht unnötig viele externe abhängigkeiten in meiner infrastruktur haben will.
ich experimentiere derzeit mit internen Unique Local IPv6 Unicast Addresses und ipv6-NAT.
wenn ich die infrastruktur zu nem anderen hoster migriere, muss ich nur die eine öffentliche ipv6 adresse anfassen.
@buzztee @tux @elrido