VPN: Shrew und Internet komplett über Fritzbox routen

ahh! dann hat alles geklappt - Aller Datenverkehr läuft nun über die FritzBox.
Die Fehlermeldung erhälst Du aus folgendem Grund:
Auch die Anfragen an die DNS-Server laufen jetzt über die FritzBox. Aber die DNS-Server von Vodafone beantworten nur DNS-Anfragen aus dem eigenen Netz. Die kommen jetzt aber aus dem Netz des DSL-Providers, an dem die FritzBox angeschlossen ist.

Du kannst das testen: gib ping www.google.de ein, bevor Du die VPN-Verbindung aufbaust und notiere die IP von www.google.de
Dann baust Du die VPN-Verbindung auf und pingst diesmal direkt auf die notierte IP von www.google.de - das wird funktionieren.

Was kann man machen, damit die Namensauflösung auch funktioniert?
Dazu gibt es mehrere Möglichkeiten:

1. Host-Routen zu DNS-Servern
Du fügst der Routingtabelle Host-Routen über Vodafone zu den DNS-Servern hinzu. Dann werden alle DNS-Anfragen an dem VPN-Tunnel vorbei geroutet.
Vorteil: ist schneller als die andere Variante,
Nachteile:
a) Du kannst die lokale Namensauflösung der Fritz!Box nicht verwenden. fritz.box oder mein-pc.fritz.box funktoiniert dann nicht.
b) vodafone sieht, für welche Webadressen Du DNS-Anfragen stellst, also welche Webseiten Du aufrufen willst.

2. FritzBox als DNS-Server
Du setzt den DNS-Server-Eintrag in Windows nach dem Tunnelaufbau auf die IP der FritzBox (192.168.178.1, wenn die IP der FritzBox nicht geändert wurde). Nachteil: ist etwas langsamer, weil alle DNS-Anfragen durch den Tunnel müssen.

3. öffentlichen DNS-Server nutzen
Du nutzt immer einen festen von überall erreichbaren DNS-Server, ich glaube OpenDNS stellt so einen zur Verfügung.
Nachteile: langsamer als 1., vielleicht gleich schnell wie 2.?
Vorteil: einfach zu konfigurieren.

Ich hatte überlegt, das in mein Skript mit aufzunehmen, habe es aber doch nicht getan, weil die 3. Alternative, nichts zu tun je nach Netzwerkkonfiguration auch funktionieren kann.
 
[Edit frank_m24: Mehrere Beiträge zusammengefasst. Man kann seine Beiträge auch editieren.]
Wenn ich nslookup aufrufe bekomme ich DNS request timeouts, der Nameserver der geantwortet hat ist der vom Provider.

[Beitrag 2:]
Kann man den DNS-Server auch per Skript setzen (dann würde ich die FritzBox fragen, da habe ich die IP immer), oder muss ich mich da durch Dialoge klicken?
 
[Edit frank_m24: Mehrere Beiträge zusammengefasst. Man kann seine Beiträge auch editieren.]
der DNS-Server vom Provider wurde angefragt. Er hat aber nicht geantwortet, weil die Anfrage nicht aus seinem Netz kam, deswegen hast Du ja anstelle einer Antwort ein timeout erhalten.

Gruß,
Pfeffer.

[Beitrag 2:]
ja, man kann den DNS-Server grundsätzlich per Skript setzen.
Es geht mit
Code:
netsh interface ip add dns "<interface>" d.n.s.i.p
, wobei anstelle von <interface> der Name des (virtuellen) Netzwerkadapters eingetragen werden sollte, bei dem der DNS-Server hinzugefügt werden soll.
so müsste es jedenfalls gehen.

Gruß,
Pfeffer.
 
Habe die IP der FritzBox im ShrewClient auf dem Name Resolution Tab als feste Adresse eingegeben, jetzt funktioniert die Namensauflösung im Browser, aber nslookup funktioniert noch nicht (fagt immer noch beim Provider an). Gibt es da einen Unterschied zwischen Browser und cmd? Im Browser bekomme ich bei http://www.heise.de/ip nun endlich meine dyndns ip angezeigt, das ist doch mal ein Fortschritt, vielen vielen Dank für Deine ausführliche Hilfestellung.

