PfSense als VM unter Proxmox - IPv6 Routing funktioniert nicht
Hallo!
Ich möchte auf meinem vorhandenen Proxmox-Server pfSense als Firewall für alle anderen VM einsetzen. pfSense nutze ich schon auf mehreren Hardware-Appliances.
Proxmox wird im "routed" Modus betrieben.
Vom Hoster habe ich im IPv4 Bereich neben der Host-IP mehrere Einzel-IPs und zwei /29 Netze. Der Zugriff der pfSense VM und der übrigen VM über die pfSense mit IPv4 (NAT) funktioniert problemlos.
Für IPv6 habe ich mir neben dem Standard /64 Netz ein weiteres /56 Netz geholt, nachdem meine Recherchen zum Routing von IPv6 bei nur einem /64 Netz auf Probleme hingewiesen haben.
Für den Proxmox Host und das pfSense Wan-Interface nutze ich ein /64 (2a01:4f8:aaa:bb01::1 bzw ::3) aus dem /56 (2a01:4f8:aaa:bb00::/56) auf einer Proxmox Host Bridge, auf der Proxmox-Seite ist dieser Bridge das gesamte /56er Netz zugewiesen (das anderweitig nicht verwendet wird). Das Netz ist statisch mit der ::3 auf der pfSense Wan-Seite eingerichtet.
Für die Lan-Seite der pfSense nutze ich auf einer anderen Proxmox-Bridge ein weiteres /64 (2a01:4f8:aaa:bb02::/64). Das Netz ist statisch auf der pfSense Lan Seite eingerichtet.
Ein Ping innerhalb des v6 Lan (2a01:4f8:aaa:bb02::/64) funktioniert.
Ein Ping/Zugriff von der WAN-Seite der pfSense (Source/Dest 2a01:4f8:aaa:bb01::3) ins Internet und umgekehrt funktioniert ebenfalls.
Ein Traceroute von einer VM hinter der pfSense kommt bis zur pfSense (Lan-Seite), aber nicht weiter.
Aber es gelingt mir nicht, dass IPv6 Pakete aus dem pfSense Lan zum Host geroutet werden.
Auf der pfSense Firewall sind derzeit globale Pass-Rules für beide Interfaces.
Auch das Routing sieht korrekt aus:
default 2a01:4f8:aaa:bb01::1 UGS 539 1500 vtnet3
::1 link#7 UH 0 16384 lo0
2a01:4f8:aaa:bb01::/64 link#4 U 28340 1500 vtnet3
2a01:4f8:aaa:bb01::3 link#4 UHS 0 16384 lo0
2a01:4f8:aaa:bb02::/64 link#5 U 5 1500 vtnet4
2a01:4f8:aaa:bb02::104 link#5 UHS 6 16384 lo0
Ich weiss nicht, warum Pakete bspw. für google.de (2a00:1450:4001:811::2003) von einer VM an der pfSense hängen bleiben und nicht gemäß default Regel zum Proxmox Host und von dort weiter zum Hoster geroutet werden.
Routing des Proxmox Hosts, vmbr2 ist vtnet3, auf der vtnet4 hat der Proxmox Host keine Adresse.
::1/128 :: U 256 2 0 lo
2a01:4f8:aab:xxxx::2/128 :: U 256 1 0 enp7s0
2a01:4f8:aab:xxxx::/64 :: U 256 26 0 vmbr1
2a01:4f8:aaa:bb00::/56 :: U 256 25 0 vmbr2
::/0 fe80::1 UGH 1024 25 0 enp7s0
::1/128 :: Un 0 27 0 lo
2a01:4f8:aaa:bb00::/128 :: Un 0 3 0 vmbr2
2a01:4f8:aaa:bb01::1/128 :: Un 0 27 0 vmbr2
Was habe ich übersehen?
Ich möchte auf meinem vorhandenen Proxmox-Server pfSense als Firewall für alle anderen VM einsetzen. pfSense nutze ich schon auf mehreren Hardware-Appliances.
Proxmox wird im "routed" Modus betrieben.
Vom Hoster habe ich im IPv4 Bereich neben der Host-IP mehrere Einzel-IPs und zwei /29 Netze. Der Zugriff der pfSense VM und der übrigen VM über die pfSense mit IPv4 (NAT) funktioniert problemlos.
Für IPv6 habe ich mir neben dem Standard /64 Netz ein weiteres /56 Netz geholt, nachdem meine Recherchen zum Routing von IPv6 bei nur einem /64 Netz auf Probleme hingewiesen haben.
Für den Proxmox Host und das pfSense Wan-Interface nutze ich ein /64 (2a01:4f8:aaa:bb01::1 bzw ::3) aus dem /56 (2a01:4f8:aaa:bb00::/56) auf einer Proxmox Host Bridge, auf der Proxmox-Seite ist dieser Bridge das gesamte /56er Netz zugewiesen (das anderweitig nicht verwendet wird). Das Netz ist statisch mit der ::3 auf der pfSense Wan-Seite eingerichtet.
Für die Lan-Seite der pfSense nutze ich auf einer anderen Proxmox-Bridge ein weiteres /64 (2a01:4f8:aaa:bb02::/64). Das Netz ist statisch auf der pfSense Lan Seite eingerichtet.
Ein Ping innerhalb des v6 Lan (2a01:4f8:aaa:bb02::/64) funktioniert.
Ein Ping/Zugriff von der WAN-Seite der pfSense (Source/Dest 2a01:4f8:aaa:bb01::3) ins Internet und umgekehrt funktioniert ebenfalls.
Ein Traceroute von einer VM hinter der pfSense kommt bis zur pfSense (Lan-Seite), aber nicht weiter.
Aber es gelingt mir nicht, dass IPv6 Pakete aus dem pfSense Lan zum Host geroutet werden.
Auf der pfSense Firewall sind derzeit globale Pass-Rules für beide Interfaces.
Auch das Routing sieht korrekt aus:
default 2a01:4f8:aaa:bb01::1 UGS 539 1500 vtnet3
::1 link#7 UH 0 16384 lo0
2a01:4f8:aaa:bb01::/64 link#4 U 28340 1500 vtnet3
2a01:4f8:aaa:bb01::3 link#4 UHS 0 16384 lo0
2a01:4f8:aaa:bb02::/64 link#5 U 5 1500 vtnet4
2a01:4f8:aaa:bb02::104 link#5 UHS 6 16384 lo0
Ich weiss nicht, warum Pakete bspw. für google.de (2a00:1450:4001:811::2003) von einer VM an der pfSense hängen bleiben und nicht gemäß default Regel zum Proxmox Host und von dort weiter zum Hoster geroutet werden.
Routing des Proxmox Hosts, vmbr2 ist vtnet3, auf der vtnet4 hat der Proxmox Host keine Adresse.
::1/128 :: U 256 2 0 lo
2a01:4f8:aab:xxxx::2/128 :: U 256 1 0 enp7s0
2a01:4f8:aab:xxxx::/64 :: U 256 26 0 vmbr1
2a01:4f8:aaa:bb00::/56 :: U 256 25 0 vmbr2
::/0 fe80::1 UGH 1024 25 0 enp7s0
::1/128 :: Un 0 27 0 lo
2a01:4f8:aaa:bb00::/128 :: Un 0 3 0 vmbr2
2a01:4f8:aaa:bb01::1/128 :: Un 0 27 0 vmbr2
Was habe ich übersehen?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 2573741832
Url: https://administrator.de/forum/pfsense-als-vm-unter-proxmox-ipv6-routing-funktioniert-nicht-2573741832.html
Ausgedruckt am: 12.05.2025 um 12:05 Uhr
9 Kommentare
Neuester Kommentar
Deine v6 Default Route stimmt nicht. Wenn das WAN IP Netz 2a01:4f8:aaa:bb01::/64 ist und die die WAN IP der FW die 2a01:4f8:aaa:bb01::1 kann der next Hop der Default Route ja niemals auf sich selber zeigen.
Vom Hoster musst du ja eine öffentliche IP seines Routers bekommen haben wo die Default Route hinzeigen muss.
Das müsstest du auch sehr einfach verifizieren können über das Ping Tool der Firewall (Im Menü Diagnostics)
Von dort solltest du einmal einen v6 Ping auf z.B. www.heise.de machen aber die Absender IP (Source) auf das LAN Interface setzen !
Das gleiche auch mal mit einem v6 Traceroute.
Wenn der Proxmox Host als davor kaskadierter Router liegt, dann routet der Provider ja dein gesamtes /56er Netz auf das Interface was dein Proxmox Host Richtung Hoster liegen hat. Hier stimmt dann die Maske deines Koppelnetzes zur FW nicht.
Der Proxmox selber muss dann alle v6 Netze die im LAN Bereich der Firewall liegen auf das WAN Interface der Firewall routen.
Hilfreich wäre auch einmal ein ip -6 r vom Proxmox.
Vom Hoster musst du ja eine öffentliche IP seines Routers bekommen haben wo die Default Route hinzeigen muss.
Das müsstest du auch sehr einfach verifizieren können über das Ping Tool der Firewall (Im Menü Diagnostics)
Von dort solltest du einmal einen v6 Ping auf z.B. www.heise.de machen aber die Absender IP (Source) auf das LAN Interface setzen !
Das gleiche auch mal mit einem v6 Traceroute.
Wenn der Proxmox Host als davor kaskadierter Router liegt, dann routet der Provider ja dein gesamtes /56er Netz auf das Interface was dein Proxmox Host Richtung Hoster liegen hat. Hier stimmt dann die Maske deines Koppelnetzes zur FW nicht.
Der Proxmox selber muss dann alle v6 Netze die im LAN Bereich der Firewall liegen auf das WAN Interface der Firewall routen.
Hilfreich wäre auch einmal ein ip -6 r vom Proxmox.
So sähe ein korrektes Routing aus Layer 3 Sicht aus mit diesen beiden Netzen.
Routing Masken können ggf. variieren (Summarization) wenn du mehrere Netze auf der Firewall LAN Seite betreiben würdest. Dann würde man die v6 Netze auch ggf. anders aufteilen.
Es gleicht einem IPv4 Beispiel kaskadierter Router.
Routing Masken können ggf. variieren (Summarization) wenn du mehrere Netze auf der Firewall LAN Seite betreiben würdest. Dann würde man die v6 Netze auch ggf. anders aufteilen.
Es gleicht einem IPv4 Beispiel kaskadierter Router.
Wie schon vermutet... Die Subnetzmaske auf vmbr2/vtnet3 ist falsch ! So kann der Proxmox Host als Router ja niemals erkennen das das :bb02:: /64er Subnetz ein Subnetz ist. Für ihn ist das dann eine einfache Host Endgeräteadresse aus seinem lokalen /56er Netz. Da nützt dann auch eine Route nix. Erklärt auch warum das Pingen im /56er Teil fehlerlos klappt.
Solche simplen IP Routing/Subnetting Banalitäten solltest du aber als Profi schon kennen !!
Solche simplen IP Routing/Subnetting Banalitäten solltest du aber als Profi schon kennen !!
hinzugefügt... und es geht.
Wie erwartet ! 👏 👍Ich habe bisher mit IPv6 nicht wirklich viel gemacht
Das muss man auch nicht, denn das Routing Verhalten ist ja komplett identisch zum guten alten IPv4 nur das die Adressen eben rein kosmetisch etwas anders aussehen ! 😉Wenn du obigen Fehler bei IPv4 gemacht hättest wäre das gleiche dabei rausgekommen.
Insoweit bin ich bei IPv6 sicherlich kein Profi.
Wer v4 Profi ist, der ist gleichzeitig auch immer v6 Profi. Denn ob die Adressen grün oder blau sind spielt ja dabei keine Rolle.Eine empfehlenswerte und kostenlose Kurzlektüre zum Thema IPv6 findest du hier:
https://danrl.com/ipv6/
Damit sollten dann solche Fauxpas' nicht mehr passieren ! 😉