我有一个wireguard接口wg_vpn,但我不希望它是全局的,所以我在wg_vpn.conf中添加了“Table = off”这一行,以防止wg-quick修改路由表。
我还有一个openvpn/wireguard接口tun0/wg0,客户端可以通过它访问我的服务器。我创建了这些 iptables 规则:
iptables -t nat -A POSTROUTING -o wg_vpn -j MASQUERADE
iptables -A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i wg0 -o wg_vpn -j ACCEPT
ip6tables -t nat -A POSTROUTING -o wg_vpn -j MASQUERADE
ip6tables -A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
ip6tables -A FORWARD -i wg0 -o wg_vpn -j ACCEPT
但是它们不起作用,除非我通过以下方式使 wg_vpn 全局化:
ip route add default dev wg_vpn
ip -6 route add default dev wg_vpn
然后他们工作。
但是我只想将tun0/wg0转发到wg_vpn而不修改全局路由表,请问我知道如何实现吗?
提前致谢!