ubuntuusers.de

Ping / Webseitenaufruf funktioniert nicht, wenn Netzwerk mit OpenVPN eingebunden

Status: Gelöst | Ubuntu-Version: Ubuntu 14.04 (Trusty Tahr)
Antworten |

lastman

Anmeldungsdatum:
27. April 2009

Beiträge: 45

Hallo, neuerdings ist es nicht mehr möglich, Webseiten im Browser aufzurufen oder eine Adresse anzupingen, wenn ich mit OpenVPN eine Verbindung zum Firmennetz hergestellt habe. Es hat jahrelang funktioniert, irgendetwas muss sich bei Ubuntu geändert haben. Sobald ich die Verbindung trenne, funktioniert es wieder. Ubuntu läuft in VirtualBox. Ich habe keine Ahnung, was ich nun überprüfen muss. Kann mir jemand behilflich sein bei der Eingrenzung der Fehlerursache?

tomtomtom Team-Icon

Supporter
Avatar von tomtomtom

Anmeldungsdatum:
22. August 2008

Beiträge: 55507

Wohnort: Berlin

Klingt nach fehlendem IP-Forwarding des Servers oder DNS-Problemen. Du solltest dich also an den Administrator des Dienstes wenden.

lubux

Anmeldungsdatum:
21. November 2012

Beiträge: 14384

lastman schrieb:

Es hat jahrelang funktioniert, ...

Hat es jahrelang so funktioniert, dass bei bestehender OpenVPN-Verbindung, dein Rechner, mit der externen IP-Adresse der Firma im Internet war oder hatte dein Rechner bei bestehender OpenVPN-Verbindung, auch eine default route (d. h. der Rechner war mit der externen IP-Adresse deines Internet-Anschlusses im Internet)?

lastman

(Themenstarter)

Anmeldungsdatum:
27. April 2009

Beiträge: 45

lubux schrieb:

lastman schrieb:

Es hat jahrelang funktioniert, ...

Hat es jahrelang so funktioniert, dass bei bestehender OpenVPN-Verbindung, dein Rechner, mit der externen IP-Adresse der Firma im Internet war oder hatte dein Rechner bei bestehender OpenVPN-Verbindung, auch eine default route (d. h. der Rechner war mit der externen IP-Adresse deines Internet-Anschlusses im Internet)?

Mein Rechner war während der OpenVPN Verbindung mit der externen IP-Adresse meines Internet-Anschluss im Internet. So muss ich z.B. meine IP-Adresse immer in den Firewalls meiner Server (außerhalb des Firmennetz) eintragen/anmelden, damit ich mich überhaupt einloggen kann. Rechner ist in diesem Fall Ubuntu in der virtuellen Umgebung.

In der /etc/resolv.conf habe ich testweise nameserver 8.8.8.8 eingetragen, hat aber nichts gebracht. Vorher stand da 127.0.0.1 und man solle die Datei eigentlich nicht mehr editieren.

Wenn ich auf einem anderen Rechner mit Windows die OpenVPN-Verbindung herstelle, funktioniert es wie immer.

Routen ohne OpenVPN-Verbindung

1
2
3
4
5
root@ubuntu14:~# route -n
Kernel-IP-Routentabelle
Ziel            Router          Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.2.1     0.0.0.0         UG    0      0        0 eth0
192.168.2.0     0.0.0.0         255.255.255.0   U     1      0        0 eth0

Routen mit OpenVPN-Verbindung

1
2
3
4
5
6
7
8
root@ubuntu14:~# route -n
Kernel-IP-Routentabelle
Ziel            Router          Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.2.1     0.0.0.0         UG    0      0        0 eth0
192.168.2.0     192.168.3.5     255.255.255.0   UG    0      0        0 tun0
192.168.2.0     0.0.0.0         255.255.255.0   U     1      0        0 eth0
192.168.3.1     192.168.3.5     255.255.255.255 UGH   0      0        0 tun0
192.168.3.5     0.0.0.0         255.255.255.255 UH    0      0        0 tun0

