0

我的应用程序 (C++) 在阿里云内部的 ECS 服务器上运行。

它需要知道它的公共地址,但在网络上只有私有 IPS 是可见的(类似于 AWS、Google Cloud 等)

有没有办法自动检测公共IP?

4

1 回答 1

2

有几种方法可以确定您的公共 IP 地址:

  1. 使用返回您的 IP 地址的外部源。谷歌搜索会找到很多来源。AWS 有一个:http ://checkip.amazonaws.com/ 。您可以向该端点发出 HTTP 请求并解析结果。使用只返回您的 IP 地址而不是一堆格式化的 HTML 语句的可靠供应商。
  2. 在您的 ECS 实例的元数据中查找您的公共 IP。此链接包含更多信息:ECS 元数据
  3. 使用阿里云C++ SDK调用ECS API描述实例阿里云C++ SDK
于 2018-06-09T16:47:50.167 回答