"Dynamisches" Routing deaktivieren

dafreak

Member
[gelöst]"Dynamisches" Routing deaktivieren

Hi,

ich hab ein kleines Problem. Ich versuche mich von meinem MacOS X auf meinen Server per openvpn zu verbinden. Doch irgendwie spinnt die Konfiguration des openvpn-clients.
Anscheinend liegt es daran das MacOS X sich die einzelnen Hosts des Routings explizit in die Routingtabelle schreibt. Deshalb ist kein direktes "redirect-gateway" möglich. Ich muss immer openvpn ausschalten um ins internet zu kommen.

ich poste mal die Routingtabelle
Code:
daMacBook:~ dasystem$ netstat -rn
Routing tables

Internet:
Destination        Gateway            Flags    Refs      Use  Netif Expire
0/1                10.77.1.1          UGSc        1        0   tap0
default            10.78.0.200        UGSc        0        0    en1
10.77/23           link#7             UC          5        0   tap0
10.77.0.4          0:16:3e:44:e9:1c   UHLW        1      206   tap0    987
10.77.0.99         0:90:27:c3:10:88   UHLW        0        1   tap0   1132
10.77.0.100        0:10:dc:a9:66:f7   UHLW        0      130   tap0    986
10.77.1.1          link#7             UHLW        4        0   tap0
10.77.1.255        ff:ff:ff:ff:ff:ff  UHLWb       0        3   tap0
10.78/24           link#6             UCS         2        0    en1
10.78.0.100        127.0.0.1          UHS         0        0    lo0
10.78.0.200        0:0:0:0:4:1        UHLW        2      639    en1   1178
10.78.0.255        ff:ff:ff:ff:ff:ff  UHLWb       0        9    en1
127                127.0.0.1          UCS         0        0    lo0
127.0.0.1          127.0.0.1          UH          4      360    lo0
128.0/1            10.77.1.1          UGSc        2       14   tap0
169.254            link#6             UCS         0        0    en1

Kann man dieses "halb"-dynamische Routing irgendwie deaktivieren?
 
Zuletzt bearbeitet:
Meinste Du folgende Einstellung in der openvpn server.conf?
Code:
# If enabled, this directive will configure
# all clients to redirect their default
# network gateway through the VPN, causing
# all IP traffic such as web browsing and
# and DNS lookups to go through the VPN
# (The OpenVPN server machine may need to NAT
# the TUN/TAP interface to the internet in
# order for this to work properly).
# CAVEAT: May break client's network config if
# client's local DHCP server packets get routed
# through the tunnel.  Solution: make sure
# client's local DHCP server is reachable via
# a more specific route than the default route
# of 0.0.0.0/0.0.0.0.
;push "redirect-gateway"

Hab ich hier rauskopiert: http://sarwiki.informatik.hu-berlin.de/OpenVPN_(deutsch)#server.conf

Oder wenn nicht: wie sieht Deine Konfiguration aus?
 
ich habe redirect-gateway direkt in der client.conf stehen
Code:
client 
dev tap 
proto udp 
remote 10.78.0.200 1194 
resolv-retry infinite 
nobind 
redirect-gateway def1
user nobody 
group nogroup 
persist-key 
persist-tun 
ca /opt/keys/client1/ca.crt 
cert /opt/keys/client1/client1.crt 
key /opt/keys/client1/client1.key 
comp-lzo 
verb 3
 
In meiner Client Konfiguration hab ich kein
Code:
redirect-gateway def1

allerdings läuft es bei mir über
Code:
dev tun

Ich bin stets mit diesem Rechner mit 2 Netzen verbunden, einmal das Netz was mir mein heimischer Router per DHCP verpasst (Netz 192.168.2.0) und danach wird die Verbindung zum VPN-Gateway aufgebaut (Netz 10.8.0.0). Per Default-Route geht der Internetverkehr allerdings über den heimischen (DSL-)Router.
Soll doch bei Dir auch so laufen, oder hab ich das falsch verstanden?
 
In meiner Client Konfiguration hab ich kein
Code:
redirect-gateway def1

allerdings läuft es bei mir über
Code:
dev tun

