![如何将 eth0 转发/路由到指定的 as0t0 客户端?(互联网到 VPNetwork 的客户端)](https://linux22.com/image/995841/%E5%A6%82%E4%BD%95%E5%B0%86%20eth0%20%E8%BD%AC%E5%8F%91%2F%E8%B7%AF%E7%94%B1%E5%88%B0%E6%8C%87%E5%AE%9A%E7%9A%84%20as0t0%20%E5%AE%A2%E6%88%B7%E7%AB%AF%EF%BC%9F%EF%BC%88%E4%BA%92%E8%81%94%E7%BD%91%E5%88%B0%20VPNetwork%20%E7%9A%84%E5%AE%A2%E6%88%B7%E7%AB%AF%EF%BC%89.png)
我有一台通过 eth0 连接到互联网的 VPN 服务器。VPNetwork 的设备是 as0t0/as0t1。我有一个指定的 VPN 客户端,我想通过 VPN 服务器的公共互联网 IP(xxxx)通过互联网访问它。
我想通过 Pure Internet 上的 7777 端口访问 VPN 客户端,但它位于 NAT 后面。我想要:当我连接到 xxxx:7777 时,它必须路由到 VPN 客户端的相同端口。
我尝试使用 iptables 进行一些操作。但没有效果。这是正确的方法吗?如果是,我该怎么做?
答案1
您需要在 VPN 网络中将公网 IP 地址 DNAT 到客户端 IP 地址。假设您的公网 IP 为1.1.1.1
,客户端 IP 地址为192.168.1.50
,请使用以下命令:
iptables -t nat -A PREROUTING -p tcp -d 1.1.1.1 --dport 7777 -j DNAT --to-destination 192.168.1.50
确保客户端的默认网关是您的 VPN 服务器。