我在专用服务器上安装了 OpenVPN。
使用客户端上的 Viscosity 或 Tunnelblick,我成功连接到了该服务器。
但是,经过一些测试,我意识到并非所有客户端生成的流量都会经过服务器。与其用 1000 个字来解释,我制作了一张图片:
如您所见,服务器端的黄色部分没有显示任何活动。例如,我在加载 YouTube 视频时也遇到了同样的现象。
这是我的 OpenVPN 服务器配置文件:
mode server
proto tcp
port 1199
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh1024.pem
tls-auth ta.key 0
cipher AES-256-CBC
server 10.8.0.0 255.255.255.0
push "redirect-gateway def1"
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
keepalive 10 120
client-to-client
user nobody
group nogroup
chroot /etc/openvpn/jail
persist-key
persist-tun
comp-lzo
verb 3
mute 20
status openvpn-status.log
以下是客户端 .opvn 配置文件:
client
dev tun
proto tcp
remote MY.SER.VER.IP 1199
resolv-retry infinite
cipher AES-256-CBC
ca ca.crt
cert client1.crt
key client1.key
tls-auth ta.key 1
nobind
persist-key
persist-tun
comp-lzo
verb 3
知道什么地方出了问题吗?
编辑:
我还尝试创建以下 iptables 规则(位于openvpn.net 如何页面):
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
这并没有改变我的问题。但是,在使用时我看不到任何新规则iptables --list
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
答案1
使用 Viscosity.. 只需覆盖由 vpn 服务器推送的路由.. 编辑连接配置 -> 网络 -> 通过 vpn 连接发送所有流量
答案2
好吧,Mike 的回答给了我线索。粘度确实会覆盖一些设置。
解决方案是在中添加重定向命令额外的 OpenVPN 配置命令.
为此,编辑您的连接,转到先进的选项卡,并添加push "redirect-gateway def1"
:
正如 Mike 所说,别忘了检查通过 vpn 连接发送所有流量在“网络”选项卡中:
答案3
要使用 iptables 查看 nat 流量,请使用 iptables -L -x -n -v -t nat
它将产生如下输出:
Chain PREROUTING (policy ACCEPT 18025 packets, 1535609 bytes)
pkts bytes target prot opt in out source destination
Chain POSTROUTING (policy ACCEPT 5580 packets, 335412 bytes)
pkts bytes target prot opt in out source destination
1575 125569 SNAT all -- * em1 10.0.0.10 0.0.0.0/0 /* [email protected] */ to:77.245.64.130
833 93632 SNAT all -- * em1 10.0.0.6 0.0.0.0/0 /* [email protected] */ to:77.245.64.130
6585 477765 MASQUERADE all -- * em1 0.0.0.0/0 0.0.0.0/0
Chain OUTPUT (policy ACCEPT 12118 packets, 810032 bytes)
pkts bytes target prot opt in out source destination