OpenWRT + OpenVPN
Geizhals » Forum » Netzwerk » OpenWRT + OpenVPN (9 Beiträge, 265 Mal gelesen) Top-100 | Fresh-100
Du bist nicht angemeldet. [ Login/Registrieren ]
OpenWRT + OpenVPN + VyprVPN --> kein Glück
23.02.2015, 22:30:16
Hi,

ich hoffe es kann mir jemand helfen, ich verzweifle schon langsam.

Auf meinem TP-Link router habe ich erfolgreich OpenWRT (BB) und OpenVPN installiert. Wie in https://community.hide.me/tutorials/openvpn-mit-openwrt-firmware.4/  beschrieben, konnte ich erfolgreich die Verbindung zum VyprVPN aufbauen. Direkt am Router eingeloggt, funktioniert es auch:

root@OpenWrt:/etc/config# route -n
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 br-wan
10.16.0.0       0.0.0.0         255.255.0.0     U     0      0        0 tun314
192.168.0.0     0.0.0.0         255.255.255.0   U     0      0        0 br-wan
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 br-lan


root@OpenWrt:/etc/config# ping -I tun314 orf.at
PING orf.at (194.232.104.139): 56 data bytes
64 bytes from 194.232.104.139: seq=0 ttl=54 time=210.803 ms
64 bytes from 194.232.104.139: seq=1 ttl=54 time=211.487 ms
64 bytes from 194.232.104.139: seq=2 ttl=54 time=209.649 ms
64 bytes from 194.232.104.139: seq=3 ttl=54 time=209.904 ms
^C
--- orf.at ping statistics ---
4 packets transmitted, 4 packets received, 0% packet loss
round-trip min/avg/max = 209.649/210.460/211.487 ms
root@OpenWrt:/etc/config#
root@OpenWrt:/etc/config#
root@OpenWrt:/etc/config#
root@OpenWrt:/etc/config# ping -I br-wan orf.at
PING orf.at (194.232.104.142): 56 data bytes
64 bytes from 194.232.104.142: seq=0 ttl=55 time=8.395 ms
64 bytes from 194.232.104.142: seq=1 ttl=55 time=12.271 ms
64 bytes from 194.232.104.142: seq=2 ttl=55 time=8.821 ms
64 bytes from 194.232.104.142: seq=3 ttl=55 time=10.025 ms
^C
--- orf.at ping statistics ---
4 packets transmitted, 4 packets received, 0% packet loss
round-trip min/avg/max = 8.395/9.878/12.271 ms
root@OpenWrt:/etc/config#


Wie man sieht, die Verbindung via tun314 ist um einiges langsamer, wie erwartet - der eingestellte VPN Server ist in New York.

Das Problem ist, dass egal was ich versuche, ein Forwarding vom LAN ins VPN nicht und nicht funktioniert. Ich habe identische Einstellungen wie an der o.g. Adresse vorgenommen, und habe auch noch zig andere Vorschläge durchprobiert, ohne Erfolg.

Im Prinzip sollte es ganz einfach sein:

config forwarding
    option dest 'vyprvpn'
    option src 'lan'

im /etc/config/firewall, gefolgt von einem "/etc/init.d/firewall reload" sollte angeblich schon reichen (also "vyprvpn" statt "wan" eintragen) - bei mir nicht, ich bekomme immer nur:

alex@charlie:~$ ping orf.at
PING orf.at (194.232.104.139) 56(84) bytes of data.
From OpenWrt.lan (192.168.1.1) icmp_seq=1 Destination Port Unreachable
From OpenWrt.lan (192.168.1.1) icmp_seq=2 Destination Port Unreachable
From OpenWrt.lan (192.168.1.1) icmp_seq=3 Destination Port Unreachable


Interessanterweise scheint die DNS Auflösung zu funktionieren, das ist es dann aber auch gewesen.

Trage ich statt "vyprvpn" wieder "wan" ein, funktioniert das Netz, allerdings natürlich nicht via VPN.

Hinter dem TP-Link Router ist das "Standard-UPC" Modem, das sollte aber hoffentlich nichts ausmachen. Gehe ich vom PC aus direkt aufs VyprVPN (egal ob Windows oder Linux), funktioniert das ohne Probleme, nur über OpenWRT bekomme ich es nicht hin.

Hat jemand eine Idee?

23.02.2015, 22:30 Uhr - Editiert von sir_clive, alte Version: hier
Antworten PM Übersicht Chronologisch
 
Melden nicht möglich
..
Re(2): OpenWRT + OpenVPN + VyprVPN --> kein Glück
24.02.2015, 08:56:28
Hi,

ich gebe zu, ich bin netzwerketechnisch leider nicht sehr bewandert, meistens befolge ich Kochrezepte, ohne alles bis  ins letzte Detail zu verstehen. :)

