目标:将所有信息(网页浏览、视频游戏、ftp/tftp 流量等)通过远程网络传输,然后再退出到互联网。我能够让默认网关正常工作,但无法解析任何 IP 地址。我的配置如下。问题可能是防火墙问题,但由于我能够连接/ping vpn 服务器,因此任何退出的流量都应该由路由器以与 vpn 服务器本身请求该信息相同的方式处理,不是吗?
客户:
client
dev tun
proto udp
remote RemostHost.net 1192
resolv-retry infinite
nobind
persist-key
persist-tun
ca "C:\\Program Files\\OpenVPN\\config\\bot\\ca.crt"
cert "C:\\Program Files\\OpenVPN\\config\\bot\\Damien-Laptop.crt"
key "C:\\Program Files\\OpenVPN\\config\\bot\\Damien-Laptop.key"
ns-cert-type server
comp-lzo
redirect-gateway
# Set log file verbosity.
verb 3
服务器:
port 1192
proto udp
dev tun
ca "C:\\Program Files (x86)\\OpenVPN\\config\\ca.crt"
cert "C:\\Program Files (x86)\\OpenVPN\\config\\Server.crt"
key "C:\\Program Files (x86)\\OpenVPN\\config\\Server.key" # This file should be kept secret
dh "C:\\Program Files (x86)\\OpenVPN\\config\\dh1024.pem"
server 10.53.0.0 255.255.255.240
ifconfig-pool-persist ipp.txt
keepalive 10 120
comp-lzo
;max-clients 100
;user nobody
;group nobody
persist-key
persist-tun
status openvpn-status.log
push "redirect-gateway"
route 192.168.1.1 255.255.255.0
push "route 192.168.0.0 255.255.255.0"
keepalive 10 60
verb 3
;mute 20
答案1
为了绕过本地 DNS 服务器,请在您的 VPN 服务器上安装 DNS 中继(抱歉,不知道 Windows 是否有),并将以下选项添加到您的服务器配置中:
push "dhcp-option DNS 10.53.0.1"
或者,如果您信任第三方 DNS 服务器,则可以使用类似 Google DNS 的服务器:
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
当然,对 Google 的 DNS 请求仍然会通过隧道传输。
另一方面,如果您对本地 DNS 感到满意,那么您也可以将标志添加bypass-dns
到redirect-gateway
。
答案2
如果您在 Windows 上运行 OpenVPN 服务器,则看起来您需要指定“dev-node”而不是“dev”,就像您在服务器配置的第三行中那样。
以下是来自 OpenVPN.net 客户端/服务器示例配置。
# Windows needs the TAP-Windows adapter name
# from the Network Connections panel if you
# have more than one. On XP SP2 or higher,
# you may need to selectively disable the
# Windows firewall for the TAP adapter.
# Non-Windows systems usually don't need this.
;dev-node MyTap
另请参阅: 回复:[Openvpn-users] --dev 与 --dev-node
希望有帮助!