【问题标题】:IP Address Block of Appengine Servers?Appengine 服务器的 IP 地址块?
【发布时间】:2011-08-01 06:34:26
【问题描述】:

我正在与第三方网络服务合作,该网络服务要求对其服务的所有调用均来自列入白名单的 IP 地址。也就是说,我必须向他们提供我将从中调用他们的服务的 IP 地址。

问题是我使用的是 Google Appengine。从 Appengine 发出传出 http 请求时,有什么方法可以获取静态 IP 地址?如果做不到这一点 - 是否存在所有请求都来自的 IP 地址块?我可以将整个集团列入白名单。如果这种情况存在,改变的可能性有多大?

我知道我可以设置一个简单的 Amazon EC2 实例以用作代理(将询问另一个问题,具体如何执行此操作),但只是想确保没有其他方法。

【问题讨论】:

标签: google-app-engine ip-address whitelist


【解决方案1】:

几周前,我通过 Urlfetch 从 Google App Engine 连接到 Stack Exchange API 时遇到了同样的问题(团队已及时解决了将所有 GAE IP 列入白名单的问题)。

urlfetch 连接可能来自的 IP 地址范围,可以通过执行以下 DNS 查找找到:

dig -t TXT _netblocks.google.com @ns1.google.com 

【讨论】:

  • 您知道 IP 地址列表有多稳定吗? IE。它多久改变一次?
  • @aloo 不,我不知道,我相信这是不可预测的。
  • 我刚刚运行了这个命令,得到了一个 IP 地址列表。但我现在看到 AppEngine 连接来自此处未列出的其他 IP 地址。你确定这是完整的吗?此外,这似乎只是传入的 IP 地址,而不是来自 urlfetch 的传出地址。
【解决方案2】:

最后我检查了这是不可能的。您可以动态获取当前 IP 地址,但它是不可预测的。

【讨论】:

  • 如何动态获取ips??
  • 抱歉——我已经很久没有使用 AppEngine 了,我不记得我是如何做到这一点的。
【解决方案3】:

请注意:_netblocks.google.com 显然不准确。目前,我注意到 GAE 从您挖掘 _netblocks 时未列出的地址连接,例如从 8.35.201.166。

此范围未列在 _netblocks、_netblocks2 或 _netblocks3 中。

当前挖掘输出: ip4:216.239.32.0/19 ip4:64.233.160.0/19 ip4:66.249.80.0/20 ip4:72.14.192.0/18 ip4:209.85.128.0/17 ip4:66.102.0.0/20 ip4:74.125.0.0/16 ip4:64.18.0.0/20 ip4:207.126.144.0/20 ip4:173.194.0.0/16

【讨论】:

  • 我认为这已经过时了。
猜你喜欢
  • 1970-01-01
  • 2016-09-11
  • 1970-01-01
  • 1970-01-01
  • 2020-01-31
  • 2014-11-20
  • 1970-01-01
  • 2015-06-21
  • 2011-07-02
相关资源
最近更新 更多