仅将端口 53 重定向至 VPN

仅将端口 53 重定向至 VPN

我有一个 4G 路由器,通过 OpenVPN 连接到 VPS。

当我通过 VPS 发送所有互联网流量时,吞吐速度太低而无法使用,但当我不通过 VPN 路由任何内容时,我的 ISP 会限制 DNS 请求的数量。因此,我希望仅通过 VPN 传递端口 53,其余流量直接通过 4G 连接传递。

我认为可能有一种方法可以使用 IPTABLES 来做到这一点,但我找不到它...如能得到任何帮助,我将不胜感激,谢谢!

答案1

“普通”路由是通过目标地址完成的。您可以决定仅使用 Google DNS:

  • IPv4:8.8.8.8, 8.8.4.4
  • IPv6:2001:4860:4860::8888,2001:4860:4860::8844

然后例如针对 ipv4 发出以下命令:

ip route add 8.8.8.8/32 via 172.16.1.1 dev tun0
ip route add 8.8.4.4/32 via 172.16.1.1 dev tun0

无论目标端口是什么,到 8.8.8.8 和 8.8.4.4 的网络流量都将通过您的 VPN 发送,假设 172.16.1.1 是您的隧道网关,并且 tun0 是您的隧道设备。

请注意,发出 ipv6 路由命令有点棘手,但您可能不需要这样做。

或者,可以使用策略路由(ip 规则添加)根据防火墙标记(iptables 中的 fwmark)进行路由。但设置起来有点复杂,并且可能会增加路由器的工作负载。

相关内容