【问题标题】:How to simulate a direct network connection between 2 pc's over the internet?如何通过互联网模拟两台电脑之间的直接网络连接?
【发布时间】:2013-02-09 10:33:45
【问题描述】:

我在 Ethernet, OSI model, TCP, UDP, Routing (由于新的用户限制没有链接) 和其他的 wiki 文章中阅读了该主题,但无法回答我的具体问题。

情况: 4 台计算机(A-D)

它们使用 ethernet 像这样相互连接: A <-LAN-> B <-Internet-> C <-LAN-> D (由于新的用户限制,仅链接而不是图片,再次抱歉)

我试图完成的事情: 计算机 A 应该被愚弄认为它直接连接到计算机 D(反之亦然)。完成该任务的软件只能在计算机 B 和 C 上运行。

我的问题是什么:我真的无法详细说明要完成我的目标需要做什么。通过使用在计算机 B 和 C 上的现代操作系统上运行的软件,是否有可能让 A 和 D 认为它们相互连接?

我所理解的是——如果我真的要模拟那个连接——我将不得不在物理层上传输信息。从 B/C 上的操作系统的应用层可以做多少事情来完成同样的事情?有可能吗?

根据我的知识,我可以做什么: 在 A 上有一个客户端软件,它向 B 发送数据报或字节流(知道 B 将通过 Internet 将其发送到 C,然后 C 又将数据发送到 D)。从 D 到 A 的方向也是如此。

我对该解决方案的问题: 该解决方案存在缺陷,因为我需要 2 个软件解决方案(一个用于 A/D,一个用于 B/C),另外,它限制了与 TCP 和 UDP 协议的连接,而且它并没有真正模拟连接 -这只是将信息从 A 路由到 D 的一种解决方法,而不是对等连接的模拟。

这让我想到了标题中的问题:

如何在互联网上模拟两台电脑之间的直接网络连接?

我也愿意接受我可能完全忽略的任何建议,或部分解决方案和建议。

【问题讨论】:

    标签: routing network-programming connection network-protocols application-layer


    【解决方案1】:

    在我看来,您可以使用某种类型的软件 VPN。我过去曾使用 LogMeIn Hamachi(免费)来完成此操作。

    为此,关键是在 B 和 C 之间建立一个“直接”vpn,否则 Hamachi 会很慢,因为它会通过其他服务器来路由您的网络流量。

    https://secure.logmein.com/products/hamachi/download.aspx

    【讨论】:

    • 再看hamachi,我还发现tinc,也是模拟网卡的。即使我无法模拟直接连接,也许我可以将 tinc 与路由一起使用来完成我想做的事情。感谢您的建议,我会稍等一下,看看是否有更多的想法出现。
    • 一个更昂贵(且耗时)的选项是设置硬件 VPN,这样所涉及的计算机对网络拓扑一无所知,也不需要软件。如果每边都有很多计算机,这将更具可扩展性和可维护性。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-08-11
    • 1970-01-01
    • 2013-05-01
    • 2011-04-24
    • 1970-01-01
    • 1970-01-01
    • 2012-08-03
    相关资源
    最近更新 更多