Grüße,
Andreas.
 
ach ja richtig, hatte ich völlig vergessen, dass man es in Shrew ja selbst einstellen kann.
Ich vermute, dass der Unterschied nicht zwischen Browser und cmd/nslookup liegt, sondern dass der Browser die IP von heise gecacht hat.
Hast Du auch "enable DNS" eingeschaltet in Shrew-Client?

Gruß,
Pfeffer.
 
[Edit frank_m24: Mehrere Beiträge zusammengefasst. Man kann seine Beiträge auch editieren.]
ping google.de und tracert google.de funktioniert auch, ipconfig /flushdns bring für nslookup nix.

[Beitrag 2:]
Ja, enable DNS habe ich bei Shrew eingeschaltet. Es gibt auch noch einen Windows Dienst, der DNS Abfragen cached, den werde ich jetzt mal abschalten, mal sehen ob es dann mit nslookup klappt.

[Beitrag 3:]
nslookup weigert sich weiterhin.

[Beitrag 4:]
habe noch ein Flag -d2 für nslookup gefunden, kann aber mit der Ausgabe wenig anfangen. Ich bin aber nicht alleine mit dem ping/nslookup problem:
http://forums.techarena.in/server-dns/923710.htm

[Beitrag 5:]
Hate ich inzwischen korrigiert:
Code:
n:network-natt-port:4500
n:network-natt-rate:15
n:network-frag-size:540
 
Hallo,

könntet ihr bitte mal beginnen, die "Ändern"-Funktion des Forums zu benutzen, oder noch besser: Vorher nachdenken, was man schreiben will? Bis zu 5 Beiträge in in wenigen Minuten muss doch nun wirklich nicht sein.
 
Also, ich hab hier die Anweisungen befolgt und mit Shrew den Tunnel erstellt. Funktioniert so weit, aber ich kann nicht auf die irgendwas im Netzwerk zugreifen. In meinem Netzwerkordner sollte ich doch die verbundenen Computer sehen, oder?

Habe Windows 7 64-bit...

Danke schon mal für die Tips...
 
Hallo,

In meinem Netzwerkordner sollte ich doch die verbundenen Computer sehen, oder?
Nein, dazu gehören Broadcasts, und die werden über VPN nicht übertragen. Du musst schon wissen, worauf du zugreifen willst.
Details über die Suchfunktion, die Frage wurde schon ziemlich oft gestellt.
 
Win7 auf FB 7170

Hallo zusammen, ich hoffe es verfolgt noch jemand diesen Thread, leider komme ich was die DNS auflösung angeht absolut nicht weiter.

Lustigerwiese funktioniert bei mir das Routing via FB ins Internet übrigens nur, wenn ich due Policy settings weg lasse (0.0.0.0 / 0.0.0.0)

Ob mit oder ohne, DNS geht jedoch in keinem Fall. Versuche ich den DNS Server via netsh auf 192.168.178.1 zu setzen, dann bekomme ich nach kurzer Zeit die Meldung, dass dieser nicht erreichbar sei. Zugriff ins LAN der FB geht hingegen tadellos.

Setze ich den DNS im Shrew Client, dann hat das absolut keine Auswirkung.

Gruß & Danke für weitere Ideen.
 
Du kannst im Shrew-Client unter dem Reiter "Name Resolution" "Enable DNS" aktivieren und die lokale IP der FritzBox (wenn nicht geändert: 192.168.178.1) eintragen. Das funktioniert bei mir Problemlos. Ich würde aber erwarten, dass das per netsh auch geht (wenn man es per netsh erst setzt, wenn die VPN-Verbindung steht und danach wieder löscht). BTW: wie lautet Dein Befehl für netsh? - würde mich mal interessieren, vielleicht kann ich das irgendwann gebrauchen.

Vielleicht hängt es damit zusammen, dass Du 0.0.0.0 nicht als Policy in Shrew eintragen musst (habe ich das richtig verstanden?). Das wundert mich - vermutlich passt Deine FritzBox-Konfig nocht nicht richtig. Sie muss anders sein als für den Fritz!Fernzugang. Wie sie sein muss, ist meinem Beitrag auf der ersten Seite dieses Threads zu entnehmen.

