我用它openvpn
来连接第三方 VPN 服务。VPN 提供商拥有一个服务器池,在连接之前我不知道要使用哪个服务器,因此也不知道我的 IP 地址是什么。连接后,我想将 VPN 地址添加到规则中iptables
。我正尝试使用选项来执行此openvpn --up cmd
操作。
我已将以下内容添加到client.conf
:
script-security 2
up /etc/openvpn/up.sh
up.sh
好像:
#!/bin/bash
# wait a bit
/bin/sleep 5
# get IP address from an external web server
VPN_IP=`/usr/bin/curl https://audiomason.com/ip/`
iptables -A OUTPUT --protocol tcp --destination $VPN_IP --jump ACCEPT
启动后,手动运行时,变量VPN_IP
设置正确。在启动过程中,当脚本由 触发时,变量设置为我的 ISP 分配的地址。我也尝试使用而不是触发脚本,但这会导致超时。似乎触发脚本时路由表尚未完全设置。 up.sh
openvpn
openvpn --up
--route-up
--up
curl
有没有办法将 VPN 地址放入openvpn --up
脚本中?