Statische Route in ESP32

OP #7002633
Lesenswert?

Ich arbeite an einem Projekt mit ESP32 mit Webserver. WIFI und 
IP-Adresse mit default Route ist kein Problem. Ich möchte aber auf den 
ESP32 über VPN zugreifen können. Das Problem ist, dass ich einen 
dezidierten VPN Server aus einem RASPI betreibe, der nicht der Router 
meines Netzwerks ist. Daher muss ich auf allen Servern in meinem 
Netzwerk eine statische Route für die VPN-Rechner zum VPN-Server 
einrichten. Unter Linux mache ich das so:

route add -net 10.5.5.0 netmask 255.255.255.0 gw 192.168.0.14

Der Internetrouter hat natürlich 192.168.0.1 und das Internet ist auch 
per ESP erreichbar (NTP-Client Abfrage). Wenn ich nun meine  ESP32 
Webserver abfragen möchte per VPN, dann erhalte ich keine Anwort, da der 
ESP32 keine statische Route für Rechner aus dem 10.5.5.0/24 Netz hat.

Wie kann ich dem ESP32 eine zusätzliche Netwerkroute (Gateway) für die 
VPN-IP-Adressen beibringen?
Gast #7003581
Lesenswert?

Albert S. schrieb:

> Das Problem ist, dass ich einen
> dezidierten VPN Server aus einem RASPI betreibe, der nicht der Router
> meines Netzwerks ist. Daher muss ich auf allen Servern in meinem
> Netzwerk eine statische Route für die VPN-Rechner zum VPN-Server
> einrichten.

Nein, das muss man natürlich nicht. Ein aus mehreren Netzen bestehendes 
LAN hat typisch pro Netz ein default gateway zu haben. Und nur der 
Server, der diese Rolle ausfüllt, der muß wissen, wie es jenseits des 
Netzes weiter geht. Und in den meisten privaten LANs dürfte es 
vollkommen ausreichen, dass der weiß, wie er zum Internet-Gateway kommt.

Es entsteht also de facto eine Baumstruktur. Und nur das 
Internet-Gateway muss alle Netze im LAN und die jeweiligen Wege dorthin 
kennen. Das sind dann die statischen Routen. Die braucht also nur das 
Internet-Gateway. Was es allerdings auch wissen muss (da es ja de facto 
zum LAN gehört): Den Weg zum entfernten Netz, also zu dem, was per VPN 
angebunden ist.

Dein Problem dürfte (sehr wahrscheinlich) darin bestehen, dass das 
VPN-Gateway (bzw. eigentlich: das VPN selber) falsch konfiguriert ist. 
Da kannst du mit Umkonfiguration des LAN rein garnix gegen unternehmen. 
Die Pakete gehen dann schon garnicht durch den VPN-Tunnel.
Gast #7003637
Lesenswert?

Albert S. schrieb:
> Wie kann ich dem ESP32 eine zusätzliche Netwerkroute (Gateway) für die
> VPN-IP-Adressen beibringen?

Das scheint lwIP (der IP-Stack, den das esp-idf und dementsprechend auch 
Arduino verwenden) nicht zu unterstützen. Das scheint nämlich nur ein 
default-gw und keine vollständige Routing-Tabelle zu kennen...

Kannst du auf dem Internet-Router eine Route ins VPN hinzufügen? Oder 
den VPN-Server als Default-Gateway verwenden, der seinerseits alles, was 
nicht ins VPN geht, an den Internet-Router weiterleitet?

Beides würde gehen, ohne dein LAN aufzuteilen.

MfG, Arno
#7887926
Lesenswert?

In diesem Thraed steht Einiges, das nicht so ganz richtig ist :

Natürlich gibt es gute und vor allem sicherheitsrelevante Gründe nicht nur ein Default Gateway im Netzwerk zu haben! Und daher ist es auch keine Fehlkonfiguration, wenn im Gateway nicht alle statischen Routen hinterlegt sind. Natürlich ist es meistens vor allem in kleinen Netzen viel einfacher, alle Routen direkt im Default Gateway zu hinterlegen, aber es ist in vielen Fällen gerade aus sicherheitsrelevanten Erwägungen sinnvoll, unterschiedliche Routings auch auf Host Ebene einzurichten. Denn eine Firewall Sperre ist einfach und übersichtlich zu hinterlegen, aber Gateway Einstellungen auf Basis des Hosts oder der IP oder noch schlimmer auf Basis von Gruppenrechten oder Richtlinien werden sehr schnell völlig unübersichtlich oder sind sogar teilweise überhaupt nicht möglich.

Und auch die Antwort, dass es nicht geht, ist falsch oder aber zumindest veraltet.

Es ist sogar sehr einfach :

WiFi.beginStatic(staticRouteIP, gatewayIP, subnetMask);

Es gibt zwar (noch) keine Metrik, aber sonst funktioniert alles ziemlich problemlos. MfG

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren