spartacus

WireGuard auf Mikrotik

Moin zusammen,

vor einigen Monaten habe ich Wireguard auf meinem MT Router eingerichtet.

Name: VPN
MTU: 1320
Listen Port: 08/15
Private Key: 4711
Public Key: 1234

Peer1:
Interface: VPN
Allowed address: 172.16.nn.xx/32

Die Adressen sind angelegt und in der FW entsprechende Regeln definiert.

Auf dem Client sieht die Konfiguration so aus:
[Interface]
PrivateKey = 4711
Address = 172.16.nn.xx/32
DNS = 172.16.nn.1

[Peer]
PublicKey =1234
AllowedIPs = 0.0.0.0/0
Endpoint = mydomain:08/15
PersistentKeepalive = 30

Funktioniert alles wunderbar, solange der Client sich mit einem WLAN (außerhalb des hauseigenen WLANs, z.B. im Hotel) verbinden kann. 4G oder 4G+ sind schon schwierig und das Webinterface meiner Homeassistent App zeigt einen Timeout an. Das nervt etwas, da man halt nicht immer ein WLAN zur Verfügung hat.

Ich habe keine Ahnung an welcher Schraube man hier drehen kann, offenbar ist die mobile Verbindung zu langsam. Ich habe schon mal mit MTU herumgespielt, aber das führt zu keinem wirklichen Erfolg.

Frage 2:
In Homeassitant habe ich eingebettete Webseiten von Hosts aus dem selben Subnetz. Allerdings wird der Hostname dieser Webserver über die VPN Verbindung nicht aufgelöst. Was muss ich in Wireguard wo einstellen, damit die Hostnamen aus meinem lokalen Subnetz über VPN aufgelöst werden. Wenn ich die IP Adressen konfiguriere, werden die Daten auch via VPN Verbindung angezeigt. Heißt, grundsätzlich funktioniert das schon.
Auf Facebook teilen
Auf X (Twitter) teilen
Auf Reddit teilen
Auf Linkedin teilen

Content-ID: 672868

Url: https://administrator.de/forum/wireguard-auf-mikrotik-672868.html

Ausgedruckt am: 15.05.2025 um 03:05 Uhr

aqui
aqui 14.05.2025 aktualisiert um 15:32:43 Uhr
Goto Top
Der Mikrotik erlernt keine IP Routen automatisch wie man das von Winblows, Mac OS oder Linux kennt!
Wenn du ein Netzwerk hinter dem Client (Initiator) erreichen willst musst du bei Mikrotik immer eine statische Route setzen! Auch vice versa, sollte der MT der WG Client sein. Darüber stolpert man vielfach.
Das Mikrotik Handbuch weist explizit darauf hin! ("routing information must be configured" Wenn man es denn liest...) face-wink

Weiterer Konfigfehler ist auf deinem Client dessen IP Adresse im internen WG Netz! Dort nutzt du eine falsche Subnetzmaske! Ein Grund warum ein korrektes Cryptokey Routing dann scheitert mit deinen Symptomen. Die MTU muss man in der Regel nicht anfassen und kann sie auf dem Default belassen. Sie hat auch mit dem Problem nichts zu tun.

Allerdings wird der Hostname dieser Webserver über die VPN Verbindung nicht aufgelöst. Was muss ich in Wireguard wo einstellen
Hier musst du dem Client einen lokalen DNS Server in der WG Konfig mitgeben! Wie das geht steht im u.a. Tutorial im Kapitel: DNS Eintrag im Client

Überlege dir zusätzlich ob es sinnvoll ist im Client ein Gateway Redirect zu machen?! Was das ist erklärt dir im Detail das hiesige Wireguard Tutorial!
In der Mehrzahl der Fälle ist der Redirect aus Performance Sicht immer kontraproduktiv und ein Split Tunneling deutlich flotter. Es sei denn man möchte z.B. aus Sicherheitsgründen explizit allen Traffic clientseitig in den Tunnel schicken.
In den weiterführenden Links des Tutorials am Schluss findest du außerdem diverse Mikrotik Live Beispiele.
Spartacus
Spartacus 14.05.2025 aktualisiert um 17:02:13 Uhr
Goto Top
Moin aqui,

ich kann mir kaum vorstellen, dass es am falschen Routing liegt, da das Ganze ja läuft und zwar ziemlich zuverlässig! LTE geht auch, nur bei 4G und 4G+ kommen die Timeouts. Wenn es ein Routing Problem wäre, würde ich erwarten, dass es überhaupt nicht geht. Ok, die Subnetzmaske mag falsch sein, aber ich verstehe noch nicht an welcher Stelle, diese falsch sein soll! Aber auch da wäre meine Erwartung dass das nichts mit dem Medium zu tun hat, über das ich die VPN-Verbindung aufbaue. Liege ich da falsch? Kann das die Ursache sein?

Als Endgerät nutze ich ein Android Smartphone.

Die Sache mit dem DNS und dem Split Tunnel schaue ich mir an. M.E habe ich das auf einem der Smartphones auch so gemacht.
aqui
aqui 14.05.2025 aktualisiert um 20:11:44 Uhr
Goto Top
aber ich verstehe noch nicht an welcher Stelle, diese falsch sein soll!
Zeigt das du das Tutorial nicht gelesen hast! face-sad
[Interface]
PrivateKey = 4711
Address = 172.16.nn.xx/24
DNS = 172.16.nn.1

[Peer]
PublicKey =1234
AllowedIPs = 0.0.0.0/0
Endpoint = mydomain:08/15
PersistentKeepalive = 30 
Lies bitte das Tutorial im Kapitel Keys und Adressierung und finde den Fehler!
Ist hier etwas geraten weil du leider keine Angaben über die Größe (Prefix) des internen WG IP Netzes machst.
Spartacus
Spartacus 14.05.2025 aktualisiert um 22:04:36 Uhr
Goto Top
Hm! Ich verstehe deine Frage schon wieder nicht. Was heißt, ich mache keine Angaben zum internen WG Netzwerk! Ich habe auf dem WG Interface ein ganz normales Subnetz konfiguriert (Address:172.16.nn.1/24, Network: 172.16.nn.0).

Ich habe WG für Mikrotik damals analog zu einem Video konfiguriert und da musste ich nirgends statische Routen eintragen, so wie in deinem Tut beschrieben. Die Routen gibt es bei mir natürlich auch, sind aber automatisch angelegt worden. Von daher unterscheidet sich dein Tut etwas von dem Video von damals.

Das mit der Subnetzmaske ist ein valider Punkt, den gucke ich mir in deinem Tut noch mal an, aber dennoch verstehe ich immer noch nicht, was das mit dem Übertragungsmedium zu tun haben soll. Wie gesagt, über LTE oder einer WLAN-Verbindung zu einem Hotspot läuft alles seit zwei Jahren reibungslos. Schauen wir mal.

wegen dem DNS. Das läuft noch nicht.

Ich habe auf dem Smartphone nachgeschaut. Unter Interface steht bei Adressen nun 172.16.nn.102/24 Der Nameserver ist der 172.16.nn.1. Das sind exakt die Adressen aus dem Subnetz, die ich auf dem MT konfiguriert habe.

Mein Homeassistant befindet sich im Subnet 172.16.yy.0 und ich habe ein Forward vom WG Subnetz in das yy.0 konfiguriert. Leider werden aber keine Hostnamen aufgelöst. Muss ich die DNS Requests auch noch weiterleiten?

NACHTRAG:
Das mit dem DNS geht jetzt, ich habe bei den eingebetteten Webseiten im Homeassistant nun den FQDN konfiguriert. jetzt geht es auch über VPN.