我有一个运行 OpenVPN 的设备eth0
(连接到互联网),tun0
连接到 VPN,并wlan0
运行带有客户端的 hostapd。
我希望所有来自客户端的流量都通过 VPN,但本地系统的任何流量都不要通过。我尝试过使用table 3
iptables复制路由ip route
并在其中标记,以及进行许多其他迭代,但我似乎唯一能做到这一点的方法是0.0.0.0
在主表中使用路由,这会强制本地系统上的所有流量也通过 VPN。
所以,我现在正在运行的是基本操作:
sudo iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE
sudo iptables -A FORWARD -i tun0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo iptables -A FORWARD -i wlan0 -o tun0 -j ACCEPT
如果我使用
sudo openvpn --config /etc/openvpn/server/server.ovpn --daemon
当然,一切都正常,只是本地系统上的流量也要通过 VPN。
如果我使用
sudo openvpn --config /etc/openvpn/server/server.ovpn --daemon --pull-filter ignore redirect-gateway --route-nopull --route-noexec
然后本地系统继续通过eth0,但是来自wlan0的伪装流量被阻止。
有什么建议么?