El otro día en una noticia de ADSL Zone se comentaba: “Los operadores critican a Firefox por usar DNS-over-HTTPS: ya no pueden bloquear webs“. Tras este titular tan llamativo se puede leer un artículo en el que además de contar cuatro pinceladas sobre DNS sobre HTTPS se contaba que los operadores no podrían bloquear webs al no poder interceptar el tráfico de DNS.
Sólo para que lo sepáis cuando se bloquea una web lo que se hace es cambiar los DNSs del dominio, los que se definen en el registrador, cualquier otro cambio es inútil pues el usuario puede cambiar los DNSs que usa, puede tunelizar el tráfico contra los DNSs o incluso usar una VPN.
A un operador le da exactamente igual las páginas que visites, excepto por temas de optimización, que luego os cuento. El bloquear webs no es algo que a un operador le apetezca en lo más mínimo, al menos yo jamás he visto que se bloqueen webs sin una orden judicial y por supuesto tampoco he visto que se interfiera en el tráfico de DNS, aunque hay cosas parecidas, como lo que hace Orange, entiendo que sin querer, también os lo cuento luego.
Pues lo dicho, en el programa de hoy voy a tratar de contaros un poco qué es eso del DNS sobre HTTPS porque desde luego lo importante de esto no es si se pueden bloquear webs o no.
Antes de nada aclarar lo que os he contado hace unos segundos. Al operador le interesa saber donde te conectas para optimizar su tráfico, pero para eso no necesita el DNS, relamente no lo mira, es decir, como si no existiera.
Para optimizar el tráfico se mira a qué AS hay más tráfico, por qué tránsito se sale y si es el camino óptimo, si la cantidad de tráfico lo merece y se puede optimizar se realizan los cambios pertinentes, normalmente modificando la local preference para ese prefijo. Se busca reducir latencias, ya sabéis a menos latencia más ancho de banda efectivo y mejor percepción por parte del usuario.
A lo mejor le interesa optimizar para ahorrarse un dinero o para apretar al proveedor de tráfico y la decisión de por donde se saca el tráfico ya no es la percepción del usuario, sino otra.
Pero aquí como veis el DNS da exactamente igual y aunque no se pueda ver el tráfico de DNS nos da igual porque lo que vemos es el netflow, que es lo que nos interesa.
Y lo que hace Orange, al menos en mi caso es forzar los DNSs que ofrece el servidor de DHCP del Livebox que te ponen, obviamente puedes forzarlos a mano en los PCs, pero mucha gente no sabe hacer eso.
Pero lo que hacen peor es haber puesto dentro del router la IP 1.1.1.1, así que si intentas resolver con el resolver de la 1.1.1.1 realmente quien te estará resolviendo es el Livebox de Orange. Me consta que en Orange se conoce el problema, pero no deben de considerarlo importante, una pena y una lástima que hagan eso.
Bueno, pues si os parece, vamos a ir entrando en materia sobre el tema que nos ocupa el día de hoy.
DNS sobre HTTPS no es más que el DNS de toda la vida, pero utilizando HTTPS, Esto nos permite tener unas respuestas a las peticiones más rápidas, básicamente porque necesitamos menos envíos de información para ello. Esto repercute directamente en la carga de las webs, que es realmente lo que le importa a la gente.
Una web además de tener lo que está en el servidor puede tener el widget de facebook, tendrá que cargar también de facebook, luego el de twitter, lo propio con twitter, además los anuncios, de donde sea, el google analytics, etc….
Es decir, la carga de una web suele tener asociadas un montón de peticiones de DNS, muchas resoluciones, así que si conseguimos reducir los tiempos de esas resoluciones conseguimos reducir los tiempos de carga de las webs, ese es el quiz de la cuestión.
Además sí, también aumenta la privacidad y la seguridad, evita ataques man-in-the-middle y similares, pero esto que es sumamente importante no es por desgracia lo que más preocupa a los usuarios que lo que quieren es Internet muy rápido, por eso las fibras de 600 megas y cosas así.
Pasa algo parecido, obviamente manteniendo las distancias, al uso de certificados en las webs. Es importante por temas de seguridad, pero si queremos http/2 para que las webs carguen más rápidas, al final tenemos que usar https y para eso necesitamos certificados. En ese caso las webs van mucho más rápidas, muy al contrario de lo que la intuición nos diría, pues en DNS pasa algo parecido.
De hecho HTTP/2 es la versión mínima para eso:
HTTP/2 [RFC7540] is the minimum RECOMMENDED version of HTTP for use with DoH.
RFC 8484
DNS sobre HTTPS viene definido en la RFC 8484 titulada “DNS Queries over HTTPS (DoH)“.
Es muy interesante atender al título de la RFC pues hace referencia a que son las peticiones las que van sobre HTTPS, es decir, el transporte de las mismas.
Each DNS query-response pair is mapped into an HTTP exchange
RFC8484
Realmente las peticiones de DNS se transportarán mediante POST o GET de HTTP:
The first example request uses GET to request "www.example.com".
:method = GET
:scheme = https
:authority = dnsserver.example.net
:path = /dns-query?dns=AAABAAABAAAAAAAAA3d3dwdleGFtcGxlA2NvbQAAAQAB
accept = application/dns-message
The same DNS query for "www.example.com", using the POST method would be:
:method = POST
:scheme = https
:authority = dnsserver.example.net
:path = /dns-query
accept = application/dns-message
content-type = application/dns-message
content-length = 33
00 00 01 00 00 01 00 00 00 00 00 00 03 77 77 77
07 65 78 61 6d 70 6c 65 03 63 6f 6d 00 00 01 00
01
Y la respuesta a todo esto con su código 200:
:status = 200
content-type = application/dns-message
content-length = 61
cache-control = max-age=3709
00 00 81 80 00 01 00 01 00 00 00 00 03 77 77 77
07 65 78 61 6d 70 6c 65 03 63 6f 6d 00 00 1c 00
01 c0 0c 00 1c 00 01 00 00 0e 7d 00 10 20 01 0d
b8 ab cd 00 12 00 01 00 02 00 03 00 04
Actualmente nos encontramos como con IPv6 hace muchísimos años, sin soporte de DNS sobre HTTP en el sistema operativo, así que es necesario instalar un software extra para esto.
Otra cosa que tenemos que tener en cuenta es que DNS sobre HTTPS no proporciona cifrado extremo a extremo, sino que el cifrado se realiza mediante puntos intermedios para llegar a los servidores autorizados. y además, esto sólo será así siempre y cuanto se utilice DNS sobre TLS.
Para poder utilizar DNS sobre HTTPS podéis instalar el software de Cloudflare para cualquier sistema operativo, ya sea ordenador o teléfono, aunque esto os limitará a los servidores de Cloudflare.
Otra opción es utilizar Firefox, versión mayor a la 62, pero esto sólo afectará a las webs que visitéis con el navegador, no a otras peticiones que seguirán usando la configuración de DNS del equipo. Esto tampoco es que me guste demasiado como opción
Hasta aquí el programa de hoy, pero no quiero despedirme sin dar gracias a las 45 personas que han dejado reseñas en itunes España, muchísimas gracias a todos y volvemos a escucharnos en el próximo capítulo.
Comentarios
Muy buena la entrada!
no puedo escuchar este audio en iVoox, alguien más tiene este problema?