Fehlerhaftes Routing bei IPsec mit BiNAT

Started by ctshl, May 30, 2018, 09:22:36 AM

Previous topic - Next topic
Hallo,

meine Konfiguration sieht so aus:

Firewall A:
- LAN: 10.44.44.0/24
- WAN: 83.xx.xy.98, 83.xx.xy.99, 83.xx.xy.100, 83.xx.xy.101, 83.xx.xy.102
- GW: 83.xx.xy.97

1 IPsec Tunnel mit 2 Phase 2 Einträgen

Phase 1: IKEv1, WAN, Remote-GW: 151.aa.ab.226
Phase 2_1: Local 83.xx.xy.102/32, Remote 151.aa.ac.16/32, manueller SPD: 10.44.44.129/32
Phase 2_2: Local 83.xx.xy.102/32, Remote 151.aa.ac.32/32, manueller SPD: 10.44.44.129/32

2 One-to-One NAT Einträge vom Typ BiNAT:
Interface: IPsec, External-IP: 83.xx.xy.102/32, Internal-IP: 10.44.44.129/32, Destination-IP: 151.aa.ac.16/32
Interface: IPsec, External-IP: 83.xx.xy.102/32, Internal-IP: 10.44.44.129/32, Destination-IP: 151.aa.ac.32/32

Es werden beide IPsec-Tunnel problemlos aufgebaut und auf beiden Tunneln ist im Status eingehender Verkehr zu sehen.

Der ausgehende Verkehr wird IMMER nur in einen aufgebauten Tunnel geroutet.

Wie kann ich dieses Problem lösen?


Und was soll das Konstrukt eigentlich erreichen? Das wird aus deinen Regeln nicht ganz klar. Was sollen die 1:1 NAT Einträge denn bewirken und wozu?
"It doesn't work!" is no valid error description! - Don't forget to [applaud] those offering time & brainpower to help you!
Better have some *sense as no(n)sense! ;)

If you're interested in german-speaking business support, feel free to reach out via PM.

Die Gegenseite akzeptiert nur öffentliche IPs innerhalb des VPNs, entsprechend wird die Private-IP 10.44.44.129 auf eine öffentliche gemappt.

So wie ich das sehe bist du von https://github.com/opnsense/core/issues/2173 betroffen.
Du kannst mit spdadd die SPD-Einträge manuell erstellen und anstatt require unique:<id> angeben, damit die Pakete durch den richtigen Tunnel geroutet werden.

Hallo ruffy91

vielen Dank für den Hinweis.

Das Routing funktioniert nach dem manuellen Anlegen der SPD-Einträge.

Allerdings ändert sich die unique:id wenn man in der Benutzeroberfäche Änderungen an den VPN-Einstellungen vornimmt, bei mir zumindest wird eine id geändert, die andere bleibt.

Das BiNAT scheint auch nicht korrekt zu funktionieren:
- eingehende Verbindungden werden korrekt umgesetzt
- bei ausgehenden Verbindugen wird die  BiNAT-Regel nicht angewendet und die ursprüngliche IP (10.44.44.129) kommt auf der Gegenseite an

>- bei ausgehenden Verbindugen wird die  BiNAT-Regel nicht angewendet und die ursprüngliche IP (10.44.44.129) kommt auf der Gegenseite an

Fehlt da ein Setting?

https://docs.opnsense.org/manual/how-tos/ipsec-s2s-binat.html


Grüsse
Franco

Ich habe die BiNAT-Regel gemäss der verlinkten Dokumentation eingerichtet, nur dass es sich bei mir jeweils um Hosts (/32) handelt.

Von der Gegenseite habe eine Fehlermeldung erhalten, dass meine ICMP Pings mit der Adresse 10.44.44.129 dort ankommen würden.

In einem Paket Capture erscheint bei einer eingehenden Verbindung folgende Kommunikation:
151.aa.ac.32.53421 > 83.xx.xy.102.Port
10.44.44.129.Port > 151.aa.ac.32.53421
.....
So können die ausgehenden Pakete aber nicht über Leitung gehen.
Der NAT findet erst nach dem Capture statt, denn ich erhalte keine Fehlermeldung von der Gegenseite und die Kommunikation funktioniert.

Sehr verwirrend........