像Hamachi这样的互联网解决方案的自托管局域网[已关闭]


1

我想设置通过Internet提供局域网的VPN,就像Hamachi网格式服务器允许网络上的对等体使用接口上的IP直接通话,同时将常规流量引导到主网络适配器(例如eth0或wlan0)一样)。

我有大量的资源,但我似乎无法找到适合的设置。我已经调查了SoftEther,但似乎只是出于我的需要。

我的需要是在我的家庭服务器(具有公共IP)上创建一个Mesh VPN服务器并手动连接到它(与Hamachi大致相同),这样我的同伴就可以作为中央服务器与我的家庭计算机进行交互。当我离开州时,我需要这个连接到我的一些工作计算机。我主要担心的是隧道UDP流量。

是否有任何自我托管的Hamachi式解决方案,不作为网关,而是作为互联网上的局域网?

Answers:


4

这不是网关,而是互联网上的局域网?

几乎所有 VPN软件都可以这样做。实际上,这通常是默认值。只是不要将服务器配置为首先提供默认路由,就是这样 - 您将获得仅适用于其特定子网的VPN。

也就是说,如果你想要一个网格:

通常的建议是Tinc(甚至可能是1.1分支)。它似乎能够在IP层或以太网层(交换机模式)中建立具有中继的任意网状拓扑。支持广播(组播数据包作为广播处理)。

ZeroTier位于中间位置:它尽可能尝试使用直接连接(甚至通过NAT进行打孔),但是会回退到通过超级节点进行中继。虽然很少需要,但可以托管自己的控制器和超级节点。支持多播和广播(带限制)。

然后是OpenVPN,它基于客户端服务器。(它有一个客户端到客户端标志,但没有NAT打孔功能。)一个普通的OpenVPN服务器听起来好像适合你,但是如果你在tap模式下设置它(而不是默认设置)TUN),那么它会传达,而不是仅限于IP任意以太网业务。

(以上所有工作都在Linux,FreeBSD和Windows上进行。)

最后,根据操作系统,有很多轻量级,手动配置的隧道类型 - 例如GRE或L2TP。一旦网络增长,它们就会变得有点笨拙,因为你必须手动设置每个点对点链接(没有打孔;除非你添加IPsec,否则不加密),但......它们基本上是网络的胶带。


请注意,可能没有任何软件支持所有平台,因此在某些情况下,您只需要在2或3个网络之间路由数据包。例如,您可能希望在PC上运行Tinc,但通过iPhone从OpenVPN连接。这很好,只要OpenVPN服务器有一个Tinc子网的路由,反之亦然。(“Internet over LAN”和常规 LAN 之间的路由也是如此。)


因此,ZeroTier尝试与服务器作为代理进行持久的NAT打孔,但是具有VPN风格的后备?
特雷弗鲁道夫

2
@TrevorRudolph:是的 - 它仍然是一种VPN。“VPN”并不意味着任何形式的集中转发。
grawity

是的,了解。我必须对不同的网络层进行一些研究(2对3)
Trevor Rudolph

简而言之:对于不通过IP运行的协议,您需要L2 VPN。(例如,MPLS; IPX或AppleTalk(用于旧游戏); IS-IS; ......)基于IP的纯通信可以同时使用这两种类型,尽管L3的开销略低(隧道内没有以太网头)。
grawity

1
您不需要网格,但如果软件设法建立直接连接,它肯定可以减少延迟。除非您的VPN服务器也在工作中托管,即。仍然,“拓扑子网; tls-server”模式下的OpenVPN是一个良好的开端。
grawity
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.