Wireguard vom internen WLAN nutzen

Started by Chris1986, April 23, 2022, 07:31:11 AM

Previous topic - Next topic
Guten Morgen  :)

Ich habe ein kleines Problem mit der Nutzung von Wireguard über das interne WLAN Netz.
Ich möchte einen OpenWRT Router über WLAN und Wireguard an die OPNsense anbinden.
Die Anbindung über das LTE Netz des OpenWRT Router funktioniert, nur über WLAN nicht.

Als Ziel ist im OpenWRT Router die WAN Ip der OPNsense eingetragen.
Ich habe nun schon die NAT Reflection ausprobiert und auch manuelle NAT Ausgangsregeln. Allerdings scheint dies alles nicht zu greifen. Ist hier ein Bug bekannt? (Version 22.1.6)

Auf dem Screenshot ein Ausschnitt mit den Verbindungen der OPNsense.

Kann mir hier jemand weiterhelfen?

Viele Grüße
Chris


Ohne Netzwerkplan muss ich leider etwas raten ...
Ich vermute der OpenWRT ist in einem internen Netz hinter der opnsense?
Du benötigst eine Regel die den Zugriff erlaubt. Und zwar nicht nur auf die WAN IP, da Wireguard sich an alle IPs bindet und bei einem Verbindungsversuch von innen auf die WAN IP wird der client (in dem Fall OpenWRT) ein icmp redirect auf die interne IP erhalten und sich dann auf die interne IP verbinden.
Daher kannst du in der WG config auf dem OpenWRT auch gleich die interne IP angeben ...
Aber diesen Zugriff musst du erlauben, z.B. mit
IPv4 UDP    src:* (od. LAN NET)    sport:*    dest:This Firewall    dport:51821
als floating rule (sinnvoll falls du mehrere interne Netze hast und aus allen Verbindungen zum WG Server erlauben willst) oder auf dem internen Interface über das der OpenWRT ankommt.


Vielen Dank für deine Antwort  :)

Du hast den Aufbau richtig beschrieben. Im Anhang dazu noch eine Skizze.
Mit der internen IP der OPNsense funktioniert auch alles. Allerdings muss die Verbindung auch per LTE funktionieren und daher muss ich den Zugang über die Externe WAN IP bei behalten.

Mit einem Notebook als Wireguard Client funktioniert die Verbindung zur OPNsense über das WLAN.
Dort wird dann als Endpoint auch automatisch die WAN durch die interne IP überschrieben.

Nur bei dem OpenWRT geht es leider nicht.
Wobei ich noch dazu sagen muss, das es per OpenVPN geht, nur mit Wireguard nicht.

Ich hab den Fehler gefunden.
Es war ein Firewall Problem beim OpenWRT Router...

Der Hinweis mit dem "icmp redirect" war der ausschlaggebende Punkt.

Vielen Dank :-)

QuoteNur bei dem OpenWRT geht es leider nicht.
Wobei ich noch dazu sagen muss, das es per OpenVPN geht, nur mit Wireguard nicht.
opnvpn bindet sich nur an die WAN Schnittstelle, da findet kein redirect auf intern statt.
Ich nutze kein OpenWRT, es könnte aber sein dass dieser icmp redirects blockt, was deine Beobachtungen erklären würde.

Aber selbst wenn OpenWRT via WLAN auf die WAN Schnittstelle eine Verbindung hinbekommt, bei einem Schwenk auf LTE wird Wireguard nicht automatisch wieder von der VLAN WLAN internen IP auf WAN IP umspringen. Das funktioniert leider nur in eine Richtung (https://forum.opnsense.org/index.php?action=profile;area=showposts;sa=topics;u=28657)
Das kannst du mit deinem Notebook testen: von extern (LTE oder sonstwie) WG starten -> endpoint = WAN und alles geht ...
dann Wechsel in den WLAN Bereich hinter der opnsense -> endpoint = iinteren IP, WG funktioniert ...
wieder Wechsel in ein anderes (externes) Netz, WG bleibt auf dem endpoint mit der internen IP hängen und bekommt ohne Neustart keine Verbindung mehr hin.
Hauptgrund liegt darin, das man WG nicht zwingen kann, sich nur an das WAN interface zu binden ...
Wenn du ein funktionierendes Setup mit openvpn hast, bleib dabei.
Mit wireguard müsstest du da einiges basteln... z.B.

  • 2 WG Verbindungen in Verbindung mit einer gateway group
  • mittels monit bei Änderungen wg neu starten
  • ...

QuoteDer Hinweis mit dem "icmp redirect" war der ausschlaggebende Punkt.
+1. Die anderen "Hürden" bleiben aber leider bestehen ...
Viel Erfolg noch ...