¿Alguna vez un nombre de dominio abandona mi sistema local si la IP coincidente está definida en mi archivo de hosts?

2

Dado el dominio website.org y un servidor web correspondiente con el IP 1.2.3.4 .

Si un cliente define la IP con el nombre de dominio en su archivo host como:

$ cat /etc/hosts
[...]
1.2.3.4    website.org

¿Alguna vez el cliente envía el nombre de dominio real en una solicitud, al acceder al sitio web, o utiliza exclusivamente la dirección IP?

    
pregunta boolean.is.null 17.07.2016 - 12:47
fuente

2 respuestas

3

Para las conexiones HTTP, y probablemente también para otros protocolos, su navegador (u otro cliente) colocará el nombre de dominio en el encabezado Host: . Por ejemplo, una solicitud podría iniciar algo como esto:

GET / HTTP/1.1
Host: website.org
...

A través de una conexión no encriptada, esto revelaría el dominio de destino.

Para las conexiones TLS (más comúnmente, HTTPS), la mayoría de los clientes especificarán a qué host desean conectarse (esta función se llama SNI, y se usa en caso de que la misma IP esté sirviendo múltiples dominios) en texto simple. El servidor responderá con un certificado que contiene el nombre de dominio (ya sea que el cliente esté usando SNI) y este certificado también se transmite en texto sin formato; Cualquiera que esté escuchando la conexión puede leer el tráfico en cualquier dirección. El certificado puede especificar varios nombres de dominio, que suelen ser subdominios de una raíz, o varios dominios que pertenecen a una empresa.

Además, el DNS inverso es una cosa. Si alguien quiere saber con qué dominios se está comunicando, y esos dominios están registrados en el DNS, pueden hacer una búsqueda inversa de las direcciones IP. Al igual que una búsqueda de DNS normal asigna un nombre a una IP, una búsqueda inversa asigna una IP a un nombre. De nuevo, puede haber varios nombres de dominio que se asignen a esa IP, en cuyo caso la búsqueda inversa devolverá varios nombres, pero generalmente están relacionados.

También hay herramientas que interactúan explícitamente con DNS (y, por lo tanto, envían nombres de dominio a través de la red), como nslookup y whois . Sin embargo, esas no son cosas que usualmente usarías en un sitio que conoces lo suficientemente bien como para tenerlo en tu archivo de Hosts.

    
respondido por el CBHacking 17.07.2016 - 13:22
fuente
3
  

¿Alguna vez el cliente envía el nombre de dominio real en una solicitud, al acceder al sitio web, o utiliza exclusivamente la dirección IP?

El nombre de host se incluye en la solicitud HTTP (HTTP es el protocolo que se habla al acceder a un sitio web). P.ej. el acceso a http://www.example.org/foo resulta en:

 GET /foo HTTP/1.1
 Host: www.example.org

Además, el nombre del host se envía sin formato dentro de TLS ClientHello al acceder a un sitio con HTTPS (solo con SNI pero eso es lo que hacen todos los navegadores modernos).

    
respondido por el Steffen Ullrich 17.07.2016 - 13:19
fuente

Lea otras preguntas en las etiquetas