Für den Anfang wäre ich schon froh, wenn ich *alles* übers VPN schicken könnte. Das Netz schaut so aus:

UPC <-> UPC Modem (192.168.0.1) <-> (192.168.0.10) TP-Link Router (192.168.1.1) <-> 192.168.1.0/24 (LAN + WLAN)

10.16.*.* entsteht "automagisch" wenn ich OpenVPN anwerfe. Lt. Anleitung reicht es ein Forwarding (das ist dann eigentlich eh eine iptables Einstellung) von der "lan" Zone in die "vyprvpn" Zone einzurichten, und es sollte schon funzen.

Wenn man sich jetzt aber meine Routing Tabelle noch mal anschaut:

0.0.0.0         192.168.0.1     0.0.0.0         UG    0      0        0 br-wan
10.16.0.0       0.0.0.0         255.255.0.0     U     0      0        0 tun314
192.168.0.0     0.0.0.0         255.255.255.0   U     0      0        0 br-wan
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 br-lan

sieht man, dass br-lan und br-wan auch nicht am selben Segment sind (richtig?). Ein Forward lan -> wan führt aber dazu, dass ich aus dem LAN in den WAN komme. Ein Forward von lan -> tun314 (VPN) führt leider zu gar nichts. Könnte es sein, dass hier nur die Standard Route (0.0.0.0) für tun314 fehlt?

Ich werde mal versuchen herauszufinden was verschiedene forwarding Einstellungen beim OpenWRT an den iptables verändern, aber könntest Du mir vielleicht einen tipp geben, wie Du die Einstellung direkt mit iptables Mitteln vornehmen würdest?

Antworten PM Übersicht Chronologisch Zum Vorgänger
 
Melden nicht möglich
.
Re: OpenWRT + OpenVPN + VyprVPN --> kein Glück
24.02.2015, 13:31:56
bin da letztens auch ewig drübergestolpert und Patentantwort hab ich auch keine - irgendwann hat sich's dann eingerenkt (*wtf*)?!?

Um schrittweise der Ursache näherzukommen geht man normal folgende Schritte bzw. verifiziert bestimmte Informationen (und ich hoffe, ich hau jetzt keine dummen Fehler rein):

*) mach eine 2. Shell auf und verfolg das openvpn-Log (tail -f), dreh verbose auf 5 (da wird's schon aussagekräftig, weil du jedes geroutete Paket als w + Antwort als r gemeldet bekommst)

*) fallst du noch wo unabhängig davon eine SSH zum Gateway starten kannst/darfst ... dort detto.

*) bei Serverdiensten kann es unglaublich praktisch sein, diese im Vordergrund zu starten (üblicherweise -D (Dont daemonize, -F o.ä., in diesem Fall aber --inetd und --daemon weglassen), weil man den Logoutput dann direkt sieht und Parameter schnell ändern kann - leider macht das OpenVPN auf OpenWRT schwer, weil luci diese mühsame eigene Parameterformat erst zusammenpfriemelt = müßte man manuell nachbilden.
Falls du aber ein übliches configfile hast, kannst du es auf den Router kopieren und damit  (--config ...) anfangen + --verb overrulen.

*) ping schön und gut - aber aussagekräftiger ist traceroute = jeweils eigenen, gegnerischen Tunnelendpunkt (10.16.0.1 oder so) und dann eine IP im Zielnetz dahinter austesten um zu sehen, wie weit die Pakete kommen bzw. on/wie sie geroutet/geforwarded werden.
statt dem -I von ping muß man aber traceroute -s 10.16.0.?!?!? (eigenen Tunnelendpunkt) angeben.
Dobald das vom Router aus werkelt, selbiges von einem der internen, gerouteten Clients = dann sollt eben nur der Router-hop dazukommen und man sieht, im Log dazwischen ob es rausgeht (w) und wieder retour kommt (r)

*)  du willst net-to-net-VPN? falls nicht masqueriert werden soll, muß dein heimisches Segment auf der anderen Seite bekannt und entsprechend geroutet sein, sonst kommt keine reply zurück.
(btw: das ip_forward_ipv4-sysctl-Setting ist bei Routern zwangläufig immer gesetzt)

*) die Firewall-Regeln bei vpn sind so eine Sache, weil sie in's masquerading reinspielen = testweise ausschalten (sonst ein Tipp bei Verbindungsproblemen) geht nicht :-/ Mein Eindruck bei meinem Problem war, daß sie nach Änderungen nicht sauber geflusht wurden.

*) DNS-Auflösung und VPN-für-Adressen-ausserhalb-probieren würd ich beim Testen mal weglassen, sonst derhängt man sich vor Informationen.

*) eine Reihe von Parametern werden vom Server gepusht, u.a. auch routen und redirect-gateway => im Log verifizieren, was da kommt.

