2011-04-08 114 views
16

我正在與第三方webservice合作,他們要求所有對其服務的調用都來自列入白名單的IP地址。也就是說,我必須給他們IP地址,我將從中撥打他們的服務電話。Appengine服務器的IP地址塊?

問題是我正在使用Google Appengine。從Appengine發出傳出http請求時,有沒有辦法獲得靜態IP地址?如果失敗 - 是否有一個IP地址的所有請求將來自?我可以將整個集團列入白名單。如果存在,它有多大可能改變?

我知道我可以設置一個簡單的Amazon EC2實例作爲代理使用(會問另一個問題,具體如何做到這一點),但只是想確保沒有其他方式。

+0

任何人誰是感興趣的是得到這個固定的應請動態演示此問題:https://code.google.com/p/googleappengine/issues/detail?id=6644 – speedplane 2014-02-21 19:05:39

回答

16

幾周前,我通過從Google App Engine通過Urlfetch連接到Stack Exchange API(該團隊已及時解決了將所有GAE IP列入白名單的問題)。

的IP地址範圍,造成UrlFetch連接可能來自,可以通過執行下面的DNS查詢發現:

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

你知道IP地址列表有多穩定嗎?即它多久改變一次? – aloo 2011-04-08 13:30:58

+1

@aloo不,我不相信這是不可預測的。 – systempuntoout 2011-04-08 13:32:19

+0

我剛剛運行了這個命令,得到了一個IP地址列表。但是現在我看到AppEngine連接來自其他未在此處列出的IP地址。你確定這是完整的嗎?此外,這似乎只是傳入的IP地址,而不是由urlfetch製作的傳出IP地址。 – speedplane 2016-03-07 22:41:19

1

最後我檢查了這是不可能的。您可以動態獲取當前的IP地址,但這是不可預測的。

+1

動態:如何? – Eliot 2012-07-11 13:07:47

+0

你怎麼能動態地獲得ips? – 2017-01-18 21:22:52

+0

對不起 - 自從我使用AppEngine以來,這已經太多年了,我不記得我是如何實現這一目標的。 – 2017-03-23 17:23:26

0

請注意:_netblocks.google.com顯然是不準確的。目前我已經注意到,當你挖掘_netblocks時,GAE從未列出的地址連接,例如從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

+0

我認爲這已過時。 – speedplane 2016-03-07 22:38:23