Statisches/public IPv6 an interne Server weiterreichen



  • Hallo Gemeinde,

    ich versuche verzweifelt das IPv6 in Gang zu bekommen.
    Das IPv4 läuft wie es soll. Aber mit dem v6 habe ich aktuell nur Probleme.
    Wie muss ich pfsense konfigurieren, dass ich das öffentlich anliegende IPv6 Subnet an meine internen DMZ's und Lan-Segment weiterreichen kann?

    Auch soll es mir noch möglich seien die Portfreigaben wie beim IPv4 anzuwenden (nur die Kommunikation von außen zur DMZ die ich gestatte und nach außen ebenfalls)

    Aufgrund weitergehender Erweiterung könnte es zu weiteren Servern in getrennten DMZ's kommen, die ebenfalls ein /112 IPv6 Subnet erhalten sollen.

    Vielen Dank schonmal

       WAN / Internet
            :
            : public IPv4 Address
            : public IPv6 /64 Subnet
            : 
      .-----+-----.
      |  pfsense  | 
      '-+---+---+-'
        |   |   |
        |   |   | DMZ_01
        |   |   | IPv4 10.0.0.0/252
        |   |   | IPv6 /112 Subnet vom public IPv6
        |   |   |                   .----------.
        |   |   '------------------| Server01 |
        |   |                      '----------'
        |   |
        |   | DMZ_02
        |   | IPv4 10.0.0.4/252
        |   | IPv6 /112 Subnet vom public IPv6
        |   |                      .----------.
        |   '----------------------| Server02 |
        |                          '----------'
        |
        | LAN
        | IPv4 192.160.12.0/24
        | IPv6 /112 Subnet vom public IPv6
        |                          .----------.
        '--------------------------| Clients  |
                                   '----------'
    
    

  • LAYER 8 Moderator

    Das was du tun willst, ist ein ganz konkretes "NO" für IPv6 Deployment. Netze sollen - und das ist die Vorgabe - immer mit Mindestgröße /64 vergeben werden. Kleinere (/112) sind außer in Spezialfällen nicht vorgesehen. Das hat da nichts mit pfSense zu tun, sondern mit IPv6 an sich. Einige Mechanismen von v6 sind darauf ausgelegt, dass man mind. ein /64 Netz anliegen hat wie z.B. SLAAC o.ä.

    Im Normalfall solltest du von deinem Provider o.ä. deshalb auch mind. ein /60 wenn nicht gar ein /56 oder /48er Netz bekommen (haben), damit genau solche Situationen eben nicht vorkommen.

    Ansonsten ist der Satz

    Auch soll es mir noch möglich seien die Portfreigaben wie beim IPv4 anzuwenden (nur die Kommunikation von außen zur DMZ die ich gestatte und nach außen ebenfalls)

    gerade etwas schwierig zu verstehen. IPv6 wird ja lediglich noch geroutet, nicht mehr genattet. Ansonsten sind die Filter aber adäquat gleich anzuwenden.

    Gruß



  • Habe ich trotzdem irgendwie die Möglichkeit die Auftrennung auf die einzelnen DMZ-Bereiche vorzunehmen?
    Wenn ja, Wie?


  • LAYER 8 Moderator

    Ist das ein statisches /64 das sich definitiv nicht ändert?
    Werden alle (!) Geräte in den einzelnen Segmenten selbst statisch konfiguriert und benötigen keine automatischen IPs?

    Wenn eines davon nicht zutrifft, dürfte das nicht so wirklich sauber machbar sein.



  • Ich habe mittlerweile die Ursache meiner ganzen Fehlversuche gefunden.

    Da ist wohl ein Beschreibungsfehler in den Einstellungen von pfsense:

    IPv6 Options
    Allow IPv6  [Checkbox]  All IPv6 traffic will be blocked by the firewall unless this box is checked
    NOTE: This does not disable any IPv6 features on the firewall, it only blocks traffic.

    Nachdem ich die Checkbox wieder aktivierte (wobei das unless nach meinem empfinden hier etwas falsch am Platze ist) ging IPv6
    Hatte die immer deaktiviert da ich von der Beschreibung dahinter ausgegangen war.
    Jetzt geht es mit meinen gewünschten Einstellungen.

    Der pfsense hat am WAN nur eine aus dem /64er-Pool mit /128 zugewiesen bekommen. Die anderen DMZ's sind wie gewünscht mit /112 unterwegs und können ins WAN wie auch umgekehrt. Hier muss ich nur noch mit der Firewall nachregulieren.
    Die IPv6 werden in den DMZ von Hand in die VM's festgeschrieben, daher sehe ich hier kein Problem.
    In der Sache LAN-Segment muss ich mir noch überlegen wie ich das jetzt löse.
    Trotzdem Danke.

    edit:
    ganz nebenbei, der Server ist ein angemieteter bei Hetzner. Auf Nachfrage zum zusätzlichen erhalt eines größeren Subnetzes kam nur eine Rückantwort dass ein /56er für einmalig ca 50€ zubuchbar ist.


  • LAYER 8 Moderator

    ganz nebenbei, der Server ist ein angemieteter bei Hetzner. Auf Nachfrage zum zusätzlichen erhalt eines größeren Subnetzes kam nur eine Rückantwort dass ein /56er für einmalig ca 50€ zubuchbar ist.

    Genau. Ist zwar ein wenig Geldschneiderei von Hetzner (muss man so böse sagen, denn bei der RIPE wirst du auf Anfrage mit IPv6 wirklich zugeworfen!) aber hey. Ich würde an deiner Stelle - wenn du wirklich committed bist ordentliches v6 auszurollen - den Schritt machen und mir ein großes /56er zulegen und mir das auf WAN routen lassen. Dann kannst du extern dein WAN v6 konfigurieren wie es Hetzner möchte und intern an jeder Stelle ein ordentliches /64er Netz ausrollen. Das hat zudem den Vorteil, dass du auch Dinge wie v4TOv6 Mappings machen könntest (auch wenn ich da subjektiv nicht soo viel von halte) oder eben Sachen wie SLAAC aktivieren. Außerdem kann man die Organisation für v6 dann pro VM so erstellen, dass du im zweiten 64-bittigen Part deine Einteilung nach

    2001:db8:7e57:1:xxxx:yyyy:zzzz:aaaa  -  (2001:db8:7e57:0::/56 dein Adressbereich und 2001:db8:7e57:1::/64 dein Netz auf einem Interface mit Servern)
    x = Service
    y = 0
    z = 0
    a = Server

    konfigurieren könntest. Oder Alternativ auch x/a vertauscht. Beispiel: du hast 2 DNS, 2 NTP, 2 Webserver…

    2001:db8:7e57:1:1::1 - DNS1
    2001:db8:7e57:1:1::2 - DNS2
    2001:db8:7e57:1:2::1 - NTP1
    2001:db8:7e57:1:2::2 - NTP2
    2001:db8:7e57:1:3::1 - Web1
    2001:db8:7e57:1:3::2 - Web2
    ...
    usw.

    Somit hast du auch zu Doku/Einfachheitszwecken halbwegs sprechende IPv6 Adressen. Das kann man dann - wenn man dual homed Services baut - auch mit internen v4 Adressen abbilden (bspw. 10.1.1.1, 10.1.1.2, 10.1.2.1, 10.1.2.2, 10.1.3.1, ... - wobei 10.1/16 dann der IP Range auf dem Interface ist und die 1 passend zum IPv6 Range gewählt ist).

    Nur als Kickstart für eigene Ideen.



  • Ich muss nochmals einen Nachtrag machen. Leider ging das IPv6 einige Stunden nach dem endlich funktionieren nicht mehr.
    pfSense fand auf einmal den IPv6 Gateway nicht mehr. Ich habe noch einen anderen Root bei Hetzner, aber da gibt es das Problem mit dem IPv6 nicht. Da liegt es direkt und ohne das Routing über eine andere Adresse an.

    Nach einigem Einlesen in die Hetzner IPv6 problematiken dachte ich mir, nimmst die IPv6 Link Local und setz die auf die WAN Schnittstelle (DHCPv6 geht aus irgendeinem Grund nicht an der WAN, auch mit verschiedenen Einstellungen).

    Die Lösung war, dass ich in pfSense die IPv6 link local Adresse an der WAN Schnittstelle fest angegeben habe mit entsprechendem Hetzner Gateway.

    An den internen Schnittstellen ist das zugeteilte /64er netz in kleinere Stücke aufgeteilt und zugewiesen.
    Die IPv6 Firewall-Regeln in den internen und WAN Schnittstellen hinzugefügt und es läuft nun endlich hinein und heraus.
    Einzig für den ESXi fordere ich jetzt noch eine weitere IPv4 an zwecks Zugriff ohne umweg über die RouterVM

    Für ein weiteres IPv6 Netz sehe ich für mich keinen Bedarf. Dies bringt mir bei Hetzner nichts wenn ich dem ESXi eine eigene IPv6 geben sollte da alles zur Link Local geroutet wird und der ESXi daher nicht abbekommen kann außer nach der routerVM.


  • LAYER 8 Moderator

    Für ein weiteres IPv6 Netz sehe ich für mich keinen Bedarf. Dies bringt mir bei Hetzner nichts wenn ich dem ESXi eine eigene IPv6 geben sollte da alles zur Link Local geroutet wird und der ESXi daher nicht abbekommen kann außer nach der routerVM.

    Es geht an der Stelle nicht um den ESXi, sondern um ordentliches IPv6 Deployment. Wie gesagt es wird in jedem RFC und jeder Beschreibung stark davon abgeraten, irgendwas kleineres als /64 in Netzen zu verarbeiten. Das kann man ignorieren, muss sich dann aber damit rumschlagen, dass gewisse Dinge einfach nicht sauber funktionieren werden. Und gerade da v6 Adressen jetzt keine Mangelware sind, sollte man für ein valides und gültiges v6 Deployment über verschiedene Netze gar nicht erst mit herumstückeln und schneiden anfangen.

    Natürlich gibt Hetzner default für einen Server erstmal ein /64, weil dort nicht von Virtualisierung per se ausgegangen wird. Und für eine Kiste wäre das Netz auch absolut genug. Wer aber mit mehreren Netzen, Virtualisierung und Routing anfängt, sollte auch bei v6 ordentlich und sauber arbeiten.

    Hatten wir auch in diversen v6 Workshops schon die Diskussion. Quintessenz: "Das kannste schon so machen, aber dann isses halt kacke." :D


Log in to reply