Ich bin stets mit diesem Rechner mit 2 Netzen verbunden, einmal das Netz was mir mein heimischer Router per DHCP verpasst (Netz 192.168.2.0) und danach wird die Verbindung zum VPN-Gateway aufgebaut (Netz 10.8.0.0). Per Default-Route geht der Internetverkehr allerdings über den heimischen (DSL-)Router.
Soll doch bei Dir auch so laufen, oder hab ich das falsch verstanden?
Ich benutze das tap-interface um auch die broadcasts zu bekommen.
Das Tap-Interface mit der NIC auf dem VPN-Gateway gebridgt. Das Problem ist das er trotz der Route
Code:
0/1                10.77.1.1          UGSc        1        0   tap0
in das nicht durch das VPN routet
ich denke das passiert da er sich die Routen merkt bzw. die andere "Default"-Route priorisiert.

Könnte man die andere Route priorisieren? Ich versuch mich hier gerade durchzuschlagen mit route und netstat habe aber noch nichts gefunden
 
Zuletzt bearbeitet:
Es gibt nur eine Default Route, aber ich lass mich gerne berichtigen.

Wenn in der Routing-Tabelle
Code:
default            10.78.0.200        UGSc        0        0    en1
steht, und 10.78.0.200 der VPN-Server ist, dann is doch klar das der allgemeine Internetverkehr über den VPN-Server geht. Das macht meines Wissens nach die Einstellung
Code:
push "redirect-gateway"
in der (Server-)Konfiguration. Also kurz: OpenVPN ändert Deine Default-Route, was Du nicht willst und deswegen ändern musst.

Ich blick noch immer nicht durch was Du eigentlich erreichen willst, vermutlich weiss ich zuwenig über OpenVPN und jemand anders muss mit ran ...
 
Es gibt nur eine Default Route, aber ich lass mich gerne berichtigen.

Wenn in der Routing-Tabelle
Code:
default            10.78.0.200        UGSc        0        0    en1
steht, und 10.78.0.200 der VPN-Server ist, dann is doch klar das der allgemeine Internetverkehr über den VPN-Server geht. Das macht meines Wissens nach die Einstellung
Code:
push "redirect-gateway"
in der (Server-)Konfiguration. Also kurz: OpenVPN ändert Deine Default-Route, was Du nicht willst und deswegen ändern musst.

Ich blick noch immer nicht durch was Du eigentlich erreichen willst, vermutlich weiss ich zuwenig über OpenVPN und jemand anders muss mit ran ...
Erstmal danke für deine Antworten

Ich möchte ja tatsächlich die Default-Route ändern. 10.78.0.200 ist nicht der VPN-Server sondern macht nur ein NAT auf 10.77.0.2, da sich sonst Mac OS X die Route 10.77.0.2 10.78.0.200 merkt.

pings innerhalb der VPN-Netzes
Code:
10.77/23           link#7             UC          5        0   tap0
sind vom client aus möglich, nur die default-route funktioniert nicht richtig
Code:
0/1                10.77.1.1          UGSc        1        0   tap0

das def1-flag bedeutet nur das die default-route nicht ersetzt wird wie bei redirect-gateway ohne def1 (was übrigens auch nicht funktioniert) sondern noch eine Route hinzugefügt wird

openvpn.net/man.html schrieb:
--redirect-gateway [local] [def1]
(Experimental) Automatically execute routing commands to cause all outgoing IP traffic to be redirected over the VPN.

This option performs three steps:

(1) Create a static route for the --remote address which forwards to the pre-existing default gateway. This is done so that (3) will not create a routing loop.

(2) Delete the default gateway route.

(3) Set the new default gateway to be the VPN endpoint address (derived either from --route-gateway or the second parameter to --ifconfig when --dev tun is specified).

When the tunnel is torn down, all of the above steps are reversed so that the original default route is restored.

Add the local flag if both OpenVPN servers are directly connected via a common subnet, such as with wireless. The local flag will cause step 1 above to be omitted.

Add the def1 flag to override the default gateway by using 0.0.0.0/1 and 128.0.0.0/1 rather than 0.0.0.0/0. This has the benefit of overriding but not wiping out the original default gateway.

Using the def1 flag is highly recommended, and is currently planned to become the default by OpenVPN 2.1.
 
es lag an meinem packetfilter von dem ovpn-server
habe INPUT und FORWARD von meiner bridge freigeschaltet, ich habe gedacht input für den VPN port würde reichen
 
Zurück
Oben