【问题标题】:Client-Server IPs on different networks不同网络上的客户端-服务器 IP
【发布时间】:2014-09-06 05:49:19
【问题描述】:

假设我创建了一个客户端-服务器应用程序。服务器:Swing 应用程序——客户端:swing 应用程序,服务器:swing 应用程序——客户端:android 应用程序......随便。一般的想法是:服务器侦听某个端口,您通过套接字建立连接(将服务器的IP地址设置为客户端应用程序)并将消息从客户端传输到服务器等......如果客户端和服务器是可以的在同一个网络上。但是如果客户端在不同的网络上,如何指定服务器的IP地址???

【问题讨论】:

    标签: sockets ip client-server


    【解决方案1】:

    如果客户端和服务器位于不同的网络上(最常见的情况是客户端通过 Internet 连接到服务器),则网络之间必须有路由器才能相互通信。如果服务器是 NAT,则连接到 NAT 的公共 IP,然后 NAT 连接到服务器。如果 NAT 本身位于另一个 NAT 之后,则使用该 NAT 的公共 IP,然后连接到服务器所连接的 NAT。等等。换句话说,您不会知道服务器的私有 LAN IP,也不需要知道。您改为使用其公共 WAN IP。或者,您可以在 DNS 查找中使用服务器主机名解析到的任何公共 IP(如果它已分配主机名)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-11-05
      • 2012-04-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-30
      相关资源
      最近更新 更多