Gruß,
Pfeffer.
 
meine configs...

Hallo, das Thema wird immer besser, mittlerweile bekomme ich eine DNS Auflösung hin, indem ich den offenen DNS 85.214.73.63 im VPN Client eingetragen habe. Das ist zumindest mal ein Workaround.

Hier meine FritzBox Config:
Code:
/*
 * Sat Feb 13 17:34:36 2010
 */

vpncfg {
        connections {
                enabled = yes;
                conn_type = conntype_user;
                name = "[email protected]";
                always_renew = no;
                reject_not_encrypted = no;
                dont_filter_netbios = yes;
                localip = 0.0.0.0;
                local_virtualip = 0.0.0.0;
                remoteip = 0.0.0.0;
                remote_virtualip = 192.168.178.201;
                remoteid {
                        user_fqdn = "[email protected]";
                }
                mode = phase1_mode_aggressive;
                phase1ss = "all/all/all";
                keytype = connkeytype_pre_shared;
                key = "HIER_STEHT_MEIN_SECRET_KEY";
                cert_do_server_auth = no;
                use_nat_t = yes;
                use_xauth = no;
                use_cfgmode = no;
                phase2localid {
                        ipnet {
                                ipaddr = 0.0.0.0;
                                mask = 0.0.0.0;
                        }
                }
                phase2remoteid {
                        ipaddr = 192.168.178.201;
                }
                phase2ss = "esp-all-all/ah-none/comp-all/pfs";
                accesslist = 
                             "permit ip any 192.168.178.201 255.255.255.255";
        }
        ike_forward_rules = "udp 0.0.0.0:500 0.0.0.0:500", 
                            "udp 0.0.0.0:4500 0.0.0.0:4500";
}
und hier meine Shrew Client Config:
Code:
n:version:2
n:network-ike-port:500
n:network-mtu-size:1380
n:client-addr-auto:1
n:network-natt-port:4500
n:network-natt-rate:15
n:network-frag-size:540
n:network-dpd-enable:1
n:client-banner-enable:1
n:network-notify-enable:1
n:client-wins-used:0
n:client-wins-auto:0
n:client-dns-used:1
n:client-dns-auto:0
n:client-splitdns-used:0
n:client-splitdns-auto:0
n:phase1-dhgroup:2
n:phase1-life-secs:3600
n:phase1-life-kbytes:0
n:vendor-chkpt-enable:0
n:phase2-life-secs:3600
n:phase2-life-kbytes:0
n:policy-nailed:0
n:policy-list-auto:1
n:phase1-keylen:256
n:phase2-keylen:256
s:network-host:meine_fritzbox.domain.com
s:client-auto-mode:pull
s:client-iface:virtual
s:network-natt-mode:enable
s:network-frag-mode:enable
s:client-dns-addr:85.214.73.63
s:auth-method:mutual-psk
s:ident-client-type:ufqdn
s:ident-server-type:address
s:ident-client-data:[email protected]
b:auth-mutual-psk:HIER_STEHT_MEIN_SECRET_KEY
s:phase1-exchange:aggressive
s:phase1-cipher:aes
s:phase1-hash:sha1
s:phase2-transform:esp-aes
s:phase2-hmac:sha1
s:ipcomp-transform:deflate
n:phase2-pfsgroup:2
Wenn ich nun nur noch die verflixte Auflösung via DNS forwarding der FritzBox hinekommen würde, dann wäre alles wunderbar gelöst. Es klappt nämlich hier sogar via UMTS, was ich mit OpenVPN absolut nicht hinbekommen habe.

Mein Versuch den DNS des heimischen DSL Anbieters zu verwenden schlug auch fehl.

Was mich ebenfalls verwundert, wenn ich nen tracert auf heise.de starte, dann bekomme ich die folgende Antwort:


Routenverfolgung zu heise.de [193.99.144.80] über maximal 30 Abschnitte:

1 204 ms 184 ms 189 ms redirector.heise.de [193.99.144.80]
2 247 ms 239 ms 239 ms redirector.heise.de [193.99.144.80]
3 235 ms 209 ms 219 ms redirector.heise.de [193.99.144.80]
4 245 ms 229 ms 218 ms redirector.heise.de [193.99.144.80]
5 222 ms 219 ms 218 ms redirector.heise.de [193.99.144.80]

