google-app-engine - standard - google cloud app engine dns
Google App Engine: lista de direcciones IP (6)
Sé que Google App Engine no admite una aplicación que tenga una dirección IP estática, pero me gustaría saber si existe una lista o rango de direcciones IP que una aplicación podría tener. Me gustaría utilizar esa lista como una lista blanca de direcciones IP para otra aplicación desplegada en otro lugar.
A partir del documento de GAE , debe utilizar el comando excavar porque actualmente no proporciona una forma de asignar direcciones IP estáticas a una aplicación, debido a su diseño:
dig -t TXT _netblocks.google.com @ns1.google.com
Si el comando dig no está disponible en su sistema, puede usar un servicio en línea:
A la hora de escribir esta respuesta, consultar http://www.digwebinterface.com/?hostnames=_netblocks.google.com&type=TXT&useresolver=8.8.4.4&ns=self&nameservers=ns1.google.com devuelve:
_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"
Aquí la lista formateada para la consola API de Google si la necesita:
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
Tenga en cuenta que los rangos de IP pueden cambiar en el futuro, por lo que deberá ejecutar esta consulta de vez en cuando.
Además de las otras respuestas, el soporte principal de GAE me dirigió a este nombre, especialmente como la dirección IP de origen para URLFetch llamadas a URLFetch :
$ dig -t txt _cloud-netblocks.googleusercontent.com
que responde:
include:_cloud-netblocks1.googleusercontent.com
include:_cloud-netblocks2.googleusercontent.com
include:_cloud-netblocks3.googleusercontent.com
Si luego consultas esos, obtienes esta lista de rangos (a partir del 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
Creé un script de ruby para este propósito exacto (súper simple, fácil de actualizar):
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
Lancé esto rápidamente, para usarlo con el 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
Usar comando:
dig -t txt _netblocks.google.com
para obtener los últimos bloques de google ip, y luego puede agregar el resultado a su lista blanca. Tenga en cuenta que la lista no es estática y se actualiza de vez en cuando.
Y esta es una lista actualizada al 20 de marzo de 2016:
Extraído usando instrucciones en este artículo de KB .
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