嘿大家。首先让我说我的 Linux 体验不是特别棒,但我通常可以轻松找到解决问题的方法。
在工作中,我们有一个 OpenVPN 设置,现在应该进行一些改进。主服务器(tap 模式)在我们的办公室运行,在一个相当慢的 DSL 连接后面。主要问题是,由于我通常不在办公室,每次我想访问虚拟网络上的某些内容时,我都必须通过该服务器才能到达其他任何地方。
我们有两台 100 Mbit 连接的服务器,用于开发和生产目的,办公室还有大约 3 台服务器(其中一台在不同的 VOIP T1 线路后面)和大约两打每天使用网络的客户端来自不同的地方。
我们遇到过网络路由(在我们的控制范围之外)不允许人们访问我们的主要 OpenVPN 服务器而其他位置可以连接的情况。此外,任何时候办公室外的人想要从任何服务器(例如,一个 500 MB 的代码存储库)获取一些东西,如今高达 20 KB/s 的下载速度是不可接受的(我提到过慢速 DSL 吗?好吧)。我们不得不在这台服务器上实现流量整形,因为最大化这个连接是相当微不足道的。
我曾想过在网络中运行两个(或更多)OpenVPN 服务器。但是,它们必须具有相同的子网,因为我们的应用程序的某些核心功能依赖于虚拟网络的 IP 地址。客户端也最好保留相同的 IP 地址,但这并不重要。
为简单起见,我们将当前的服务器办公室和我正在设置的第二台服务器称为cloud。在 T1电话上呼叫服务器。
这被证明是相当复杂的,因为一旦我连接到云,我就看不到办公室。当我连接到云(没有 ping,什么都没有)时,通过办公室到服务器的任何路由也不起作用,反之亦然。iptables 也没有阻止流量的规则。
最近我在 linuxjournal 上看到这篇文章,但他们提供的解决方案似乎只涵盖了两台服务器的使用,而且有些过时(甚至找不到太多文档,他们的 wiki 已离线)。他们还指出,添加更多服务器将是一项复杂的任务。
理想情况下,我想让现有的服务器办公室运行虚拟网络,并在云和电话服务器(分别为 100 Mbit 和非常可靠的连接)上运行 OpenVPN 守护程序,以便我们在硬件故障的情况下处于安全状态, DSL 故障等。
因此,从本质上讲,我正在寻找一种高度可用的 OpenVPN 解决方案(修复、补丁、破解、调整,无论您想怎么称呼它),它可以接受多个主机(2 个或更多)上的连接,同时保持相同的 IP …