El archivo hosts en las computadoras con Windows se usa para vincular ciertas cadenas de nombres a direcciones IP específicas para anular otros métodos de resolución de nombres.
A menudo, uno decide cambiar el archivo de hosts y descubre que los cambios se niegan a tener efecto, o que incluso las entradas antiguas del archivo de hosts se ignoran a partir de entonces. Una serie de errores de "gotcha" pueden causar esto, y puede ser frustrante descubrir cuál.
Cuando se enfrenta con el problema de que Windows ignora un archivo de hosts, ¿cuál es un protocolo integral de solución de problemas que se puede seguir?
Esta pregunta tiene duplicados en SO, como el archivo HOSTS que se ignora
Sin embargo, estos tienden a tratar un caso específico, y una vez que se descubre el error que cometió el OP, la discusión ha terminado. Si no ha cometido el mismo error, tal discusión no es muy útil. Así que pensé que sería más útil tener un protocolo general para resolver todos los problemas relacionados con los hosts que cubrieran todos los casos.
Respuestas:
Según mi propia experiencia y lo que encontré mientras buscaba en Google, aquí hay algunas cosas para probar:
1. ¿Verificaste que funciona correctamente?
Los cambios en los hosts deberían tener efecto de inmediato, pero Windows almacena en caché los datos de resolución de nombres, por lo que durante algún tiempo se pueden usar los registros antiguos. Abra una línea de comando (Windows + R
cmd
, Enter) y escriba:Para descartar los datos antiguos. Para verificar si funciona, use (suponiendo que tenga una entrada ipv4 en sus hosts para www.example.com, o una entrada ipv6 en sus hosts para ipv6.example.com):
Y vea si usa la IP correcta. En caso afirmativo, su archivo de hosts está bien y el problema está en otra parte.
Además, puede restablecer el caché de NetBios con (abra la consola como administrador o fallará):
Puede verificar los datos actuales en el caché DNS con:
2. Conceptos básicos
hosts
y nohost
, etc.hosts
nohosts.txt
): tenga cuidado si ha configurado ventanas para ocultar extensiones conocidas, verifique las propiedades para estar seguro: el tipo de archivo de host correcto aparecerá como "Archivo".#
) que indica comentarios?www.example.com
yexample.com
- lo más seguro es simplemente agregar ambas)?3. Espacio en blanco
El formato para cada línea es
IP address
, luego, una pestaña horizontal (código de escape\t
, ASCIIHT
, hexadecimal0x09
) o un solo espacio (hexadecimal0x20
), luego el nombre de host, es decir.www.example.com
, luego finalmente un retorno de carro seguido de un avance de línea (códigos de escape\r\n
, ASCIICRLF
, hexadecimal0x0d 0x0a
).Entradas de muestra, utilizando imágenes de control Unicode para indicar caracteres de control. (¡No copie y pegue estos en su archivo de hosts!)
Los bytes individuales se pueden ver en Notepad ++ con el complemento de editor hexadecimal . Notepad ++ también mostrará caracteres especiales (Ver -> Mostrar símbolo) para que pueda inspeccionar fácilmente el número y el tipo de caracteres de espacios en blanco.
Si copió y pegó entradas de hosts desde algún lugar, puede terminar con múltiples espacios. En teoría, los hosts admiten múltiples espacios que separan las dos columnas, pero es otra cosa probar si nada más funciona.
Para estar seguro, asegúrese de que todas las líneas en su archivo de hosts usen tabulaciones o espacios, no ambos.
Por último, finalice el archivo con una línea en blanco.
4. Clave de registro
Hay una clave de registro que especifica la ubicación del archivo de hosts. Supuestamente, Windows no admite colocar el archivo de hosts en otras ubicaciones, pero es posible que desee verificar. La clave es:
La entrada debe ser:
5. Permisos
A veces hay problemas con los permisos en el archivo, los atributos del archivo y cosas similares. Para recrear el archivo con permisos predeterminados:
hosts
.%SystemRoot%\System32\drivers\etc
directorio y sobrescriba el archivo anterior.El último punto es importante: la copia funciona, el movimiento no.
La
Users
cuenta local debe poder leer el archivo de hosts . Para asegurarse (en Windows 7):%SystemRoot%\System32\drivers\etc
en el Explorador de Windows.hosts
archivo, asegúrese de que puede ver los archivos ocultos y del sistema .hosts
archivo y seleccioneProperties
del menú contextual.hosts Properties
ventana, haga clic en laSecurity
pestaña.Group or user names:
cuadro. Si%COMPUTERNAME%\Users
está presente, haga clic en él para ver los permisos.Users
no está presente, o está presente pero no tieneRead
permiso, haga clic enEdit...
.Users
no está presente, haga clicAdd...
, escribaUsers
, haga clicCheck Names
y haga clic en Aceptar o presione Entrar.Users
y asegúrese de queRead & execute
esté marcado en laAllow
columna. Haga clic en Aceptar. SiWindows Security
aparece un cuadro de alerta, elijaYes
continuar.hosts Properties
ventana.6. Codificación
El archivo de hosts debe estar codificado en ANSI o UTF-8 sin BOM. Puede hacer esto con Archivo -> Guardar como.
7. Proxies
Si tiene un proxy configurado, puede omitir el archivo de hosts. La solución es no usar el proxy o configurarlo para que no lo haga.
Para verificar, vaya a su Internet Explorer -> Opciones de Internet -> Conexiones -> Configuración de LAN. Si todo está en blanco y la opción "Detectar configuraciones automáticamente" está marcada, no está utilizando un proxy.
Si confía en un proxy para acceder a la web y, por lo tanto, no desea deshabilitarlo, puede agregar excepciones yendo a Internet Explorer -> Opciones de Internet -> Conexiones -> Configuración de LAN -> Servidor proxy / Avanzado. Luego agregue sus excepciones al cuadro de texto Excepciones. P.ej
localhost;127.0.0.1;*.dev
8. Dirección DNS
(Esto también puede resolver problemas de proxy).
Vaya a las propiedades de sus conexiones de red, luego a la configuración de TCP / IP y cambie el primer servidor DNS a
127.0.0.1
(localhost). El segundo probablemente debería ser la IP de su DNS real.Esto no es necesario para que el archivo de hosts funcione , pero puede ayudar en su caso si algo está configurado de manera extraña.
9. direcciones locales
Si está utilizando una entrada de dominio .local en forma de myhost.local y se ignora, intente lo siguiente
incluso si el www.myhost.local no existe. Windows de alguna manera no agrega su grupo de trabajo o dominio local.
fuente
hosts
se usa el archivo, y cambiarlo a 127.0.0.1 es efectivamente un error, a menos que realmente esté ejecutando un servidor DNS en su computadora.Asegúrese de haber puesto la dirección de IP primero y luego el "dominio" de esta manera:
fuente
127.0.0.1 bo.dev www.bo.dev ftp.bo.dev
.dev
TLD localmente pensando que no tendrá colisiones. Es un TLD global genérico válido propiedad de Google, y tendrá muchos problemas para usarlo. Ver ma.ttias.be/chrome-force-dev-domains-https-via-preloaded-hstsAgregue los permisos de comprobación de archivos. Descubrí que, aunque tenía derechos de administrador local para la computadora y, por lo tanto, para los hosts. No fue sino hasta que agregué usuarios locales a los permisos del archivo de hosts con Leer y Leer y Ejecutar, y luego con ipconfig / flushdns, que los hosts se activaron.
fuente
(machine)\USERS
con los permisos Leer y Leer y ejecutar y despuésipconfig /flushdns
funcionó. Muchas gracias. Estoy muy contento de finalmente recuperar mi archivo de hosts.En mis casos probé el archivo creado por Windows 7: C: \ Windows \ System32 \ drivers \ etc \ hosts.ics.
hosts.ics:
Como resultado, Windows ignora la configuración en C: \ Windows \ System32 \ drivers \ etc \ hosts y la usa desde hosts.ics.
fuente
Hosts
archivo solo porqueHosts.ics
está presente. Algo más podría estar causando que Windows ignore sus archivos de Hosts, tal vez una extensión incorrecta (pero oculta).Estaba experimentando el mismo problema, las entradas del archivo de hosts se ignoraban. Intenté todo en este y muchos otros hilos sin suerte. Pensé que publicaría lo que funcionó para mí en caso de que alguien más se encuentre con esto.
Nota: simplemente abriendo el archivo de hosts y eliminando el contenido, verificando que era 0kb y volviendo a agregarlo no funcionó. Sospecho que hay un problema de permisos en el archivo.
fuente
hosts.bak
, y luego proceda como se describe en el paso 3.Han pasado horas, probablemente días en esto.
La seguridad de IBM Trusteer Endpoint Rapport puede causar este problema.
Agregué mysite.com a su lista de sitios de confianza.
Creo que, como parte de su seguridad, evita que el malware o los virus lo desvíen a sitios alternativos.
Tomó mysite de la lista de sitios de confianza y ya no comprueba y "corrige" el desvío de mi archivo de hosts.
Espero que ayude a alguien a resolver su problema.
fuente
Asegúrese de haber ingresado los valores como
IP NAME
, no comoNAME IP
.Esto puede suceder si hay, por ejemplo, solo una entrada en el archivo y si ignora el texto de comentario.
fuente
Un problema que se perdió en la discusión anterior son los nombres no calificados (nombres que no incluyen un punto) en el archivo de hosts. La configuración de su red podría entrar en ese punto y agregar automáticamente su propio dominio al final de un dominio no calificado. En consecuencia, el nombre podría no resolverse, o peor aún, resolverse en una máquina completamente diferente.
fuente
En Windows, asegúrese de que HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ Tcpip \ Parameters \ DataBasePath apunte al directorio del archivo de hosts.
fuente
En mi caso, el problema era que estaba copiando un archivo de hosts de un directorio encriptado y anulando el etc / hosts con eso. Tuve que mirar las propiedades y desmarcar la casilla de verificación "cifrar archivo".
fuente
Mi archivo de hosts se ignora hasta que tenga una conexión de red en mi computadora portátil (Windows 7). Una vez que me conecto a una red, todo funciona como se esperaba. Obviamente, sin una red no puedo hacer ping a los hosts, etc., pero todavía esperaba que Windows obtuviera sus direcciones IP del archivo de hosts. No lo hace. Incluso después de desconectarse, todavía busca direcciones correctas, pero entre reiniciar la computadora y conectarse primero a una red, ignora el archivo de hosts.
(Por cierto, las pestañas, espacios y ningún retorno de carro son irrelevantes por lo que puedo decir).
fuente