【问题标题】:How do I get my server Ip address for my websocket如何获取我的 websocket 的服务器 IP 地址
【发布时间】:2018-08-03 00:54:33
【问题描述】:

我使用 c++ 和 crow 创建了一个服务器,该服务器使用 webSockets 与客户端(这是一个离子应用程序)进行通信。我一直通过 localhost 做所有事情,但现在我想将 webapp 部署到我的 iphone 并让它与服务器通信。如何获取服务器的 URL 以供客户端在其 websocket 中使用,以便它可以与服务器通信?

【问题讨论】:

  • 通常,您会购买一个域名并通过 DNS 发布您的服务器 IP 地址。
  • 所以除非我的 IP 地址通过 DNS 发布,否则我无法与我的服务器通信?
  • 好吧,如果您愿意,您可以将 IP 地址硬编码到应用程序中。 http://12.34.56.78/ 是一个有效的 URL。但通常,您会将域名硬编码到应用程序中,并让它使用 DNS 查找来查找 IP。
  • 很抱歉,这是一个愚蠢的问题,但我将如何获取服务器的 URL?
  • 你是说你不知道自己服务器的IP地址?好吧,找出答案的一种方法是浏览到whatismyip.com,假设您可以在上面运行浏览器。

标签: c++ url websocket server ip-address


【解决方案1】:

在大多数情况下,当您希望将其托管用于生产时,您会将其上传到托管服务提供商(例如 Azure、AWS、Heroku...)。

一旦您通过托管服务提供商设置了服务器,他们就会为您提供 IP 地址和/或 URL,以连接到您可以在应用程序中使用的托管服务。

【讨论】:

    【解决方案2】:

    好吧,如果您的服务器是 webhost、VPS、CLOUD 或专用服务器,它具有静态 IP 地址,您可以在客户端 websocket 中使用该地址作为地址。此外,更好的方法是将域名指向服务器(或主机)的 IP 地址,以便您的客户端始终可以找到服务器。

    如果您尝试将其连接到路由器或调制解调器后面的本地计算机,那么您的服务器可能位于 NAT 后面。为您的路由器找到适当的端口转发配置,并将传入和传出的 TCP 公共端口转发到您的本地地址。然后使用您的公共 IP 地址作为 websocket 地址 (what is my ip)。

    此外,如果您的公共 IP 地址是动态的并且可能会随着时间而改变,有类似 noip.com 这样的服务可以帮助您创建一个免费域并在您的客户端中使用它,从而帮助您始终找到正确的 IP 地址.

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-07
      • 1970-01-01
      • 2016-12-04
      • 2020-09-24
      • 2011-07-01
      • 2011-03-27
      相关资源
      最近更新 更多