Ja, diese Frage wurde hundert Mal gestellt, und ich habe überall gesucht, ohne Erfolg.
Der Titel sagt eigentlich schon alles.
Ich habe einen OpenVPN-Server (unter Ubuntu) und kann über meinen Client (Windows 8) eine Verbindung dazu herstellen ...
Das Problem beginnt, wenn ich versuche, den gesamten Datenverkehr über das VPN weiterzuleiten.
Ich habe die push
Flags in der server.conf hinzugefügt:
push "redirect-gateway def1"
push "dhcp-option DNS 8.8.8.8"
Wenn ich vom Client aus eine Verbindung herstelle, gibt der Client Folgendes aus:
Wed May 07 21:38:40 2014 SENT CONTROL [StretchVPN-CA]: 'PUSH_REQUEST' (status=1)
Wed May 07 21:38:41 2014 PUSH: Received control message: 'PUSH_REPLY,redirect-gateway def1,dhcp-option DNS 8.8.8.8,route-gateway <Remote Router IP>,ping 10,ping-restart 120,ifconfig 192.168.0.201 255.255.255.0'
Wed May 07 21:38:41 2014 OPTIONS IMPORT: timers and/or timeouts modified
Wed May 07 21:38:41 2014 OPTIONS IMPORT: --ifconfig/up options modified
Wed May 07 21:38:41 2014 OPTIONS IMPORT: route options modified
Wed May 07 21:38:41 2014 OPTIONS IMPORT: route-related options modified
Wed May 07 21:38:41 2014 OPTIONS IMPORT: --ip-win32 and/or --dhcp-option options modified
Wed May 07 21:38:41 2014 do_ifconfig, tt->ipv6=0, tt->did_ifconfig_ipv6_setup=0
Wed May 07 21:38:41 2014 open_tun, tt->ipv6=0
Wed May 07 21:38:41 2014 TAP-WIN32 device [Local Area Connection 4] opened: \\.\Global\{1F145805-92FC-454E-8FD9-0A6017DD4AD1}.tap
Wed May 07 21:38:41 2014 TAP-Windows Driver Version 9.9
Wed May 07 21:38:41 2014 Notified TAP-Windows driver to set a DHCP IP/netmask of 192.168.0.201/255.255.255.0 on interface {1F145805-92FC-454E-8FD9-0A6017DD4AD1} [DHCP-serv: 192.168.0.0, lease-time: 31536000]
Wed May 07 21:38:41 2014 Successful ARP Flush on interface [35] {1F145805-92FC-454E-8FD9-0A6017DD4AD1}
Wed May 07 21:38:46 2014 TEST ROUTES: 1/1 succeeded len=0 ret=1 a=0 u/d=up
Wed May 07 21:38:46 2014 C:\WINDOWS\system32\route.exe ADD <Remote Router IP> MASK 255.255.255.255 172.20.10.1
Wed May 07 21:38:46 2014 ROUTE: CreateIpForwardEntry succeeded with dwForwardMetric1=25 and dwForwardType=4
Wed May 07 21:38:46 2014 Route addition via IPAPI succeeded [adaptive]
Wed May 07 21:38:46 2014 C:\WINDOWS\system32\route.exe ADD 0.0.0.0 MASK 128.0.0.0 192.168.0.3
Wed May 07 21:38:46 2014 ROUTE: CreateIpForwardEntry succeeded with dwForwardMetric1=30 and dwForwardType=4
Wed May 07 21:38:46 2014 Route addition via IPAPI succeeded [adaptive]
Wed May 07 21:38:46 2014 C:\WINDOWS\system32\route.exe ADD 128.0.0.0 MASK 128.0.0.0 192.168.0.3
Wed May 07 21:38:46 2014 ROUTE: CreateIpForwardEntry succeeded with dwForwardMetric1=30 and dwForwardType=4
Wed May 07 21:38:46 2014 Route addition via IPAPI succeeded [adaptive]
Wed May 07 21:38:46 2014 Initialization Sequence Completed
Ich habe versucht, die Flags auf der Client-Seite beim Öffnen der Verbindung zu verwenden:
openvpn --config "C:\Program Files\OpenVPN\config\client.ovpn" --redirect-gateway def1 --route-method exe
Aber wenn ich auf whatsmyip.org gehe, steht immer noch die IP-Adresse meiner Kunden.
Hat jemand dieses Problem gehabt und geschafft, es zu lösen?
Danke vielmals
push "route 0.0.0.0 0.0.0.0"
oder versucht , Routen zu verschieben? Vergessen Sie nicht die Route zurück in das VPN!Antworten:
Ich habe dies mit einem OpenVPN-Server getestet und das Einrichten der Option "Redirect-Gateway def1" in der Client- und Serverkonfiguration funktioniert einwandfrei. Wenn ich auf whatismyip.org zugreife, sehe ich die IP meines OpenVPN-Servers. Unten ist die Client-Konfiguration, die ich verwende:
Ich habe auch mit angehängtem Redirect-Gateway die Option def1 auf den Befehl openvpn getestet und das gleiche Ergebnis erzielt. Die Serverkonfiguration ist:
quelle
route 192.168.1.0 255.255.255.0
undpush "route 192.168.0.0 255.255.255.0"
aber mein Kunde keinen Zugriff bekommen auf andere Subnetze abgesehen von der es 192.168.1.0/24 Netz ... Ich werde ein wenig herumzustochern mehrVielleicht haben Sie vergessen, Ihr NAT zu ändern? Führen Sie diese 3 Befehle als root aus
Befehle:
Bildbeschriftung:
quelle
nat
Tabelle auch auf meinem Server funktioniert.Nach langem Suchen nach der Antwort scheint es, als hätte ich das gelöst, vielleicht teilweise, aber zumindest sehr einfach:
Ich benutze Xubuntu 14.04 und OpenVPN-Paket aus der Hauptquelle. In Einstellungen> System> Netzwerk habe ich die vorinstallierte DNS-Adresse
127.0.1.1
durch die von Google ersetzt.8.8.8.8
Jetzt kann ich den gesamten Datenverkehr über den VPN-Server sehen.In der Tabelle von Wireshark fehlt eine Zeichenfolge wie DNS: Alle Daten werden wie TCP über einen verschlüsselten Kanal übertragen. Ich kann DHCP- und DNS-Datenverkehr sehen, wenn ich mir
tun0
(Notebooks intern) anschaue . Wenn ich denwlan0
Datenverkehr (extern zwischen Notebook und WLAN-Router) untersuche, erhalte ich nur graue TCP-Pakete.Ich denke, es passiert, weil die DNS-Abfrage bei der Dekodierung von Zeichen zu Zahlen nicht benötigt wird und wie ein gewöhnliches Datenpaket in einem gemeinsamen Stream abläuft.
Ich werde froh sein, Ihre Überlegungen zu kennen, es wird nicht überraschen, wenn ich völlig falsch liege
quelle
Fügen Sie der Serverkonfigurationsdatei die folgende Anweisung hinzu:
Wenn sich Ihre VPN-Einrichtung über ein drahtloses Netzwerk befindet, in dem sich alle Clients und der Server im selben drahtlosen Subnetz befinden, fügen Sie das lokale Flag hinzu:
Wenn Sie die Option "Redirect-Gateway" auf Clients übertragen, wird der gesamte IP-Netzwerkverkehr, der von Client-Computern ausgeht, über den OpenVPN-Server geleitet. Der Server muss so konfiguriert werden, dass er mit diesem Datenverkehr umgehen kann, z. B. indem er per NAT an das Internet oder über den HTTP-Proxy des Servers geleitet wird.
Unter Linux könnten Sie einen Befehl wie den folgenden verwenden, um den VPN-Client-Datenverkehr zum Internet zu NAT:
Dieser Befehl setzt voraus, dass das VPN-Subnetz 10.8.0.0/24 ist (der Server-Direktive in der OpenVPN-Serverkonfiguration entnommen) und dass die lokale Ethernet-Schnittstelle eth0 ist.
Wenn das Redirect-Gateway verwendet wird, leiten OpenVPN-Clients DNS-Abfragen über das VPN weiter, und der VPN-Server muss sie verarbeiten. Dies kann erreicht werden, indem eine DNS-Serveradresse an verbundene Clients gesendet wird, die ihre normalen DNS-Servereinstellungen während der Zeit, in der das VPN aktiv ist, ersetzen. Zum Beispiel:
Windows-Clients (oder Nicht-Windows-Clients mit einigen zusätzlichen clientseitigen Skripten) werden so konfiguriert, dass 10.8.0.1 als DNS-Server verwendet wird. Als DNS-Serveradresse kann jede Adresse verwendet werden, die von Clients aus erreichbar ist.
quelle
Wenn Ihr OpenVPN-Client unter Windows 10 (oder ähnlichem) ausgeführt wird, müssen Sie auf ein anderes Problem achten, nämlich die verbindliche Reihenfolge der NICs. Die vorhandenen DNS-Servereinstellungen auf dem LAN- oder Wifi-Adapter haben möglicherweise Vorrang vor den DNS-Servereinstellungen für die Tunnelschnittstelle, sodass Windows weiterhin den ursprünglichen DNS-Server verwendet, obwohl alles aus OpenVPN-Sicht korrekt eingerichtet ist.
Sie können das Problem beheben, wie in diesem Microsoft-Forumsbeitrag beschrieben.
https://social.technet.microsoft.com/Forums/windowsserver/en-US/1cc5b647-6e51-482b-8998-ac5c3900938c/how-to-force-vpn-clients-to-use-the-dnsserver-from- ihr-vpn-adapter-nicht-der-dnsserver-von-ihrem? forum = winserverNIS
quelle
Ich hatte das gleiche Problem und fand heraus, dass die Serverkonfiguration bei Verwendung des PiVPN-Setup-Skripts für Open VPN die folgende Zeile enthält:
drücke "redirect-gateway def1 bypass-dhcp"
bereits. Auf dem IOS-Client wird alles automatisch durch den Tunnel geleitet (so steht es im Protokoll).
Auf dem Tunnelblick-Client müssen Sie diese Zeile in der client.ovpn-Zeile hinzufügen:
Redirect-Gateway def1 Bypass-DHCP
und es sollte perfekt funktionieren. Zumindest auf meinem Mac.
quelle