OpenVPN-Verbindung routet nicht im gewuenschten Umfang

30/09/2016 - 18:55 von Sebastian Suchanek | Report spam
Hallo NG!

[Vorweg: falls jemand eine besser geeignete NG für das folgende
Problem kennt, bitte entsprechend f'uppen.]

Nun zum eigentlichen Problem: Ich kàmpfe gerade mit einer
OpenVPN-Verbindung mit tun-Device, die *eigentlich* zwei LANs so
miteinander verbinden soll, dass beliebige Hosts in LAN 1
beliebige Hosts in LAN 2 (und umgekehrt) erreichen können sollen.
Das Setup sieht so aus:

LAN1
- Adressbereich: 10.1.0.0/16

- OpenVPN-Server (und gleichzeitig Router von LAN1 zum Internet, auf
Basis von Debian Jessie): 10.1.0.1

- Auszug aus der OpenVPN server.conf:
| [...]
| server 10.255.1.0 255.255.255.0
| route 10.2.0.0 255.255.0.0
| push "route 10.1.0.0 255.255.0.0"
| client-to-client
| [...]

- Routing-Tabelle auf dem Server:
| Destination Gateway Genmask Flags Metric Ref Use Iface
| 0.0.0.0 0.0.0.0 0.0.0.0 U 0 0 0 ppp0
| 10.1.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
| 10.2.0.0 10.255.1.2 255.255.0.0 UG 0 0 0 tun0
| 10.255.1.0 10.255.1.2 255.255.255.0 UG 0 0 0 tun0
| 10.255.1.2 0.0.0.0 255.255.255.255 UH 0 0 0 tun0
| 87.186.224.164 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0



LAN2
- Adressbereich: 10.2.0.0/16

- OpenVPN-Client (auf Raspbian): 10.2.0.2

- Inhalt von /etc/openvpn/ccd/$Client:
| iroute 10.2.0.0 255.255.0.0

- Routing-Tabelle auf dem Client:
| Destination Gateway Genmask Flags Metric Ref Use Iface
| 0.0.0.0 10.2.0.1 0.0.0.0 UG 202 0 0 eth0
| 10.1.0.0 10.255.1.5 255.255.0.0 UG 0 0 0 tun0
| 10.2.0.0 0.0.0.0 255.255.0.0 U 202 0 0 eth0
| 10.255.1.0 10.255.1.5 255.255.255.0 UG 0 0 0 tun0
| 10.255.1.5 0.0.0.0 255.255.255.255 UH 0 0 0 tun0

- Iptables-Eintràge auf dem Client:
| Chain INPUT (policy ACCEPT)
| target prot opt source destination
|
| Chain FORWARD (policy ACCEPT)
| target prot opt source destination
| ACCEPT all -- 10.255.1.0/24 10.2.0.0/16 ctstate NEW
| ACCEPT all -- anywhere anywhere ctstate RELATED,ESTABLISHED
|
| Chain OUTPUT (policy ACCEPT)
| target prot opt source destination

Sowohl beim Server als auch beim Client ist
/proc/sys/net/ipv4/ip_forward auf "1" gesetzt.

Das Ganze funktioniert insofern, als dass ich sowohl vom Client
als auch von übrigen Hosts in LAN2 den Server über die Adresse
10.1.0.1 erreichen kann. Umgekehrt kann ich auch vom Server
sowie von Hosts in LAN1 den Client via 10.2.0.2 erreichen.
Was aber *nicht* funktioniert, ist, vom Client (oder LAN2) aus
beliebige Hosts in LAN1 bzw. umgekehrt vom Server aus beliebige
LAN2-Hosts zu erreichen. Beispiele für zwei Traceroutes vom
Server aus:

| # traceroute 10.2.0.2
| traceroute to 10.2.0.2 (10.2.0.2), 30 hops max, 60 byte packets
| 1 pi.bt.suchanek.lan (10.2.0.2) 33.347 ms 34.075 ms 35.803 ms
| # traceroute 10.2.0.1
| traceroute to 10.2.0.1 (10.2.0.1), 30 hops max, 60 byte packets
| 1 10.255.1.6 (10.255.1.6) 34.344 ms 35.621 ms 36.400 ms
| 2 * * *
| 3 * * *
| [...]
| 30 * * *
| #

Lange Rede, kurze Frage: Woran hakt's? Bzw.: wie kann ich auch
die Hosts "hinter" dem Client bzw. dem Server für das jeweils
andere LAN erreichbar machen?


TIA,

Sebastian
 

Lesen sie die antworten

#1 Marc Haber
01/10/2016 - 08:49 | Warnen spam
Sebastian Suchanek wrote:
| # traceroute 10.2.0.1
| traceroute to 10.2.0.1 (10.2.0.1), 30 hops max, 60 byte packets
| 1 10.255.1.6 (10.255.1.6) 34.344 ms 35.621 ms 36.400 ms



Wer ist denn 10.255.1.6?

Lange Rede, kurze Frage: Woran hakt's? Bzw.: wie kann ich auch
die Hosts "hinter" dem Client bzw. dem Server für das jeweils
andere LAN erreichbar machen?



Mit "iroute" in der Serverkonfig und dem dafür sorgen, dass die Hosts
in dem Client-Netz eine passende auf den Openvpn-Client zeigende Route
haben.

Grüße
Marc
Marc Haber | " Questions are the | Mailadresse im Header
Mannheim, Germany | Beginning of Wisdom " | http://www.zugschlus.de/
Nordisch by Nature | Lt. Worf, TNG "Rightful Heir" | Fon: *49 621 72739834

Ähnliche fragen