Como muchos otros hallazgos, el que voy a relatar hoy sucedió por casualidad. Estaba configurando una nueva máquina y como probablemente muchos de vosotros, la prueba definitiva de conectividad la hice contra www.google.com (sería genial que algún día Google publicase las estadísticas de tráfico ICMP contra www.google.com ...)
Apunté el comando ping contra www.google.com y obtuve una respuesta tal que así:
$ ping www.google.com
PING www.google.com (212.106.221.21) 56(84) bytes of data.
64 bytes from 21.221.106.212.dynamic.jazztel.es (212.106.221.21): icmp_req=1 ttl=128 time=19.9 ms
64 bytes from 21.221.106.212.dynamic.jazztel.es (212.106.221.21): icmp_req=2 ttl=128 time=19.0 ms
64 bytes from 21.221.106.212.dynamic.jazztel.es (212.106.221.21): icmp_req=3 ttl=128 time=19.0 ms
64 bytes from 21.221.106.212.dynamic.jazztel.es (212.106.221.21): icmp_req=4 ttl=128 time=18.9 ms
¿Disculpa? ¿ dynamic.jazztel.es ? ¿Cómo es esto posible?
Movido por la curiosidad hice la resolución DNS completa:
$ nslookup www.google.com
Server: 8.8.8.8
Address: 8.8.8.8#53
Non-authoritative answer:
Name: www.google.com
Address: 212.106.221.26
Name: www.google.com
Address: 212.106.221.25
Name: www.google.com
Address: 212.106.221.24
Name: www.google.com
Address: 212.106.221.23
Name: www.google.com
Address: 212.106.221.27
Name: www.google.com
Address: 212.106.221.21
Name: www.google.com
Address: 212.106.221.22
Name: www.google.com
Address: 212.106.221.20
Nótese que siempre uso el servidor DNS de Google (8.8.8.8) por lo que en teoría la respuesta ha de ser mucho más fiable.
Comprobando esas IPs 'de google'
vía MaxMind se puede ver que
todas las direcciones IPs son de Jazztel.
Decidí cambiar de servidor DNS, en este caso usé los de
OpenDNS, y si bien en el caso de www.google.com la respuesta parecía ser satisfactoria, estuve probando varios servicios de google y obtuve en varias ocasiones la siguiente respuesta de OpenDNS
$ nslookup www.youtube.com 208.67.222.222
Server: 208.67.222.222
Address: 208.67.222.222#53
Non-authoritative answer:
www.youtube.com canonical name = youtube-ui.l.google.com.
Name: youtube-ui.l.google.com
Address: 212.106.221.26
Name: youtube-ui.l.google.com
Address: 212.106.221.23
Name: youtube-ui.l.google.com
Address: 212.106.221.20
Name: youtube-ui.l.google.com
Address: 212.106.221.27
Name: youtube-ui.l.google.com
Address: 212.106.221.24
Name: youtube-ui.l.google.com
Address: 212.106.221.22
Name: youtube-ui.l.google.com
Address: 212.106.221.25
Name: youtube-ui.l.google.com
Address: 212.106.221.21
¡¡ Otra vez las IPs de Jazztel !!
En este punto, lo primero que quise averiguar es si era 'mi' problema o el problema de mas gente. Googleando las direcciones IPs extrañas, encontré
este post de bandaancha en el que, si bien el tema que se tocaba no era el mismo, un usuario pasteaba un lookup de www.google.com y obtenía las mismas direcciones IP extrañas que yo.
Así mismo encontré
tweets de @Germinen donde mencionaba el mismo tema. Me puse en contacto con el vía twitter y estaba en las mismas que yo.
Comenté el asunto en twitter y encontré a varias personas que obtenían esas mismas respuestas cuando resolvían google.com (la mayoría clientes de Jazztel)
En este punto uno piensa en las posibles 'contramedidas' que, en caso de que esto fuese un ataque, le hubiesen podido salvar: Búsquedas de Google bajo SSL
Es más que conveniente tenerlas activadas. Todas las IPs 'extrañas' tienen un servicio https en el puerto 443, me bajé el certificado que devolvían en la comunicación empleando:
$ openssl s_client -connect 212.106.221.24:443
y ¡ Sorpresa ! El certificado que me devolvía era perfectamente válido
y de Google. También pueden hacer verificaciones de certificados empleando el servicio
SSL Checker de sslshopper.
Si hacemos la verificación para esa IP:
Podemos ver que es perfectamente 'legal'
Entonces, o bien esa máquina tiene la clave privada del certificado (poco probable) o está redirigiendo la petición hacia alguna máquina de Google.
¿Y qué esta pasando? Bien, aquí va la solución más plausible, aunque deja varias dudas en el aire. De entrada, casi podemos descartar que alguien esté haciendo 'envenenamiento' de DNS o algún tipo de hijack, uno puede pensar que es cosa de Jazztel, pero -y aquí va la parte que mas dudas genera- resulta que yo NO soy cliente de Jazztel, y mi ISP no tiene ninguna relación con el.
'User resolves content_host.google.com. (example only)
If the ISP DNS doesn’t already know the IP address, it queries Google DNS for the IP address of content_host.google.com.
Google DNS server knows that this ISP has a Google Global Cache node that should be able to service the request, so it replies with that IP address'
Así que:
2- Damos por hecho que, pese a la fisonomía de las IPs
(dynamic.jazztel.es), no son ADSLs de usuarios
3- Por algún motivo ¿mala configuración? Google está redireccionándome a mi, que no soy de Jazztel hacia los nodos de dicha compañía
Aunque claro, salvo que alguien confirme por parte de Jazztel eso, sigue siendo todo un tanto oscuro
PD: ¡¡ Muchas gracias a toda la gente que colaboró conmigo en Twitter dando pistas y haciendo pruebas !!