Gruß!
 
Zuletzt bearbeitet von einem Moderator:
hmm - bis auf das von Dir erwähnt fehlende 0.0.0.0/0.0.0.0 sehe ich da auf anhieb keinen Fehler.
Die seltsame Tracert-Ausgabe habe ich auch. Offenbar erhöht Shrew oder die FritzBox das TTL-Feld der IP-Pakete, so dass der Trick, mit dem Tracert arbeitet (die TTL auf 1, 2, 3 usw. zu setzen) nicht mehr. Habe das aber noch nicht genauer analysiert.

Was heißt denn "DNS funktioniert nicht"? Wie hast Du es genau getestet? Ich würde mir den Verkehr mal mit Wireshark angucken, dann kann man sehen, was wirklich passiert.

Ansonsten probiere mal auf der Commandozeile:
nslookup web.de 192.168.178.1
das sagt nslookup, es soll den DNS-Server 192.168.178.1 verwenden. Wenn das funktioniert, dann muss noch weiter in win7 gesucht werden, wie man den DNS richtig einstellt, aber der Tunnel funktioniert dann schonmal auch für DNS von der FritzBox.

Gruß,
Pfeffer.
 
Dns

Hallo,

sorry, das hätte ich ggf. erwähnen sollen, hatte ich so auch schon getestet:

C:\>nslookup web.de 192.168.178.1
DNS request timed out.
timeout was 2 seconds.
Server: UnKnown
Address: 192.168.178.1

DNS request timed out.
timeout was 2 seconds.
DNS request timed out.
timeout was 2 seconds.
DNS request timed out.
timeout was 2 seconds.
DNS request timed out.
timeout was 2 seconds.
*** Zeitüberschreitung bei Anforderung an UnKnown.

Ich habe mittlerweile die Win 7 Firewall im Verdacht. Leider tue ich mich mit dem Gedanken die bei UMTS Nutzung zu deaktivieren etwas schwer.
Jedenfalls befinde ich mich im moment im Status "oeffentliches Netz" und würde nun nächsten bekannten Netz hinter einem Router die FW zu deaktivieren und dann nochmal die Einwahl zu testen.
Wireshark ist natürlich auch ein guter Ansatz.

Gruß aus dem ICE
 
Vielen Dank Pfeffer. Ist zwar schon 2 Jahre her und der letzte Beitrag hier auch schon 1 Jahr, aber hast mir wirklich sehr weitergeholfen. Erst hatte ich den Thread über Fritzfernzugang vpn vollständig gelesen und nach einem Querverweise den hier. Hab mich jetzt schließlich für Shrew entschieden weil ich eine Möglichkeit wollte auch die DNS-Anfragen durch den verschlüsselten Tunnel zu schicken.

Hab mir jetzt eine Fritzbox cgf mit 2 Profilen gemacht, einer VPN_Only (avm standard) und einer VPN_Internet (auch Internet+DNS Verkehr) und in Shrew dann 2 passende Profile dazu erstellt.

Und was soll ich sagen... hat auf Anhieb perfekt funktioniert!! :)

Übrigens noch eine Info: Mit der neuen Shrew Version 2.1.7 kann man auch die include policy 0.0.0.0 0.0.0.0 direkt hinzufügen! Die Umwege über Import-Export oder Registry sind nun also nicht mehr notwendig. Du kannst ja deinen Startpost entsprechend anpassen.

Also nochmal vielen Dank!

Beste Grüße.
 
@foxm2k: könntest du bitte deinen beiden beispielkonfigs posten?
 
Hallo das_ubersoldat,

kann ich machen.

