La resolución DNS falla en el navegador web pero nslookup tiene éxito


9

Somos una organización pequeña de 300 puestos con un entorno mixto de BYOD y Active Directory (Windows Server 2012 Standard, Windows 7 Enterprise) y estamos teniendo un problema muy extraño que involucra fallas de alcance muy específico para resolver el nombre de dominio de nuestra organización en nuestro dominio -unidas, máquinas controladas por la compañía. Para el propósito de esta discusión, usaré company.com en lugar de nuestro nombre de dominio.

Antecedentes:

  • El controlador de dominio de Active Directory se encuentra en 172.16.1.3
  • La máquina AD / DC también ejecuta DHCP, DNS y HTTP (IIS)
  • Los sitios web de nuestras organizaciones en company.com y subdomain.company.com están alojados por IIS en la máquina AD / DC
  • Tenemos un escenario de DNS dividido en el que el servidor AD / DC se usa para la resolución DNS interna, pero un servidor externo diferente proporciona una resolución DNS para consultas públicas
  • La dirección IP correspondiente a company.com y subdominio.company.com es la dirección IP pública utilizada por un firewall en el borde de nuestra red (tanto en el servidor DNS AD / DC como en el servidor DNS externo)
  • El firewall está configurado correctamente para que NAT pase las solicitudes HTTP y HTTPS que recibe en su dirección IP pública a la IP interna del servidor AD / DC y refleja

Escenario 1:

  • Un usuario en una máquina Windows 7 Enterprise unida al dominio se conecta directamente a nuestra red local con la dirección local 172.16.6.100 / 16, emitida por el servidor DHCP.
  • La entrada del servidor DNS es proporcionada por DHCP (172.16.1.3)
  • Este usuario puede acceder a los sitios web alojados en company.com y subdominio.company.com
  • Editar: nslookup se ha ejecutado en este escenario y devuelve correctamente el registro DNS adecuado del servidor DNS interno (172.16.1.3)

Escenario 2:

  • El mismo usuario en la misma máquina Windows 7 Enterprise unida al dominio vuelve a casa y se conecta a Internet utilizando su ISP residencial
  • DHCP proporciona las entradas del servidor IP y DNS para la máquina cliente
  • Este usuario puede acceder a cualquier recurso de Internet, como google.com
  • Este usuario no puede acceder al sitio web en company.com o subdominio.company.com (se devuelve un error "host no resuelto")
  • Cuando este usuario ejecuta nslookup en company.com que NO reciben la dirección IP pública correcta proporcionada por el DNS
  • Las solicitudes HTTP / HTTPS a la dirección IP tienen éxito y el servidor devuelve correctamente una página web
  • Este problema prevalece en todos los navegadores web
  • El uso de tracert company.com devuelve "no se puede resolver el nombre del sistema de destino"
  • El uso de ping company.com devuelve "no se pudo encontrar el host company.com"
  • Cuando se ejecuta Wireshark en el cliente antes / durante una solicitud fallida, la máquina cliente no envía paquetes (ya sea para la resolución DNS o para una solicitud HTTP / ping / tracert inicial)
  • Reiniciar el servicio del cliente DNS no resuelve el problema
  • Detener el servicio del cliente DNS no resuelve el problema
  • El uso de ipconfig / flushdns no resuelve este problema
  • Usar route / f no resuelve este problema
  • Restablecer las conexiones de red usando netsh int ip reset no resuelve este problema
  • Editar: nslookup se ha ejecutado en este escenario y devuelve correctamente el registro DNS adecuado del servidor DNS especificado por la configuración de DHCP de la red utilizada por el usuario

Escenario 3:

  • Este mismo usuario en una computadora personal con Windows 7 Professional (no unida a un dominio) puede acceder a los sitios web en company.com y subdomain.company.com cuando está conectado a nuestra red local
  • Editar: nslookup se ha ejecutado en este escenario y devuelve correctamente el registro DNS adecuado del servidor DNS interno (172.16.1.3)

Escenario 4:

  • Este mismo usuario en una computadora personal con Windows 7 Professional (no unida al dominio) puede acceder a los sitios web en company.com y subdomain.company.com cuando está conectado a su red doméstica
  • Editar: nslookup se ha ejecutado en este escenario y devuelve correctamente el registro DNS adecuado del servidor DNS especificado por la configuración de DHCP de la red utilizada por el usuario

Notas finales

