networking中两台不可达主机之间的通信

我需要在两台有防火墙的计算机之间发送一个文件。 一台可联系的服务器可以协调传输。 我知道服务器可以充当对等体之间的“代理”,即文件被上传到服务器,然后被另一个对等体下载。 然而,是否可以安排直接沟通,而不使用服务器的带宽? 这是一个VPN可以做什么?

谢谢
替代文字

除了在中间服务器上升级文件之外,还有其他两个选项,这两个选项都需要在中间的带宽中使用服务器,而另外两个则不能直接对话。

1)在中间服务器上设置代理服务器,这是一个软件安装/configuration。 这可以做到明文或encryption,如果需要的话。 2)设置中间服务器为一台或两台机器提供VPN服务以查看彼此的networking。 这也是一个软件安装/configuration。 VPN的encryption。

你没有说为什么这两个人互相防火,修改防火墙configuration不是一个选项。 如上所述,这样做效率更高,可能更安全一些,并打开防火墙两端的特定端口,以供特定主机直接传输文件,而不需要中间服务器。

VPN(虚拟专用networking)允许通过公共(不可信,非专用)networking进行通信。 不是你想在这里,如果这一切都在私人networking上。 如果是通过互联网,是的,每台机器的VPN是一个合理的解决scheme,但是这只允许你的机器私下与中央服务器通话。 那么你还是要安排文件共享。 这也应该很容易,使用内置在Windows中的文件共享,或者使用Samba。

假设机器不在专用networking上:

最大的问题是:为什么在两台机器之间有一个防火墙,如果你希望它们能够相互通话。 除非第三方机器要增加安全性,否则有额外的开销是没有意义的。 只要允许第一台机器(或两者)联系另一台机器,并传输指定的文件。

如果你真的想使用第三方机器(而且没有硬件路由器可以做到这一点),最简单的解决scheme是使用第三台机器作为路由器,所以它只是传递通信数据,而不是存储它。

VPN可以用来解决这些types的问题,但这不是最好的方法。 VPN用于通过主机从一个networking上的客户端访问另一个networking上的资源。 问题是,一个VPN将有效地使客户端的行为,就像它坐在同一个networking上,所以任何打印机,文件共享等都可以使用,除非确认不是。

一个更简单的解决scheme是打开机器之间的某些端口,并使用像scp或webdav(如果只限于端口80)的解决scheme。 我不确定哪些端口是开放/closures的以及networking结构/安全限制。 有很多变数需要考虑。

一个字: Hamachi 。

这是一个在两台独立机器上安装的小程序,然后使用中央服务器来启动连接,但直接在两台机器之间进行通道。 它显示为计算机上的另一个networking接口,就像VPN一样。

它运行在各种平台上,比其他平台更容易使用(Windows = uber easy,* nix =易于使用* nix专家,OSX =对于普通用户来说比较困难)。 它在代理后面有麻烦,但是对于一个NAT连接,它应该没问题。