So che Google App Engine non supporta un'applicazione con un indirizzo IP statico, ma mi piacerebbe sapere se esiste una lista o un intervallo di indirizzi IP che un'app potrebbe potenzialmente avere? Mi piacerebbe usare quell'elenco come lista bianca di indirizzi IP per un'altra applicazione distribuita altrove.Google App Engine: elenco di indirizzi IP?
risposta
In aggiunta alle altre risposte, supporto premier GAE mi ha indirizzato a questo nome, esp come l'indirizzo IP di origine per URLFetch chiamate:
$ dig -t txt _cloud-netblocks.googleusercontent.com
che risponde:
include:_cloud-netblocks1.googleusercontent.com
include:_cloud-netblocks2.googleusercontent.com
include:_cloud-netblocks3.googleusercontent.com
se poi chiedi, ottieni questo elenco di intervalli (dal 2014-06-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
Vedi anche: http://stackoverflow.com/a/16965139/768176 – ckhan
Utilizzare il comando:
dig -t txt _netblocks.google.com
per ottenere gli ultimi blocchi di IP di Google, e quindi è possibile aggiungere il risultato alla tua lista bianca. Tieni presente che l'elenco non è statico e aggiornato di volta in volta.
Questo è applicabile solo ai server di posta di Google. Altri servizi (come Maps, ecc.) Hanno indirizzi IP diversi da quelli elencati in tale netblock IP4. – Josiah
A partire dal 29.04.2013 ci sono anche richieste provenienti dal seguente intervallo: 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
Dal GAE documentationn, è necessario utilizzare il comando dig perché attualmente non fornisce un modo per mappare gli indirizzi IP statici a un'applicazione, grazie al suo design:
dig -t TXT _netblocks.google.com @ns1.google.com
Se il scavo comando non è disponibile sul sistema, è possibile utilizzare un servizio online:
Come momento della stesura di questa risposta, l'interrogazione http://www.digwebinterface.com/?hostnames=_netblocks.google.com&type=TXT&useresolver=8.8.4.4&ns=self&nameservers=ns1.google.com rendimenti:
012.351._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"
Ecco l'elenco formattato per la console API di Google se ne avete bisogno:
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
Si prega di notare gli intervalli IP possono cambiare in futuro quindi sarà necessario per eseguire la query di tanto in tanto.
Ecco un one-liner per aiutarti a analizzarlo: '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
E questo è un elenco aggiornato a partire dal 20 marzo 2016:
Estratto utilizzando le istruzioni 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
Ho lanciato questo insieme rapidamente, per l'utilizzo con il comando 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
Ho creato uno script ruby per questo scopo esatto (super semplice, facile da aggiornare):
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
- 1. Google App Engine e dos.xml
- 2. Elenco di riferimenti in Google App Engine per Python
- 3. Google App Engine: get_or_create()?
- 4. Google-app-engine NDB
- 5. Google App Engine Geohasing
- 6. Google App Engine APNS
- 7. Google App Engine
- 8. Google Cloud Platform Lavoratori DataFlow Indirizzi IP
- 9. Timeout di Google App Engine?
- 10. Reindirizza utente in Python + Google App Engine
- 11. Filtro indirizzi IP
- 12. Impossibile distribuire Android App Engine progetto su Google App Engine
- 13. Registrazione dell'applicazione Google App Engine
- 14. Retrolambda su Google App Engine
- 15. web.py su Google App Engine
- 16. Pacchetto "repackaged" Google App Engine
- 17. appengine_config.py in Google App Engine
- 18. eCommerce su Google App Engine
- 19. Google App Engine JDO 3
- 20. Google App Engine o Django?
- 21. Google App Engine: Quota errore
- 22. Google App Engine Python | APP.YAML
- 23. OpenID per Google App Engine
- 24. Google App Engine e CORS
- 25. Google App Engine supporta ftp?
- 26. Google App Engine vs Heroku
- 27. Google app engine dev_appserver.py problems
- 28. memorizzazione impostazioni app su Google App Engine
- 29. Google App Engine: Errore: HTTPError
- 30. Django su Google App Engine
non so molto su di esso, ma questo è probabilmente per il "Secure Data Connector": https://developers.google.com/secure-data-connector/ – Thilo
Avrai bisogno di usare qualche altro meccanismo. –
Perché stai facendo affidamento sull'indirizzo IP remoto? Nella whitelist della tua app verranno autorizzate tutte le app di _all_ App Engine. Usa l'autenticazione. –