VPN_Only (Nur Verbindung zum heimischen Rechnernetz)
Code:
n:version:2
s:network-host:xxx.dyndns.org
n:network-ike-port:500
s:client-auto-mode:pull
n:network-mtu-size:1380
s:client-iface:virtual
n:client-addr-auto:1
s:network-natt-mode:enable
n:network-natt-port:4500
n:network-natt-rate:15
s:network-frag-mode:enable
n:network-frag-size:540
n:network-dpd-enable:1
n:client-banner-enable:1
n:network-notify-enable:1
n:client-wins-used:0
n:client-wins-auto:1
n:client-dns-used:0
n:client-dns-auto:0
n:client-splitdns-used:0
n:client-splitdns-auto:0
s:auth-method:mutual-psk
s:ident-client-type:ufqdn
s:ident-server-type:address
s:ident-client-data:VPN_Only
b:auth-mutual-psk:R2ViMGViZGZiOD4yN3hjMzU6MDLIMjdiM0NlMjA4MGQ=
s:phase1-exchange:aggressive
n:phase1-dhgroup:2
s:phase1-cipher:aes
n:phase1-keylen:256
s:phase1-hash:sha1
n:phase1-life-secs:3600
n:phase1-life-kbytes:0
n:vendor-chkpt-enable:0
s:phase2-transform:esp-aes
n:phase2-keylen:256
s:phase2-hmac:sha1
s:ipcomp-transform:deflate
n:phase2-pfsgroup:2
n:phase2-life-secs:3600
n:phase2-life-kbytes:0
s:policy-level:auto
n:policy-nailed:0
n:policy-list-auto:0
s:policy-list-include:192.168.123.0 / 255.255.255.0

VPN_Internet (zusätzlich gehn die DNS-Abfragen durch den Tunnel)
Code:
n:version:2
n:network-ike-port:500
n:network-mtu-size:1380
n:client-addr-auto:1
n:network-natt-port:4500
n:network-natt-rate:15
n:network-frag-size:540
n:network-dpd-enable:1
n:client-banner-enable:1
n:network-notify-enable:1
n:client-wins-used:0
n:client-wins-auto:1
n:client-dns-used:1
n:client-dns-auto:0
n:client-splitdns-used:0
n:client-splitdns-auto:0
n:phase1-dhgroup:2
n:phase1-keylen:256
n:phase1-life-secs:3600
n:phase1-life-kbytes:0
n:vendor-chkpt-enable:0
n:phase2-keylen:256
n:phase2-life-secs:3600
n:phase2-life-kbytes:0
n:policy-nailed:0
n:policy-list-auto:0
s:network-host:xxx.dyndns.org
s:client-auto-mode:pull
s:client-iface:virtual
s:network-natt-mode:enable
s:network-frag-mode:enable
s:client-dns-addr:192.168.123.1
s:auth-method:mutual-psk
s:ident-client-type:ufqdn
s:ident-server-type:address
s:ident-client-data:VPN_Internet
b:auth-mutual-psk:e2Q3YmZ4OThlMDljZWM/YTdaTRVjNGZhZTc6TWUzYzhmNw==
s:phase1-exchange:aggressive
s:phase1-cipher:aes
s:phase1-hash:sha1
s:phase2-transform:esp-aes
s:phase2-hmac:sha1
s:ipcomp-transform:deflate
n:phase2-pfsgroup:2
s:policy-level:auto
s:policy-list-include:0.0.0.0 / 0.0.0.0

Auf seiten der FB kann man beides in einer .cfg unterbringen wenn man im "connections {" unter den ersten noch einen zweiten Verbindungsblock anlegt.

Grüße,

f0x
 
Hallo Pfeffer,

auch von mir einen herzlichen Dank für die tolle Anleitung. Es hat zwar nicht problemlos geklappt, da ich trotz laufendem Tunnel keine Webseiten aufrufen konnte. Danke Deiner Anleitung habe ich aber herausgefunden, daß es mit der DNS Auflösung zu tun hatte und schließlich hat mir dieser Thread hier weitergeholfen:

Du kannst im Shrew-Client unter dem Reiter "Name Resolution" "Enable DNS" aktivieren und die lokale IP der FritzBox (wenn nicht geändert: 192.168.178.1) eintragen. Das funktioniert bei mir Problemlos. Ich würde aber erwarten, dass das per netsh auch geht (wenn man es per netsh erst setzt, wenn die VPN-Verbindung steht und danach wieder löscht). BTW: wie lautet Dein Befehl für netsh? - würde mich mal interessieren, vielleicht kann ich das irgendwann gebrauchen.

Jetzt kann ich aus China durch die GreatFireWall Facebook und Youtube aufrufen!

Gruß

Alex
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.