Hallo,
wir testen gerade Wireguard und das funktioniert soweit sehr gut.
Leider habe ich aktuell ein Problem.
Der Zugriff über Wireguard auf interne IP-Adressen funktioniert einwandfrei. Wenn wir nun einzelne öffentliche IP-Adressen hinzufügen, werden diese zwar im Routing ordentlich angezeigt, sind aber nicht erreichbar.
Firewall und NAT sind soweit korrekt eingestellt. Beim Outbound-NAT habe ich auch schon alles mögliche ausprobiert.
Traceroute zeigt nur "Zeitüberschreitung der Anforderung"
Hat jemand eine Idee?
Danke für die Unterstützung.
Quote from: RalfOE on July 09, 2025, 07:37:15 PMWenn wir nun einzelne öffentliche IP-Adressen hinzufügen
Bitte mal näher erläutern.
In den Einstellungen des Wireguard-Clients steht:
Erlaubte IPs: 192.168.0.0/24, 123.123.123.123/32
Dann sieht die Routingtabelle wie folgt aus:
Netzwerkziel Netzwerkmaske Gateway Schnittstelle Metrik
...
123.123.123.123 255.255.255.255 Auf Verbindung 172.30.2.1 5
...
192.168.0.0 255.255.255.0 Auf Verbindung 172.30.2.1 5
...
Die Geräte im Netzwerk 192.168.0.0/24 sind erreichbar, die IP-Adresse 123.123.123.123 nicht.
Wie sehen die Firewall-Regeln für das Wireguard-Interface (falls angelegt) oder die Wireguard-Gruppe (falls kein Interface angelegt) aus?
Dann mach mal per SSH:
pfctl -s nat
und schau, ob für das Wireguard-Netz eine ausgehende NAT-Regel auf WAN automatisch angelegt wird. Bin mir da nicht ganz sicher, unter Umständen musst du NAT auf manuell oder hybrid schalten, und das selbst machen.
Bestätigen oder widerlegen ließe sich das NAT-Problem, so es existiert, auch durch:
tcpdump -n -i <wan-interface> icmp
und dann mal gucken, was als Source-Adresse in den Paketen steht, die zum WAN rausgehen während des "ping". Wenn da die private Adresse drin ist, dann kann der Ziel-Server natürlich nicht antworten, dann ist es das fehlende NAT.
Ich kann das hier ohne größeren Umbau nicht testen, da ich NAT immer 100% manuell mache.
Grüße, HTH
Patrick
Hallo Patrick,
danke für Deine Antwort.
NAT Outbound Hybrid hatte ich schon eingestellt, nachdem es nicht funktionierte.
Und dann verschiedene Einstellungen getestet.
pfctl -s nat
no nat proto carp all
nat on igb1 inet from 10.2.120.0/24 to any -> (igb1:0) port 1024:65535
nat on igb1 inet from 10.2.120.0/24 to any port = isakmp -> (igb1:0) static-port
10.2.120.0/24 ist das VPN-Netzwerk
Beim tcpdump kommt folgende Meldung:
21:04:22.683457 IP 192.168.123.29 > 123.123.123.123: ICMP echo request, id 1, seq 1734, length 40
Wobei 192.168.123.29 die IP-Adresse auf dem WAN-Device ist
Ist das ein Router-Behind-Router Szenario, z.B. Fritzbox vor der OpnSense? Sonst wäre ja wohl keine RFC1918 auf dem WAN-Device...
Ja, genau. Da ist ein Kabelrouter vor der Firewall
Na dann. Denk mal darüber nach, warum das nicht klappt. Tipp: RFC1918-IPs werden von den wenigsten ISPs geroutet...
Lesestoff:
https://forum.opnsense.org/index.php?topic=42985.0, speziell Punkt 4.
Ich habe das nie so gemacht (aus Gründen), deswegen kann ich auch keine Schritt-für-Schritt-Anleitung geben, wie das mit geeigneten Firewall- und NAT-Regeln rein und raus sowie erlaubten IP-Ranges im Wireguard-Profil geht. Irgendwie bekommt man das sicher hin, ist aber wahrscheinlich komplex.
Zugegebenermaßen wüsste ich aber auch nicht, ob es reine Kabelmodems gibt...
Ja, klar.
Der Kabel-Router macht ja auch nochmal NAT. Von daher ist das aus meiner Sicht alles korrekt. Irgendwo habe ich noch einen Knoten und das NAT scheint es nicht zu sein.
Also nochmal kurz zusammengefasst.
Die Anfrage geht über das VPN und kommt am WAN-Port der Firewall an, was aus meiner Sicht korrekt ist.
Zugriff von 10.2.120.0/24 auf 192.168.0.0/24 (VPN-LAN) funktioniert
Zugriff von 192.168.0.0/24 auf 123.123.123.123 (LAN-WAN) funktioniert
Zugriff von 10.2.120.0/24 auf 123.123.123.123 VPN-WAN) geht nicht
Der Kabelrouter hat keine Firewall aktiv, nur NAT und bekommt alle drei Anfragen von der 192.168.123.29
Guck dir mit tcpdump die Pakete an ...
Was genau meinst Du?
07:34:25.049713 IP 192.168.123.29 > 123.123.123.123: ICMP echo request, id 1, seq 1979, length 40
0x0000: 4500 003c 14ac 0000 7f01 98cd c0a8 b21d E..<............
0x0010: d9a0 41e1 0800 45a0 0001 07bb 6162 6364 ..A...E.....abcd
0x0020: 6566 6768 696a 6b6c 6d6e 6f70 7172 7374 efghijklmnopqrst
0x0030: 7576 7761 6263 6465 6667 6869 uvwabcdefghi
Zum Beispiel. Auf welchem Interface ist das? WireGuard ausgehend? Und an welcher Stelle wird dann geNATed? Am anderen Ende des WireGuard-Tunnels? Der Server 123.123.123.123 kann ja 192.168.123.29 nicht antworten ...
Das ist auf dem WAN-Interface auf der OPNsense-Firewall. Dieses befindet sich im Netzwerk 192.168.123.0/24 hinter dem Kabelrouter, der wiederum in das Internet nattet.
Die 123.123.123.123 kann natürlich nicht auf die 192.168.123.29 antworten. Allerdings auf die öffentliche IP-Adresse des Kabel-Routers und der wiederum auf die 192.168.123.29.
Hat der Upstream-Router eine statische Route zu 192.168.123.0/24?
Das LAN-Interface des Upstream-Routers hat die IP-Adresse 192.168.123.1 im Netzwerk 192.168.123.0/24
Ah - d.h. die OPNsense NATet ausgehend? Und du siehst keine Reply-Pakete? Das kann ich dir dann auch nicht beantworten. Da müsste man auf dem Zielserver forschen, ob denn die Echo Requests dort ankommen.
Quote from: RalfOE on July 09, 2025, 07:37:15 PMWenn wir nun einzelne öffentliche IP-Adressen hinzufügen
Warum sollte man das machen... Und ein Netzwerkplan würde nicht schaden.
Man mach dass wenn man z.b. einen Server hosted der eine ACL hat und nur bestimmte IP addressen zulässt. Dann routet man via VPN über die Firmen IP Addresse. Damit man nicht jede youtube verbindung über das VPN jagt, nimmt man halt nur einzelne IPs für den Split tunnel. An sich sollte das funktionieren.
Quote from: Monviech (Cedrik) on July 10, 2025, 04:17:28 PMMan mach dass wenn man z.b. einen Server hosted der eine ACL hat und nur bestimmte IP addressen zulässt. Dann routet man via VPN über die Firmen IP Addresse. Damit man nicht jede youtube verbindung über das VPN jagt, nimmt man halt nur einzelne IPs für den Split tunnel. An sich sollte das funktionieren.
Genau so ist das. Danke.
Also,
ich habe jetzt alles, was Wireguard und das NAT und die Berechtigungen dazu angeht abgerissen und neu eingerichtet.
Eigentlich genau wie vorher, nur die Reihenfolge etwas anders.
Jetzt geht es.
?
Danke für die Unterstützung.