lubux

Anmeldungsdatum:
21. November 2012

Beiträge: 14384

lastman schrieb:

Routen mit OpenVPN-Verbindung

root@ubuntu14:~# route -n
Kernel-IP-Routentabelle
Ziel            Router          Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.2.1     0.0.0.0         UG    0      0        0 eth0
192.168.2.0     192.168.3.5     255.255.255.0   UG    0      0        0 tun0
192.168.2.0     0.0.0.0         255.255.255.0   U     1      0        0 eth0
192.168.3.1     192.168.3.5     255.255.255.255 UGH   0      0        0 tun0
192.168.3.5     0.0.0.0         255.255.255.255 UH    0      0        0 tun0

Evtl. ist die mit gelb markierte definierte route das Problem und die default route mit deinem Router 192.168.2.1 nicht verwendet wird, weil dein Router (IP-Adresse 192.168.2.1) nicht erreicht werden kann. Versuch mal in einem Terminal:

sudo tcpdump -vvveni tun0 icmp

und in einem anderen Terminal:

ping -c 2 -W 2 192.168.2.1

Siehe nach dem Ping, die Ausgabe von tcpdump. Evtl. kannst Du das, über die Metric steuern/ändern.

lastman

(Themenstarter)

Anmeldungsdatum:
27. April 2009

Beiträge: 45

Ein Ping auf die 192.168.2.1 funktioniert immer

root@ubuntu14:~# tcpdump -vvveni tun0 icmp
tcpdump: listening on tun0, link-type RAW (Raw IP), capture size 65535 bytes
09:34:54.213275 ip: (tos 0x0, ttl 64, id 1870, offset 0, flags [DF], proto ICMP (1), length 84)
    192.168.3.6 > 192.168.2.1: ICMP echo request, id 3022, seq 1, length 64
09:34:54.241969 ip: (tos 0x0, ttl 64, id 35309, offset 0, flags [none], proto ICMP (1), length 84)
    192.168.2.1 > 192.168.3.6: ICMP echo reply, id 3022, seq 1, length 64
09:34:55.214568 ip: (tos 0x0, ttl 64, id 1944, offset 0, flags [DF], proto ICMP (1), length 84)
    192.168.3.6 > 192.168.2.1: ICMP echo request, id 3022, seq 2, length 64
09:34:55.243776 ip: (tos 0x0, ttl 64, id 35310, offset 0, flags [none], proto ICMP (1), length 84)
    192.168.2.1 > 192.168.3.6: ICMP echo reply, id 3022, seq 2, length 64

root@ubuntu14:~# ping -c 2 -W 2 192.168.2.1
PING 192.168.2.1 (192.168.2.1) 56(84) bytes of data.
64 bytes from 192.168.2.1: icmp_seq=1 ttl=64 time=28.7 ms
64 bytes from 192.168.2.1: icmp_seq=2 ttl=64 time=29.2 ms

Aber wenn ich dann z.B. google.de anpinge, kann ich dies genau dreimal machen, beim vierten Mal erhalte ich nach etwa 20 Sekunden die Meldung "unknown host"

root@ubuntu14:~# ping -c 2 -W 2 google.de
PING google.de (173.194.44.87) 56(84) bytes of data.
64 bytes from ham02s14-in-f23.1e100.net (173.194.44.87): icmp_seq=1 ttl=54 time=24.7 ms
64 bytes from ham02s14-in-f23.1e100.net (173.194.44.87): icmp_seq=2 ttl=54 time=25.1 ms

--- google.de ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1000ms
rtt min/avg/max/mdev = 24.756/24.954/25.153/0.253 ms
root@ubuntu14:~# ping -c 2 -W 2 google.de
ping: unknown host google.de

Und dann muss ich etwa eine Minute warten, bis der Ping auf google.de wieder funktioniert, aber auch nur wieder nur dreimal.