mehr fällt mir für den Moment nicht ein :-/

Antworten PM Übersicht Chronologisch Zum Vorgänger
 
Melden nicht möglich
.
Re: OpenWRT + OpenVPN + VyprVPN --> kein Glück
25.02.2015, 01:02:10
Hallo Zeddicus & March,

vielen Dank für Eure Hilfe!!!

Leider bin ich trotzdem noch nicht wirklich weiter gekommen, ich glaube aber, dass ich inzwischen einen weiteren Hinweis habe.

Wenn ich das OpenVPN starte, bekomme ich im Log folgendes zu sehen:

Wed Feb 25 00:46:12 2015 daemon.notice openvpn(VyprVPN_New_York)[4147]: do_ifconfig, tt->ipv6=0, tt->did_ifconfig_ipv6_setup=0
Wed Feb 25 00:46:12 2015 daemon.notice openvpn(VyprVPN_New_York)[4147]: /sbin/ifconfig tun314 10.16.0.188 netmask 255.255.0.0 mtu 1500 broadcast 10.16.255.255
Wed Feb 25 00:46:12 2015 daemon.notice netifd: Interface 'VyprVPN_New_York' is enabled
Wed Feb 25 00:46:12 2015 daemon.notice netifd: Network device 'tun314' link is up
Wed Feb 25 00:46:12 2015 daemon.notice netifd: Interface 'VyprVPN_New_York' has link connectivity


Überall in den Tutorials steht aber, dass nach dem /sbin/ifconfig eigentlich auch noch ein paar Routen gesetzt werden müssen:

Sat Dec 27 19:54:30 2014 daemon.notice openvpn(multi)[9895]: /sbin/ifconfig tun0 172.28.1.1 pointopoint 172.28.1.2 mtu 1500
Sat Dec 27 19:54:30 2014 daemon.notice openvpn(multi)[9895]: /sbin/route add -net 192.168.64.0 netmask 255.255.255.0 gw 172.28.1.2
Sat Dec 27 19:54:30 2014 daemon.notice openvpn(multi)[9895]: /sbin/route add -net 172.28.1.0 netmask 255.255.255.0 gw 172.28.1.2


oder


Feb 16 03:09:39 OpenWrt daemon.notice openvpn(IPredator)[1390]: TUN/TAP TX queue length set to 100
Feb 16 03:09:39 OpenWrt daemon.notice openvpn(IPredator)[1390]: /sbin/ifconfig tun1337 10.185.1.10 pointopoint 10.185.1.9 mtu 1500
Feb 16 03:09:39 OpenWrt daemon.notice netifd: Interface 'IPredator' is now up
Feb 16 03:09:39 OpenWrt daemon.info dnsmasq[1381]: reading /tmp/resolv.conf.auto
Feb 16 03:09:39 OpenWrt daemon.info dnsmasq[1381]: using nameserver 192.168.1.254#53
Feb 16 03:09:39 OpenWrt daemon.info dnsmasq[1381]: using nameserver 208.67.222.222#53
Feb 16 03:09:39 OpenWrt daemon.info dnsmasq[1381]: using nameserver 8.8.8.8#53
Feb 16 03:09:39 OpenWrt daemon.info dnsmasq[1381]: using nameserver 8.8.4.4#53
Feb 16 03:09:39 OpenWrt daemon.info dnsmasq[1381]: using local addresses only for domain lan
Feb 16 03:09:39 OpenWrt daemon.notice openvpn(IPredator)[1390]: /sbin/route add -net 173.192.81.190 netmask 255.255.255.255 gw 192.168.1.254
Feb 16 03:09:39 OpenWrt daemon.notice openvpn(IPredator)[1390]: /sbin/route add -net 0.0.0.0 netmask 128.0.0.0 gw 10.185.1.9
Feb 16 03:09:39 OpenWrt daemon.notice openvpn(IPredator)[1390]: /sbin/route add -net 128.0.0.0 netmask 128.0.0.0 gw 10.185.1.9
Feb 16 03:09:39 OpenWrt daemon.notice openvpn(IPredator)[1390]: /sbin/route add -net 10.185.1.1 netmask 255.255.255.255 gw 10.185.1.9



Morgen versuche ich herauszufinden woher die Informationen für diese Routen kommen, warum sie bei mir nicht kommen, wie ich sie eventuell manuell setzen kann (wie weiss ich schon, die Werte fehlen mir), usw.




Antworten PM Übersicht Chronologisch Zum Vorgänger
 
Melden nicht möglich
 

Dieses Forum ist eine frei zugängliche Diskussionsplattform.
Der Betreiber übernimmt keine Verantwortung für den Inhalt der Beiträge und behält sich das Recht vor, Beiträge mit rechtswidrigem oder anstößigem Inhalt zu löschen.
Datenschutzerklärung