【问题标题】:Connecting private IPs连接私有 IP
【发布时间】:2010-09-07 20:01:51
【问题描述】:

我的一个朋友告诉我,有一种方法可以在不使用代理服务器的情况下连接两个私有 IP。这个想法是两台计算机都连接到公共服务器以及服务器如何加入私有连接并且不会使用更多带宽。

这是真的吗?这种技术是怎么命名的?

【问题讨论】:

    标签: tcp ip-address


    【解决方案1】:

    有一种称为“Hole Punching”的技术可以很好地与“Cone”NAT(Cone 是路由器的技术家族)配合使用。这不是 100% 确定的技术,今天,它在大约 80% 的路由器上与 UDP 配合良好。

    有一些实现打孔的库:STUN (wikipedia)

    【讨论】:

      【解决方案2】:

      这是真的。这就是FogCreek Copilot 的工作方式

      查看 Joel 的 Copilot 2.0 post 上的第 2 项。

      【讨论】:

        【解决方案3】:

        您的朋友可能指的是 VIP(虚拟 IP)。据我了解,VIP 通常由诸如路由器之类的硬件控制,然后重定向到您的 2 个私有 IP 之一。我们将它与 VIP 后面的一组机器一起使用。我不是网络人,所以这几乎是我的知识范围。

        【讨论】:

          【解决方案4】:

          如果您正在考虑加入两个专用网络(NAT 后面的两个机器网络),最好的方法是使用VPN。有许多设备可用于完成此任务。

          【讨论】:

            【解决方案5】:

            我不确定这是您的想法,但您可以使用 ssh 隧道做类似的事情。假设您希望 10.1.2.3/24 上的 userA 连接 192.168.0.3/24 上 userB 上的 mysql 服务器。两个网络之间没有直接的网络连接,但两台机器都可以连接到公共互联网上的服务器 A。

            userB 运行此命令:

            ssh -R localhost:13306:localhost:3306 username@serverA
            

            userA 运行此命令:

            ssh -L 3306:localhost:13306 username@serverA
            

            现在用户A可以使用他们喜欢的任何工具连接到本地主机上的mysql,cxn将通过serverA和用户B机器上本地主机上运行的mysql守护进程建立隧道。

            (希望没有错别字,我抱着两天大的女儿用一只手打字=))

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2019-12-28
              • 2016-12-27
              • 2020-01-01
              • 2021-06-02
              相关资源
              最近更新 更多