Digamos que se ha Server A
configurado con su servidor web-daemon favorito para servir www.example.com
. Ahora quieres mover esto a Server B
. Después de un montón de copia y configuración, el nuevo servidor parece estar listo. Una prueba final estaría en orden: antes de cambiar los registros DNS, ¿cómo se solicita al www.example.com
servidor B cuando los registros DNS todavía apuntan al servidor A?
Si bien mi pregunta principal ha sido respondida, en el caso de que / etc / hosts no esté bajo mi dominio de influencia, ¿es posible probarlo con telnet al hablar HTTP1.1 sin formato al servidor web?
domain-name-system
http
testing
Jarmund
fuente
fuente
Respuestas:
DNS es una cosa mágica. Con suficiente control sobre un PC cliente, se puede hacer
right.com
enwrong.com
yviceversa.io
. Salte a una PC cliente de prueba y elimine su resolución DNS cambiando el archivo de host en ese cliente, o puede hacer algo un poco más complejo y darle a ese host un servidor DNS simple para consultar, comodnsmasq
. De cualquier manera que siga el proceso, el objetivo final es hacer que el DNS responda a las consultas relacionadaswww.example.com
con la dirección IP del servidor B. Los encabezados de host HTTP llevarán el nombre DNS de www.example.com, pero estarán dirigidos a Servidor B.¡Magia!
fuente
/etc/hosts
no se me ocurrió, y esto funcionó perfectamente. Saludos por el recordatorio!hosts
archivo no está involucrado en la resolución de DNS, pero es un mecanismo de búsqueda de nombres completamente diferente que la biblioteca de resolución proporcionada por el sistema operativo del cliente puede, y en la mayoría de los casos, usar además de las búsquedas en DNS. Personalmente, creo que el bit "es mágico" simplemente alimenta "no hay necesidad de entender", lo cual es ciertamente algo malo para los profesionales.Es importante tener en cuenta que lo que importa hacer una prueba como esta para HTTP no está realmente relacionado con el DNS, sino con lo que el cliente HTTP envía como
Host
valor de encabezado.El cliente necesita conectarse a la dirección IP y al puerto correctos, obviamente, pero más allá de eso, todo se reduce al
Host
encabezado que está en línea en la solicitud HTTP.Para una prueba rápida, se puede usar el siguiente comando sin cambiar ninguna configuración de nivel del sistema operativo en el cliente:
o, para el caso,
Para hacer lo mismo con un navegador web normal, necesitaría una extensión de navegador que pueda modificar los encabezados de solicitud (o posiblemente un proxy HTTP que cambie los encabezados), o necesitaría cambiar la configuración del sistema operativo de la máquina cliente.
Como se ha mencionado, la forma más fácil de hacer un cambio de configuración sería agregar una entrada al
hosts
archivo. De esta forma, la biblioteca de resolución del sistema operativo del cliente ya se vería afectada al consultar elhosts
archivo y ni siquiera necesitará realizar una búsqueda de DNS.Otras opciones incluyen cambiar los servidores de resolución DNS configurados en el cliente a un servidor de nombres que está configurado para responder como se desee.
fuente
curl
permite anular la resolución de nombre normal (DNS o archivo host) y aún hacer encabezados automáticamente, y también SNI si usa / prueba httpS. Consulte--resolve
en su página de manual o en curl.haxx.se/docs/manpage.html .Puedes probar esto con
telnet
. Debe realizar una solicitud HTTP sin procesar escribiendo los comandos. No puede cometer ningún error, y algunos servidores tienen un tiempo de espera, por lo que también tiene que escribir toda la solicitud dentro de ese plazo.El comando será algo como esto:
La solicitud se verá así:
Tenga en cuenta que debe terminar con una línea en blanco, por lo que debe presionar Intro dos veces después del encabezado del host.
fuente
Host
no es todo en mayúsculas. (Y al parecer, algunos servidores pueden tener problemas con diferentes capitalizaciones)Lo que suelo hacer es forzar www.example.com a la dirección IP del servidor B en mi / etc / hosts. Lo he estado haciendo desde que usé Mosaic y desde que lo hago con poca frecuencia no he sentido la necesidad de encontrar algo mejor.
Buscando un poco por ti, encontré /superuser/403042/custom-host-file-for-firefox, que es respondido por https://addons.mozilla.org/es/firefox/addon/ foxyproxy-standard / pero hay una nota muy reciente que dice que está abandonado.
fuente
Si necesita verificar si funciona, le recomiendo un complemento broswer simple como
Modify Headers
para Firefox, y cambie elHOST
awww.mydomain.com
.fuente