Da ich auf meinem anderen Rechner ebenfalls Ubuntu in einer VirtualBox laufen lasse, es dort aber problemlos funktioniert, habe ich mir die Netzwerkkonfiguration von VirtualBox angesehen. Dort ist der emulierte Netzwerkadapter konfiguriert als "Angeschlossen an NAT". Auf dem Rechner mit dem Problem ist der Netzwerkadapter konfiguriert als "Angeschlossen an Netzwerkbrücke". Dies hatte ich mal so eingestellt, damit Ubuntu trotz virtueller Umgebung zu Testzwecken über eine normale IP-Adresse vom Host-Rechner erreichbar ist. Nun habe ich den Netzwerkadapter ebenfalls auf NAT eingestellt und das Problem tritt auch hier nicht mehr auf.

Die Routen mit OpenVPN-Verbindungen sehen nun so aus:

1
2
3
4
5
6
7
8
root@ubuntu14:~$ route -n
Kernel-IP-Routentabelle
Ziel            Router          Genmask         Flags Metric Ref    Use Iface
0.0.0.0         10.0.2.2        0.0.0.0         UG    0      0        0 eth0
10.0.2.0        0.0.0.0         255.255.255.0   U     1      0        0 eth0
192.168.2.0     192.168.3.5     255.255.255.0   UG    0      0        0 tun0
192.168.3.1     192.168.3.5     255.255.255.255 UGH   0      0        0 tun0
192.168.3.5     0.0.0.0         255.255.255.255 UH    0      0        0 tun0

Das, was du gelb markiert hattest, ist auch hier konfiguriert. Was ist jetzt so anders?

lubux

Anmeldungsdatum:
21. November 2012

Beiträge: 14384

lastman schrieb:

Ein Ping auf die 192.168.2.1 funktioniert immer

Ja, aber über das tun0-Interface und nicht über das eth0-Interface.

lastman schrieb:

Die Routen mit OpenVPN-Verbindungen sehen nun so aus:

root@ubuntu14:~$ route -n
Kernel-IP-Routentabelle
Ziel            Router          Genmask         Flags Metric Ref    Use Iface
0.0.0.0         10.0.2.2        0.0.0.0         UG    0      0        0 eth0
10.0.2.0        0.0.0.0         255.255.255.0   U     1      0        0 eth0
192.168.2.0     192.168.3.5     255.255.255.0   UG    0      0        0 tun0
192.168.3.1     192.168.3.5     255.255.255.255 UGH   0      0        0 tun0
192.168.3.5     0.0.0.0         255.255.255.255 UH    0      0        0 tun0

... Was ist jetzt so anders?

Du hast hier keine definierte route mit dem tun0-Interface, in das Subnetz 10.0.2.0/24 des Routers (10.0.2.2), der die default route zur Verfügung stellt.

lastman

(Themenstarter)

Anmeldungsdatum:
27. April 2009

Beiträge: 45

Danke für den Hinweis! Ich habe nun den Adressbereich des Heimnetzes geändert. Vor 2 Wochen hatte ich nämlich einen neuen VDSL-Router in Betrieb genommen (Vodafone easybox 904), bei dem das Heimnetz auf 192.168.2.1 gesetzt war. Vorher hatte ich eine Fritzbox 7270 im Einsatz, bei dem das Heimnetz standardmäßig auf 192.168.178.1 gesetzt ist. Ich habe nun die Heimnetz-Einstellungen von der fritzbox übernommen.

Die Routentabelle sieht nun so aus:

1
2
3
4
5
6
7
Kernel-IP-Routentabelle
Ziel            Router          Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.178.1   0.0.0.0         UG    0      0        0 eth0
192.168.178.0   0.0.0.0         255.255.255.0   U     1      0        0 eth0
192.168.2.0     192.168.3.5     255.255.255.0   UG    0      0        0 tun0
192.168.3.1     192.168.3.5     255.255.255.255 UGH   0      0        0 tun0
192.168.3.5     0.0.0.0         255.255.255.255 UH    0      0        0 tun0
Antworten |