我在远程服务器上运行了一个 openvpn,多个客户端可以通过它访问互联网。现在它通过防火墙和 iptables 的 NAT/转发工作。
当我第一次设置它时,没有防火墙和转发/NAT,它不起作用,连接到服务器后,客户端会卡在“查找网站......”
但是,有没有办法在不使用 NAT 和防火墙/转发的情况下进行设置?优点和缺点是什么?
答案1
是的,可以不使用 NAT 进行设置。您需要为计划同时在服务器上运行的每个客户端分配一个公共 IP 地址。如今,获取这样的 IP 地址空间的成本相当高,因为 IPv4 地址空间几乎已耗尽。
然后,您需要在具有公共 IPv4 地址空间的接口和 VPN 链路之间建立一座桥,以便 VPN 客户端位于同一个广播域中。
另一个选项是在 VPN 链路私有 IP 地址和公有 IP 地址之间设置 1-1 NAT。但是,这确实需要 NAT,并且不能完全满足您的要求。
您应该学习 IP 网络的基础知识,然后您自己就会找到答案。
答案2
如果您不想在 OpenVPN 服务器上使用 NAT,您可以尝试配置 http-proxy 并将所有 http/https 流量置于代理中。但这需要在客户端进行额外配置,而 NAT 不需要任何配置更改。