Conéctate al sitio con IP pero mostrando como URL

1

Creo que esto puede no ser posible debido a la forma en que el protocolo TCP / IP define los paquetes, pero pensé que lo pediría.

Algunos sitios, como los de servidores compartidos, usan la misma IP y el servidor entrega el sitio según el nombre de host / URL solicitado. En esta situación, al hacer una búsqueda de DNS de la IP del sitio e ir directamente a la IP, generalmente se entregará algún otro contenido que no sea el sitio con el nombre de host dado.

¿Hay alguna forma de hacerlo de ambas maneras y solicitar un sitio con la dirección IP pero que la solicitud aún muestre el nombre de host / url para que el servidor de la otra aún maneje la solicitud como si proporcionó la URL y se resolvió mediante DNS ?

El caso de uso específico para mí es un servidor DNS privado que está inactivo, por lo que mi navegador solo puede acceder a través de la IP sin formato (que he respaldado) pero el sitio necesita la URL para entregar el contenido correcto. Sin embargo, creo que solo saber esto es posible es interesante por sí mismo y la técnica vale la pena conocerla en general.

Anthony
fuente
1
¿Por qué no ejecutar su propio servidor DNS o editar el hosts en la computadora, puede codificar ese nombre de host y no enviar la solicitud al servidor DNS lento.
Scott Chamberlain
Porque es una VPN y parece que tiene que pasar primero a través del servidor vpn dns. Mi única base para pensar esto es establecer un proxy ssh en un host en la LAN remota que utiliza un servidor DNS diferente de la puerta de enlace VPN y la URL sigue resolviéndose a través del servidor DNS de la puerta de enlace VPN.
Anthony
Puede configurar un servidor DNS local en su computadora y pedirle que vaya al servidor DNS de la VPN para cualquier entrada que no haya almacenado en la memoria caché local.
Scott Chamberlain
¿No funcionaría el proxy SOCKS de la misma manera?
Anthony

Respuestas:

1

Si modifica el archivo / etc / hosts y agrega la dirección IP y el sitio en él, debería poder seleccionar el sitio mediante una URL con un navegador estándar, ya que este archivo normalmente se lee antes del DNS y resolverá el problema por usted.

No sé si alguno de los navegadores (suponiendo que usted no llame a Curl a un navegador) lo admite, pero técnicamente es posible solicitar un sitio utilizando la dirección IP en lugar de la URL. El problema es renderizarlo.

Para permitir múltiples sitios HTTP en una sola dirección IP, los navegadores web utilizan la especificación HTTP 1.1. Esta especificación significa que, después de conectarse a la dirección IP en el puerto 80, el navegador le informa al servidor web el nombre del servidor del que desea el contenido. Por lo tanto, al utilizar un cliente telnet decente, puede obtener un volcado del sitio que desea. (Si vuelcas la salida a un archivo, probablemente puedas renderizarlo en un navegador).

Una sesión de muestra podría ser esto. Supongamos que desea ir a la página de inicio del sitio "www.lightbox.net.nz/", que reside en un servidor configurado de forma predeterminada para generar otra página si se accede a través de la dirección IP 60.234.77.229

telnet 60.234.77.229 80         (Typed)                                   
Connected to 60.234.77.229.     (Server Response)
Escape character is '^]'.       (Server response)
GET /index.php HTTP/1.1         (Typed - to request the root web page using http/1.1 protocol)
host: www.lightbox.net.nz     (Tell the server which site you want)
                                (blank line to tell it you have finished asking)
Output of http://www.lightbox.net.nz/index.php shown here.
davidgo
fuente