Problem forwarding/routing

10/02/2008 - 17:51 von Lars Uhlmann | Report spam
Gegeben:

++ WAN: XXX.XXX.XXX.XXX
| DSL-Router |
++ LAN: 192.168.123.149/24
||
|| port forwarding
|| von WAN:1194 udp
|| nach 192.168.123.147:1194 udp
||
+--+ eth0: 192.168.123.147/24
| Server mit OpenVPN | eth0:1: 192.168.123.148/24
| (Linux 2.6.18) |
+--+ tun0: 10.8.0.1/24

Der DSL-Router hat eine statische route: 10.8.0.0/24 via 192.168.123.147.
OpenVPN hat wohl problemlos funktioniert. Heute ist plötzlich kein
Zugriff mehr auf 192.168.123.0/24 möglich. Lediglich auf die IPs von tun0
bzw. die 192er von eth0 ist ein "ping" von einem verbundenen client
erfolgreich. Zuerst dachte ich an deaktiviertes forwarding aber
'cat /proc/sys/net/ipv4/forwarding' liefert 1.

Beim ping an eine IP im lokalen Netz liefert 'tcpdump' folgendes:

,--[tcpdump -n -i tun0 icmp]
| 17:34:04.424990 IP 10.8.0.6 > 192.168.123.151: ICMP echo request, id 768, seq 21504, length 40
| 17:34:09.729162 IP 10.8.0.6 > 192.168.123.151: ICMP echo request, id 768, seq 21760, length 40
`--

,--[tcpdump -n -i eth0 icmp]
| 17:34:04.427998 IP 10.8.0.6 > 192.168.123.151: ICMP echo request, id 768, seq 21504, length 40
| 17:34:04.428348 IP 192.168.123.151 > 10.8.0.6: ICMP echo reply, id 768, seq 21504, length 40
| 17:34:04.428353 IP 192.168.123.151 > 10.8.0.6: ICMP echo reply, id 768, seq 21504, length 40
| 17:34:09.729178 IP 10.8.0.6 > 192.168.123.151: ICMP echo request, id 768, seq 21760, length 40
| 17:34:09.729399 IP 192.168.123.151 > 10.8.0.6: ICMP echo reply, id 768, seq 21760, length 40
| 17:34:09.729414 IP 192.168.123.151 > 10.8.0.6: ICMP echo reply, id 768, seq 21760, length 40
`--

Die Pakte kommen zwar ans Ziel, von da aber nicht mehr zurück.

Auf dem Server:

,--[ip route show]
| 10.8.0.2 dev tun0 proto kernel scope link src 10.8.0.1
| 10.8.0.0/24 via 10.8.0.2 dev tun0
| 192.168.123.0/24 dev eth0 proto kernel scope link src 192.168.123.147
| default via 192.168.123.149 dev eth0
`--

Das routing zum VPN-Client paßt augenscheinlich:

,--[ip route get 10.8.0.6]
| 10.8.0.6 via 10.8.0.2 dev tun0 src 10.8.0.1
| cache mtu 1500 advmss 1460 hoplimit 64
`--

Es ist auf dem server auch kein Paketfilter aktiv:

,--[iptables -nL]
| Chain INPUT (policy ACCEPT)
| target prot opt source destination
|
| Chain FORWARD (policy ACCEPT)
| target prot opt source destination
|
| Chain OUTPUT (policy ACCEPT)
| target prot opt source destination
`--

Wo könnte ich noch suchen? Ich hab mal die Paket von tun0=>eth0 und umgekehrt
via 'iptables' loggen lassen, man sieht in der FORWARD-Chain auch den
Paketzàhler von tun0=>eth0 inkrementieren, eth0=>tun0 aber bleibt 0.

Irgenetwas übersehe ich, nur was?

Grüße,
Lars
 

Lesen sie die antworten

#1 Lars Uhlmann
10/02/2008 - 19:29 | Warnen spam
Typischer Fall von selbst ins Knie geschossen:

Ich nahm zum testen als Ziel für ping eine IP (192.168.123.151) die zu
einer VM (VMware) gehört. Genau die làuft auch auf diesem Server, mit
Netzwerk bridged über eth0. Deshalb sah man auch die Antwortpakete,
allerdings mit Ziel default gateway (192.168.123.149).
Keine Ahnung, warum ich nicht den Router anpingte - als ich das jetzt tat,
kam von da nix zurück. Der hat aus irgendeinem Grund die route zurück
zum VPN-Tunnel "vergessen". Nach dessen reboot làuft wieder alles.

Tja, manchmal denkt man einfach zu kompliziert. Sowas passiert wohl, wenn
man an einem so schönen Sonntag eigentlich raus will und stattdessen
Probleme fixen muß. :/

Lars

Ähnliche fragen