目标:能够通过 OpenVPN 服务器路由所有流量,并能够与远程 DNS(127.128.129.130)和远程 LAN(12x.xxx)进行通信
我已添加到 OpenVPN 客户端配置文件redirect-gateway def1
。
如上所述这里,我已将三条规则添加到 iptables 中(以防帖子被删除):
iptables -I FORWARD -i tun0 -o eth0 \
-s 10.8.0.0/24 -m conntrack --ctstate NEW -j ACCEPT
iptables -I FORWARD -m conntrack --ctstate RELATED,ESTABLISHED \
-j ACCEPT
iptables -t nat -I POSTROUTING -o eth0 \
-s 10.8.0.0/24 -j MASQUERADE
效果很好,只是我无法解析私有 DNS 上的主机。这可能是由于第一个 FORWARD 规则将所有流量从 转发tun0
到eth0
。
我该如何做才能使远程 DNS 和 LAN 的流量不消失?
答案1
看来您没有使用远程 DNS 服务器。您也可以使用 openvpn 设置 DNS 服务器。然后您的私有网络的名称解析应该可以正常工作。
push "dhcp-option DNS 127.128.129.130"
看这里: https://openvpn.net/community-resources/pushing-dhcp-options-to-clients/