Hallo, ich möchte gerne meinen Raspberry Pi zu einem OpenVPN-Router im lokalen Netzwerk machen. Das heißt, dass mein Desktop-Rechner die lokale IP-Adresse des Raspberry Pi als Gateway zugewiesen bekommt. Diese Verbindung funktioniert auch bereits. Der Raspberry Pi hat das IP-Forwarding aktiviert und leitet den Traffic auch ganz normal weiter. Wenn ich auf dem Raspberry Pi den OpenVPN-Service starte, so dass er automatisch die Routingtabellen ändert und jeglichen Traffic (auch lokal vom Pi selbst) über das tun0-Interface routet, dann funktioniert das auch prima vom Desktop-PC, sofern ich eine bestimmte IPTables-Regel auf dem Pi gesetzt habe.
Ich möchte es aber etwas spezieller:
Ich habe die systemd-Konfigurationsdatei für den OpenVPN-Service so angepasst, dass die Option --route-noexec mit angegeben wird. Das bedeutet, dass der OpenVPN-Service beim Start die Routingtabellen nicht mehr anfasst und nur zusätzlich das Interface tun0 auftaucht, ohne dass irgendetwas von irgendwo automatisch über tun0 geroutet wird. Und ich möchte jetzt, dass jeglicher eingehender Datenverkehr am Raspberry Pi aus dem internen Netzwerk mit IPTables über das tun0-Interface geroutet wird (der Traffic vom Pi selbst, also wenn ich per SSH auf dem Pi bin und ein curl google.com mache, soll natürlich weiterhin über eth0 rausgehen; ich möchte nämlich später die IPTables-Regeln so anpassen, dass SSH-Verbindungen vom Desktop-Rechner ins Internet über eth0 gehen).
Aber genau das ist das Problem: Ich habe hunderte Beispiele ausprobiert aber es hat einfach keinen Effekt. Der Desktop-Rechner kommt weiterhin über den Raspberry Pi ins Internet aber lediglich über eth0 mit der normalen IP-Adresse vom ISP. Es funktioniert einfach nicht, dass der Raspberry Pi den eingehenden Traffic, den er weiterleiten soll, über das tun0-Interface schickt. Im Folgenden ein paar detaillierte Informationen:
[Raspberry Pi]
[Desktop-Rechner]
Lokale IPv4: 192.168.0.100
Gateway: 192.168.0.200 (<- Raspberry Pi; Verbindung an sich funktioniert!)
[Routingtabelle auf dem Raspberry Pi]
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.0.1 0.0.0.0 UG 0 0 0 eth0
0.0.0.0 192.168.0.1 0.0.0.0 UG 202 0 0 eth0
10.114.0.0 0.0.0.0 255.255.0.0 U 0 0 0 tun0
192.168.0.0 0.0.0.0 255.255.255.0 U 202 0 0 eth0
192.168.0.0 0.0.0.0 255.255.252.0 U 0 0 0 eth0
Falls ihr weitere Informationen benötigt, teilt mir dies bitte mit. Ich hoffe, dass ihr mir vielleicht helfen könnt und ich vielleicht irgendetwas total vergessen habe.