Este problema parece generalizarse para afectar a todas las computadoras propiedad de la compañía. Estamos utilizando una imagen de sistema común para todas las computadoras propiedad de la compañía, que se cargó en agosto. He estado buscando en Internet en busca de posibles soluciones y hasta ahora he llegado con las manos vacías. Realmente aprecio cualquier sugerencia o consejo que pueda tener.


2
Ejecutar sitios web en sus controladores de dominio, ¿eh? Eso no es bueno.
Ryan Ries

1
Sí, estoy de acuerdo. Los presupuestos son ajustados, ¿qué puedo decir? Tal vez en el futuro ...
Dan

1. ¿Está configurando alguna configuración de DNS en las máquinas unidas al dominio con la directiva de grupo? 2. Ejecutar nslookup en modo de depuración para cada escenario probablemente le dará algunas pistas.
joeqwerty

Gracias por la sugerencia. El servidor DHCP proporciona el DNS, no la política de grupo, por lo que cuando un usuario abandona nuestro edificio físico, recibe el servidor DNS de la red a la que se conecta. Ejecuté nslookup en todos los casos, y devuelve la configuración de DNS correcta en todos los casos (incluido el caso de falla en el Escenario 2). El problema parece ser que, por alguna razón, los navegadores web ni siquiera se molestan en ir tan lejos como nslookup, como se describió anteriormente, simplemente fallan sin iniciar ninguna transacción de red en el Escenario 2.
Dan

¿Puedo suponer que pueden acceder a él www.company.compero no solo company.como que ambos fallan?
TheCleaner

Respuestas:


1

Las computadoras unidas al dominio estarán buscando su DC, no solo haciendo una búsqueda basada en DNS. Dado que el dominio es el mismo que el sitio web público, buscarán un registro SRV para decirles cómo llegar al DC y obtener información del dominio. Dado que no hay DC en la red remota, no pueden resolver este nombre usando partes normales de Windows compatibles con AD.

Cuando usa ping o (casi) cualquier aplicación de Windows, usa la pila completa de IP de Windows, incluidas las partes que hablan con AD. Mientras que NSLookup en realidad solo hace una consulta DNS. Ha verificado esto con sus trazas de Wireshark, Windows no realiza búsquedas cuando intenta acceder a company.com, pero nslookup muestra una búsqueda DNS adecuada. Es por eso que no puede resolver el dominio a través de ping o navegador web, pero nslookup está bien.

La solución para la primera parte de esto es usar www.company.com para acceder al sitio web tanto interna como externamente para que los clientes ignoren por completo la búsqueda de un DC.

La solución para la segunda parte es más complicada dependiendo de a qué subdominio.company.com se refiera tanto interna como externamente. ¿El DC tiene un registro DNS para el subdominio, o esas solicitudes se acaban de enviar al servidor DNS externo? Si tiene un registro DNS, ¿dónde apunta ese registro?


0

Verificaría que el archivo HOSTS ( http://en.wikipedia.org/wiki/Hosts_%28file%29#Location_in_the_file_system ) en la máquina no contenga ninguna entrada para los hosts a los que intenta acceder. Creo que la herramienta NSLOOKUP omite el archivo hosts pero el navegador web no lo hará.

También verificaría que no tenga un proxy configurado en el navegador web, ya que algunos tipos de proxy también resuelven el DNS.

También intentaría ejecutar el navegador en su "modo seguro" (es decir, con todos los complementos y complementos deshabilitados) con IE ("iexplore -extoff") o Firefox (mantenga presionada la tecla Mayús al iniciar o "firefox -safe-mode").

Idealmente, si es posible, intente con otro navegador web para reducir si es el navegador web o el sistema operativo.

Entonces, si todavía no llegaba a ninguna parte, verificaría qué servicios están vinculados al adaptador de red (¿un firewall loco con reglas específicas que se interponen en el camino?)

Finalmente, y esto se está desviando hacia lo cada vez más improbable, pero NSLOOKUP agregará el nombre de dominio específico de la computadora o conexión a las consultas automáticamente. Por ejemplo, mi enrutador establece el nombre de dominio como "enrutador", por lo que cualquier búsqueda de algo como "matthew" en realidad busca "matthew.router" en el DNS, es posible que el navegador web no esté haciendo esto ... como dijiste que hiciste un paquete capturarlo no parece que este sea tu problema ... pero en caso de que te lo hayas perdido en la captura de paquetes o tu entorno de captura no fuera del todo correcto :-).

Estas son las cosas que probaría y espero que esto también te ayude :-).

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.