我的移动设备和通过我的debian服务器上的openVPN服务器创build的局域网之间有个人VPN。
假设我的LAN类192.168.1.0/24在eth0接口上,我的VPN在tun0接口上是一个标准的10.0.8.0/24 。
然后在我的服务器上,我有另一个VPN,我的服务器是一个build立在Shrewsoft VPN上的客户端。
假设这个VPN允许我通过tap0接口访问10.50.0.0/24子网
我想要做的就是从我的openvpn客户端到达主机10.50.0.15 。
我只能访问服务器+ openVPN服务器configuration,我现在有点困惑。
我试图达到的结果是:
1:1 NAT主机10.50.0.15在192.168.1.15上
尝试将服务器上的stream量路由到10.50.0.0/24,并通过shrewsoft gw从10.0.8.0/24路由。
我的想法很短,我将不胜感激任何build议!
谢谢。 一个
**********************编辑**************************
尝试一切build议后,没有好消息,即使使用干净的iptablesconfiguration,我无法正确路由stream量。
我用tshark看到的是数据包被正确路由到10.50.0.15,但响应出现在TAP0 IP(192.168.11.150)上,并且没有被正确转发到openvpn LAN。
有什么build议么?
iptables (表格filter ,链FORWARD )为你的tun0接口启用了IP转发。 /sbin/sysctl -a | grep forward – 请从那里开始工作)。 push指令,告诉它的客户10.50.0.0/24networking可以通过10.0.8.1访问 – 也就是OpenVPN服务器的IP; 看“路由的局域网” 。 iroute指令; 请参阅上面的指南。 推理:
一个IP客户端 – 让我们考虑你的移动客户端 – 使用它的本地路由表来决定在哪里发送一个特定的目标IP地址的数据包。 任何客户端都有一个或多个直接连接的networking和零个或多个间接连接的networking。
间接连接的networking可以通过所谓的“网关”到达,网关的任务是转发数据包。 显然,所有的网关必须通过直接或间接连接的networking才能到达。
要考虑最简单的情况,局域网上的一台客户机提供一个到局域网的Internet连接的单个服务器,其路由表中通常有两个条目:
这种设置使得客户端通过其连接到局域网的networking接口直接发送到该局域网中主机的所有数据包,并将所有其他stream量发送到该网关服务器。
对于你的客户, 10.0.8/24是一个直接连接的networking – 一旦OpenVPN客户端成功连接到服务器。 现在,要通过OpenVPN的隧道达到10.50.0.0/24 ,客户端必须在路由表中有一个新的规则,以知道该networking可以通过某个网关(这是您的OpenVPN服务器)来使用。
因此,您首先要在服务器上设置正确的路由和IP转发,然后确保客户端知道去往10.50.0.0/24上主机的数据包的发送10.50.0.0/24 。