我在 ubuntu 上有一个 OpenVPN 服务器,在 windows7 x64 上有一个客户端 (Openvpn 2.1_rc19)。
连接已建立,我可以使用它。但是并非所有流量都通过 openvpn 接口路由,因此我在不同的服务器上有不同的接口。
例如:showipaddress.com IP=208.99.113.122 只能看到我的 vpn 服务器的外部 ip
whatsmyip.com IP=208.87.33.150 可以看到我常规拨号连接的 ip
我猜这是一个路由问题,所以她是从 Windows 客户端进行“路由打印”
Schnittstellenliste
27...00 ff 1a c3 26 d6 ......TAP-Win32 Adapter V9
26...........................Vodafone
1...........................Software Loopback Interface 1
IPv4-Routentabelle
Aktive Routen:
Netzwerkziel Netzwerkmaske Gateway Schnittstelle Metrik
0.0.0.0 0.0.0.0 10.8.0.5 10.8.0.6 4
0.0.0.0 0.0.0.0 Auf Verbindung 109.84.XXX.XXX 31
10.8.0.4 255.255.255.252 Auf Verbindung 10.8.0.6 259
10.8.0.6 255.255.255.255 Auf Verbindung 10.8.0.6 259
10.8.0.7 255.255.255.255 Auf Verbindung 10.8.0.6 259
109.84.XXX.XXX 255.255.255.255 Auf Verbindung 109.84.XXX.XXX 286
127.0.0.0 255.0.0.0 Auf Verbindung 127.0.0.1 4531
127.0.0.1 255.255.255.255 Auf Verbindung 127.0.0.1 4531
127.255.255.255 255.255.255.255 Auf Verbindung 127.0.0.1 4531
128.0.0.0 128.0.0.0 10.8.0.5 10.8.0.6 4
188.40.XXX.XXX 255.255.255.255 Auf Verbindung 109.84.XXX.XXX 30
224.0.0.0 240.0.0.0 Auf Verbindung 109.84.XXX.XXX 31
255.255.255.0 255.255.255.0 10.8.0.5 10.8.0.6 4
255.255.255.255 255.255.255.255 Auf Verbindung 127.0.0.1 4531
255.255.255.255 255.255.255.255 Auf Verbindung 10.8.0.6 259
255.255.255.255 255.255.255.255 10.8.0.5 10.8.0.6 4
255.255.255.255 255.255.255.255 Auf Verbindung 109.84.XXX.XXX 286
===========================================================================
St„ndige Routen:
Keine
109.84.XXX.XXX 是我的拨号(umts)的外部 ip 188.40.XXX.XXX 是我的服务器的外部 ip 地址 10.8.0.0 是 openvpn 网络,其中 6 是客户端。
如果我删除第二个 0.0.0.0 条目,这些站点将不再工作,而那些通过 vpn 路由的站点仍然可以工作。
我必须做什么才能使一切都通过 openvpn 路由?
编辑:服务器配置
local 188.40.XXX.XXX
port 1194
proto tcp
dev tun
tun-mtu 1544
key /etc/openvpn/examples/easy-rsa/2.0/keys/server.key
ca /etc/openvpn/examples/easy-rsa/2.0/keys/ca.crt
cert /etc/openvpn/examples/easy-rsa/2.0/keys/server.crt
dh /etc/openvpn/examples/easy-rsa/2.0/keys/dh2048.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
keepalive 10 120
comp-lzo
max-clients 5
persist-key
persist-tun
status /tmp/openvpn-status.log
log-append /var/log/openvpn.log
verb 4
push "redirect-gateway def1"
push "dhcp-option DNS 145.253.2.11"
push "dhcp-option DNS 145.253.2.75"
push "dhcp-option DNS 208.67.222.222"
push "dhcp-option DNS 208.67.220.220"
客户端配置:
client
dev tun
proto tcp
remote 188.40.XXX.XXX 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert client.crt
key client.key
ns-cert-type server
cipher AES-128-CBC
comp-lzo
verb 4
答案1
在您的服务器配置中,您当前可能具有该设置redirect-gateway
。尝试将其替换为redirect-gateway def1
。
此选项将创建 2 条路由0.0.0.0/1
和 ,128.0.0.0/1
而不是 的路由0.0.0.0/0
。由于这些路由更具体,因此应使用它们来代替您配置的默认网关。
答案2
现在它起作用了。
我删除了拨号给我的默认路由,只添加了一条到我的 openvpn 服务器的路由。这招奏效了,因为现在 openvpn 可以将所有路由推送给我,包括默认路由 :)