与局域网桥接VPN连接

我使用的是一个基于SSL的VPN套件(它加载了一些build立VPN连接的Java Applet),这在Linux下非常有效。 当连接时,我看到一个tun0设备连接到我希望在VPNnetworking上看到的IP地址(我们称之为10.0.0.50)。 另外,我仍然在eth0上有我的局域网(内部)IP地址(我们称之为192.168.0.50)。 我可以使用这个configuration浏览到sites / ssh / 10.0.0.0子网中的系统。

然而,我真正喜欢的是能够共享这个连接,以便局域网上的其他机器(比如说192.168.0.60和192.168.0.70)都能以某种方式指向通过VPN隧道转发请求的Linux机器比通过我的ISP的网关路由请求。

我非常无知地说话 – 我已经玩了一点iptables但是大部分时间都是在黑暗中,甚至是这些事情的细节。 我不能改变的那一点(据我所知)是VPN客户端。 我见过很多如何使用其他VPN客户端来演示如何做类似事情的指南。 无论出于何种原因,我似乎无法获得任何其他VPN客户端的工作,我被告知,他们是“不支持”。

不知道你正在使用什么发行版,我不能告诉你如何把你的发行版的configuration集成到一切中,但是一个独立的脚本来陪审可能看起来像这样:

 brctl addbr vpnbridge
 ifconfig tun0 0.0.0.0
 brctl addif vpnbridge tun0
 ifconfig vpnbridge 10.0.0.50 netmask 255.255.255.0
 echo 1> / proc / sys / net / ipv4 / ip_forward
 iptables -t nat -I POSTROUTING -o vpnbridge -j MASQUERADE

这确切的可能会以各种各样的壮观的方式失败(networking掩码可能是错误的,我可能错过了一步,可怕的不安全,VPN客户端可能会得到衬衫等),但它覆盖了我的顶部的所有高点头。

那么在你的Linux上设置路由呢? 将stream量从VPN路由到LAN,反之亦然,无需更改客户端上的网关…只是一个选项。