【问题标题】:connecting to a private ip连接到私人IP
【发布时间】:2009-08-06 16:34:51
【问题描述】:

我想连接到路由器后面的系统。我知道路由器的公共地址以及系统的私有 IP(始终固定)。如何建立与私有 ip 的套接字连接?

【问题讨论】:

  • 它被称为“私人”是有原因的......

标签: sockets routing nat


【解决方案1】:

这就是为什么有些人说他们在“防火墙”后面,而他们在路由器后面。 Internet 的邪恶病毒无法利用路由器后面计算机上的任何软件(前提是路由器管理员没有以有趣的方式对其进行配置,例如启用DMZ)。

你还有一些选择:

  • 与路由器管理员交谈,让他为你转发一个端口
  • 取出路由器并将“目标”计算机放在路由器所在的位置,或启用 DMZ(仅当路由器后面只有一台计算机时才有意义)。 警告:首先在目标计算机上安装防火墙!
  • 将插座旋转 180 度。使路由器后面的计算机与具有公共 IP 地址的服务器建立连接
  • 如果您的路由器支持,请使用 UPnP 之类的内容
  • 为您的计算机获取一个专用 IP 地址并配置路由器以将所有流量切换到此 IP 地址到您的计算机(这类似于 DMZ,但如果您在路由器后面有多台计算机,则可以使用)。 警告:首先在目标计算机上安装防火墙!
  • 使用 NAT 穿越。关于这个主题有一篇非常好的文章here。简化版是客户端与某个远程服务器建立连接。服务器可以在客户端的路由器上看到打开的端口号,并且该端口被分配给客户端的机器,因此它(或共享此信息的其他计算机)可以建立到该端口的连接并到达客户端的应用程序。 警告:这不适用于所有路由器。有些路由器不会让这种情况发生。

【讨论】:

【解决方案2】:

最简单的可能是从您要通过路由器连接的系统到forward the port

【讨论】:

    【解决方案3】:

    这更多是路由器的配置问题,而不是您的实际程序。如果路由器未配置为将流量转发到私有系统,则无法强制它连接您 - 相反,私有系统必须自行打开连接。

    【讨论】:

      【解决方案4】:

      严格来说,您的问题的答案是“您不能”。但是,您可以在路由器上启用 DNAT(目标网络地址转换)。您连接到路由器上的某个端口,它将连接转发到内部 ip。内部 ip(和端口)在路由器设置中配置,连接客户端不知道。

      【讨论】:

        猜你喜欢
        • 2010-09-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-11-06
        • 1970-01-01
        • 2019-12-28
        • 1970-01-01
        • 2016-12-27
        相关资源
        最近更新 更多