2012-06-22 3 views
21

Google App Engine은 고정 IP 주소가있는 애플리케이션을 지원하지 않지만, 앱에 잠재적으로 포함될 수있는 IP 주소 목록이나 범위가 있는지 알고 싶습니다. 그 목록을 다른 곳에 배포 된 다른 응용 프로그램의 IP 주소 화이트리스트로 사용하고 싶습니다.Google App Engine - IP 주소 목록?

+0

내가 그것에 대해 잘 모른다, 그러나 이것은이다 아마도 "보안 데이터 커넥터"의 용도는 다음과 같습니다. https://developers.google.com/secure-data-connector/ – Thilo

+0

다른 메커니즘을 사용해야합니다. –

+5

왜 원격 IP 주소를 사용하고 있습니까? 앱을 허용 목록에 추가하면 _all_ App Engine 앱을 허용 목록에 추가합니다. 인증을 사용하십시오. –

답변

14

, GAE 프리미어 지원은 ESP URLFetch 통화의 소스 IP 주소로,이 이름에 저를 지시 그를 조회, 당신은 (2014년 6월 26일 기준) 범위의 목록을 얻을 :

8.34.208.0/20 
8.35.192.0/21 
8.35.200.0/23 
23.236.48.0/20 
23.251.128.0/19 
107.167.160.0/19 
107.178.192.0/18 
108.170.192.0/20 
108.170.208.0/21 
108.170.216.0/22 
108.170.220.0/23 
108.170.222.0/24 
108.59.80.0/20 
130.211.4.0/22 
146.148.16.0/20 
146.148.2.0/23 
146.148.32.0/19 
146.148.4.0/22 
146.148.64.0/18 
146.148.8.0/21 
162.216.148.0/22 
162.222.176.0/21 
173.255.112.0/20 
192.158.28.0/22 
199.192.112.0/22 
199.223.232.0/22 
199.223.236.0/23 
+0

또한보십시오 : http://stackoverflow.com/a/16965139/768176 – ckhan

6

사용 명령 :

dig -t txt _netblocks.google.com 

최신 구글의 IP 블록을 얻기 위해, 그리고 당신은 당신의 화이트리스트에 결과를 추가 할 수 있습니다. 목록은 정적이 아니며 때때로 업데이트됩니다. GAE documentationn에서

+0

은 Google의 메일 서버에만 적용됩니다. 다른 서비스 (지도 등)는 해당 IP4 넷 블럭에 나열된 것과 다른 IP 주소를가집니다. – Josiah

+1

29.04.2013 현재 다음 범위의 요청이 있습니다. Level 3 Communications, Inc. LVLT-ORG-8-8 (NET-8-0-0-0-1) 8.0.0.0 - 8.255. 255.255 Google Apps. LVLT-GOOGL-2-8-35-200 (NET-8-35-200-0-1) 8.35.200.0 - 8.35.207.255 – snae

4

, 당신은 현재 인해 디자인, 응용 프로그램에 정적 IP 주소를 매핑하는 방법을 제공하지 않기 때문에 발굴 명령을 사용합니다 :

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

만약 발굴 http://www.digwebinterface.com/?hostnames=_netblocks.google.com&type=TXT&useresolver=8.8.4.4&ns=self&nameservers=ns1.google.com 반환 쿼리,이 답변을 작성하는 시간으로

: 명령은 시스템에서 사용할 수 없습니다, 당신은 온라인 서비스를 사용할 수 있습니다

을 여기
_netblocks.google.com. 3596 IN TXT "v=spf1 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 ?all" 

당신이 그것을 필요로하는 경우에 구글 API 콘솔의 서식있는 목록 : 당신은 때때로이 쿼리를 실행해야합니다, 그래서

216.239.32.0/19 
64.233.160.0/19 
66.249.80.0/20 
72.14.192.0/18 
209.85.128.0/17 
66.102.0.0/20 
74.125.0.0/16 
64.18.0.0/20 
207.126.144.0/20 
173.194.0.0/16 

이 IP 범위는 향후 변경 될 수 있습니다.

$ dig -t txt _cloud-netblocks.googleusercontent.com 

답 :

include:_cloud-netblocks1.googleusercontent.com 
include:_cloud-netblocks2.googleusercontent.com 
include:_cloud-netblocks3.googleusercontent.com 

당신이라면

다른 답변에 추가
+1

구문 분석에 도움이되는 한 줄짜리 문서가 있습니다 :'dig -t TXT _netblocks. google.com @ ns1.google.com | grep '^ _netblocks.google.com'| grep -o 'ip4 :. *'| sed -e 's/ip4 : // g'-e 's// \ n/g " – jschnurr

3

그리고 이것은 2016 년 3 월 20 일 기준으로 업데이트 된 목록입니다.

in this KB article 지침을 사용하여 추출했습니다.

ip4:8.34.208.0/20 
ip4:8.35.192.0/21 
ip4:8.35.200.0/23 
ip4:108.59.80.0/20 
ip4:108.170.192.0/20 
ip4:108.170.208.0/21 
ip4:108.170.216.0/22 
ip4:108.170.220.0/23 
ip4:108.170.222.0/24 

ip4:162.216.148.0/22 
ip4:162.222.176.0/21 
ip4:173.255.112.0/20 
ip4:192.158.28.0/22 
ip4:199.192.112.0/22 
ip4:199.223.232.0/22 
ip4:199.223.236.0/23 
ip4:23.236.48.0/20 
ip4:23.251.128.0/19 

ip4:107.167.160.0/19 
ip4:107.178.192.0/18 
ip4:146.148.2.0/23 
ip4:146.148.4.0/22 
ip4:146.148.8.0/21 
ip4:146.148.16.0/20 
ip4:146.148.32.0/19 
ip4:146.148.64.0/18 
ip4:130.211.4.0/22 

ip4:130.211.8.0/21 
ip4:130.211.16.0/20 
ip4:130.211.32.0/19 
ip4:130.211.64.0/18 
ip4:130.211.128.0/17 
ip4:104.154.0.0/15 
ip4:104.196.0.0/14 
ip4:208.68.108.0/23 

ip6:2600:1900::/35 
0

나는 이것을 gcloud create-firewall 명령과 함께 사용하기 위해 신속하게 던졌습니다.

#!/bin/bash 

netblocks=$(dig TXT _cloud-netblocks.googleusercontent.com @ns1.google.com +short | sed -e 's/"//g') 

for block in $netblocks; do 
    if [[ $block == include:* ]]; then 
     ipblocks=$(dig TXT ${block#include:} @ns1.google.com +short) 

     for ipblock in $ipblocks; do 
      if [[ $ipblock == ip4:* ]]; then 
       printf "${ipblock:4}," 
      fi 
     done 
    fi 
done 
0

나는이 정확한 목적 (슈퍼 간단하고 쉬운 업데이트)에 대한 루비 스크립트를 만들었습니다

https://github.com/stephengroat/whitelist-travisci

Resolv::DNS.open do |dns| 
    ress = dns.getresource "_cloud-netblocks.googleusercontent.com", Resolv::DNS::Resource::IN::TXT 
    ress.data.scan(/(?<=include:)_cloud-netblocks+\d.googleusercontent.com/).each do |r| 
    subress = dns.getresource r, Resolv::DNS::Resource::IN::TXT 
    subress.data.scan(/(?<=ip[4|6]:)[^\s]+/).each do |sr| 
     puts sr 
    end 
    end 
end