ADC

Sistema de nombres de dominio

Nota: A partir de la versión 13.0 compilación 41.x, el dispositivo NetScaler en modo ADNS y proxy cumple totalmente con el día de la marca DNS 2019.

Puede configurar el dispositivo NetScaler para que funcione como un servidor de nombres de dominio autorizado (servidor ADNS) para un dominio. Agregue los registros de recursos DNS que pertenecen al dominio para el que el dispositivo tiene autoridad y configure los parámetros de registro de recursos. También puede configurar el dispositivo como un servidor DNS proxy que equilibre la carga de una comunidad de servidores de nombres DNS que se encuentran dentro o fuera de la red. Configure el dispositivo como una resolución final y un reenviador. Puede configurar sufijos DNS que permitan la resolución de nombres cuando no se configuran nombres de dominio completos. El dispositivo también admite la consulta DNS ANY que recupera todos los registros que pertenecen a un dominio.

Puede configurar el dispositivo para que funcione simultáneamente como un servidor DNS autoritativo para un dominio y un servidor proxy DNS para otro dominio. Cuando configura el dispositivo como el servidor DNS autorizado o el servidor proxy DNS para una zona, puede permitir que el dispositivo utilice el TCP para tamaños de respuesta que superen el límite de tamaño especificado para el Protocolo de datagramas de usuario (UDP).

Cómo funciona el DNS en NetScaler

Puede configurar el dispositivo NetScaler para que funcione como servidor ADNS, servidor proxy DNS, resolución final y reenviador. Puede agregar registros de recursos DNS en el dispositivo NetScaler, incluidos los siguientes registros:

  • Registros de servicios (SRV)
  • Registros IPv6 (AAAA)
  • Registros de direcciones (A)
  • Registros de intercambio de correo (MX)
  • Registros de nombres canónicos (CNAME)
  • Registros de punteros (PTR)
  • Registros de inicio de autoridad (SOA)
  • Registros de texto (TXT)
  • Registros de puntero de autoridad de nombres (NAPTR)
  • Registros DNSKEY
  • Registros de autorización de la entidad de certificación (CAA)

Además, puede configurar NetScaler para equilibrar la carga de servidores de nombres DNS externos.

El dispositivo NetScaler se puede configurar como la autoridad de un dominio. Agregue registros SOA y NS válidos para el dominio.

Un servidor ADNS es un servidor DNS que contiene información completa sobre una zona.

Para configurar el dispositivo NetScaler como un servidor ADNS para una zona, debe agregar un servicio ADNS y, a continuación, configurar la zona. Para hacerlo, agregue registros SOA y NS válidos para el dominio. Cuando un cliente envía una solicitud de DNS, el dispositivo NetScaler busca el nombre de dominio en los registros de recursos configurados. Puede configurar el servicio ADNS para que se use con la función NetScaler Global Server Load Balancing (GSLB).

Puede delegar un subdominio agregando registros NS para el subdominio a la zona del dominio principal. A continuación, puede hacer que NetScaler sea autoritativo para el subdominio, agregando un “registro de adhesión” para cada uno de los servidores de nombres de subdominio. Si GSLB está configurado, NetScaler toma una decisión de equilibrio de carga de GSLB en función de su configuración y responde con la dirección IP del servidor virtual seleccionado. La siguiente ilustración muestra las entidades en una configuración de ADNS GSLB y una configuración de proxy DNS.

Figura 1. Modelo de entidad proxy DNS

Modelo de entidad DNS

El dispositivo NetScaler puede funcionar como un proxy DNS. El almacenamiento en caché de los registros DNS, que es una función importante de un proxy DNS, está habilitado de forma predeterminada en el dispositivo NetScaler. El almacenamiento en caché permite que el dispositivo NetScaler proporcione respuestas rápidas para traducciones repetidas. Cree un servidor virtual DNS de equilibrio de carga y servicios DNS y, a continuación, vincule estos servicios al servidor virtual.

NetScaler ofrece dos opciones, tiempo de vida mínimo (TTL) y TTL máximo para configurar la vida útil de los datos en caché. Los datos almacenados en caché agotan el tiempo de espera según lo especificado en la configuración de estas dos opciones. NetScaler comprueba el TTL del registro DNS procedente del servidor. Si el TTL es menor que el TTL mínimo configurado, se reemplaza por el TTL mínimo configurado. Si el TTL es mayor que el TTL máximo configurado, se reemplaza por el TTL máximo configurado.

NetScaler también permite almacenar en caché las respuestas negativas de un dominio. Una respuesta negativa indica que la información sobre un dominio solicitado no existe o que el servidor no puede proporcionar una respuesta a la consulta. El almacenamiento de esta información se denomina almacenamiento en caché negativo. El almacenamiento en caché negativo ayuda a acelerar las respuestas a las consultas en un dominio y, opcionalmente, puede proporcionar el tipo de registro.

Una respuesta negativa puede ser una de las siguientes:

  • Mensaje de error NXDOMAIN: si hay una respuesta negativa en la memoria caché local, NetScaler devuelve un mensaje de error (NXDOMAIN). Si la respuesta no está en la memoria caché local, la consulta se reenvía al servidor y el servidor devuelve un error de NXDOMAIN a NetScaler. NetScaler almacena en caché la respuesta localmente y, a continuación, devuelve el mensaje de error al cliente.
  • Mensaje de error NODATA: NetScaler envía un mensaje de error NODATA si el nombre de dominio en la consulta es válido pero los registros del tipo dado no están disponibles.

NetScaler admite la resolución recursiva de solicitudes de DNS. En la resolución recursiva, el solucionador (cliente DNS) envía una consulta recursiva a un servidor de nombres para un nombre de dominio. Si el servidor de nombres consultado tiene autoridad para el dominio, responde con el nombre de dominio solicitado. De lo contrario, NetScaler consulta los servidores de nombres de forma recursiva hasta que encuentre el nombre de dominio solicitado.

Antes de poder aplicar la opción de consulta recursiva, primero debe habilitarla. También puede establecer el número de veces que la resolución de DNS debe enviar una solicitud de resolución (reintentos de DNS) si falla una búsqueda de DNS.

Puede configurar NetScaler como reenviador de DNS. Un reenviador pasa las solicitudes de DNS a servidores de nombres externos. NetScaler le permite agregar servidores de nombres externos y proporciona resolución de nombres para dominios fuera de la red. NetScaler también le permite establecer la prioridad de búsqueda de nombres en DNS o Windows Internet Name Service (WINS).

Permitir que el dispositivo ADC use DNS para resolver el nombre de host en su dirección IP respectiva

Nota: Necesita una utilidad SSH para acceder a la interfaz de línea de comandos (CLI) del dispositivo.

De forma predeterminada, el dispositivo ADC no puede resolver el nombre de host en su dirección IP respectiva. Realice las siguientes tareas para habilitar la resolución de nombres en el dispositivo:

  1. Defina los servidores de nombres.
  2. Defina un sufijo DNS.

Puntos que tener en cuenta

Realice la búsqueda de DNS desde la CLI. Las búsquedas de DNS desde el símbolo del shell del sistema operativo FreeBSD fallan porque la entrada en el archivo /etc/resolv.conf apunta a la dirección IP 127.0.0.2.

Los siguientes comandos se sustituyen por el comando drill en la CLI de FreeBSD del dispositivo al que se puede acceder con el comando shell:

-  host
-  dig
-  getent/MIP
-  nslookup
<!--NeedCopy-->

Por ejemplo, en lugar de ejecutar dig www.google.com @8.8.8.8 para consultar el registro “A” “www.google.com” en el servidor de nombres “8.8.8.8”, puede ejecutar el comando drill www.google.com @8.8.8.8. El comando drill funciona exactamente igual que el comando dig.

root@lab# drill www.google.com @8.8.8.8
;; ->>HEADER<<- opcode: QUERY, rcode: NOERROR, id: 57980
;; flags: qr rd ra ; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;; www.google.com. IN A

;; ANSWER SECTION:
www.google.com. 300 IN A 142.250.187.196

;; AUTHORITY SECTION:

;; ADDITIONAL SECTION:

;; Query time: 53 msec
;; SERVER: 8.8.8.8
;; WHEN: Thu Jun 9 11:04:55 2022
;; MSG SIZE rcvd: 48
<!--NeedCopy-->

Si el dispositivo no puede hacer ping al servidor DNS en su dirección SNIP, el estado del servidor se muestra como inactivo. El ping correcto es importante cuando el dispositivo está detrás de un firewall.

Configuración CLI

En el símbolo del sistema, escriba:

add dns nameServer <Name_Server_IP_Address>
add dns suffix <DNS_Suffix>
<!--NeedCopy-->

Para verificar la configuración, escriba:

show dns nameServer
show dns suffix
<!--NeedCopy-->

Para probar la resolución de DNS, escriba:

show dns addrec <Host_Name>
<!--NeedCopy-->

Configuración de GUI

  1. Vaya a Administración del tráfico > DNS > Servidores de nombres > Agregar.
  2. En el cuadro de diálogo Crear servidor de nombres, introduzca la dirección IP del servidor de nombres y haga clic en Crear.
  3. Vaya a Administración del tráfico > DNS > Sufijo DNS > Agregar.
  4. En el cuadro de diálogo Crear sufijo DNS, introduzca el sufijo DNS, como ejemplo.com, que se utilizará para todas las consultas de host y haga clic en Crear.

DNS Round Robin

Cuando un cliente envía una solicitud de DNS para encontrar el registro de recursos de DNS, recibe una lista de direcciones IP que se resuelven con el nombre en la solicitud de DNS. A continuación, el cliente utiliza una de las direcciones IP de la lista, generalmente, el primer registro o dirección IP. Por lo tanto, se utiliza un único servidor para el TTL total de la memoria caché y se sobrecarga cuando llegan muchas solicitudes.

Cuando NetScaler recibe una solicitud de DNS, responde cambiando el orden de la lista de registros de recursos DNS en un método round robin. Esta función se denomina DNS por turnos. El round robin distribuye el tráfico por igual entre los centros de datos. NetScaler realiza esta función automáticamente. No tiene que configurar este comportamiento.

Resumen funcional

Si NetScaler está configurado como un servidor ADNS, devuelve los registros DNS en el orden en que se configuraron los registros. Cuando NetScaler se configura como proxy DNS, devuelve los registros DNS en el orden en que recibe los registros del servidor. El orden de los registros presentes en la memoria caché coincide con el orden en que se reciben los registros del servidor.

A continuación, NetScaler cambia el orden en que se envían los registros en la respuesta DNS en un método round robin. La primera respuesta contiene el primer registro en secuencia, la segunda respuesta contiene el segundo registro en secuencia y el orden continúa en la misma secuencia. Por lo tanto, los clientes que soliciten el mismo nombre pueden conectarse a diferentes direcciones IP.

Ejemplo de DNS de Round Robin

Como ejemplo de DNS por turnos, considere los registros DNS que se han agregado de la siguiente manera:

  add dns addRec ns1 1.1.1.1  add dns addRec ns1 1.1.1.2  add dns addRec ns1 1.1.1.3  add dns addRec ns1 1.1.1.4
<!--NeedCopy-->

El dominio, abc.com está vinculado a un registro NS de la siguiente manera:

  add dns nsrec abc.com. ns1
<!--NeedCopy-->

Cuando NetScaler recibe una consulta para el registro A de ns1, los registros de direcciones se sirven en un método round robin de la siguiente manera. En la primera respuesta de DNS, 1.1.1.1 se sirve como el primer registro:

  ns1.                    1H IN A         1.1.1.1  ns1.                    1H IN A         1.1.1.2  ns1.                    1H IN A         1.1.1.3  ns1.                    1H IN A         1.1.1.4
<!--NeedCopy-->

En la segunda respuesta de DNS, la segunda dirección IP, 1.1.1.2, se sirve como el primer registro:

  ns1.                    1H IN A         1.1.1.2  ns1.                    1H IN A         1.1.1.3  ns1.                    1H IN A         1.1.1.4  ns1.                    1H IN A         1.1.1.1
<!--NeedCopy-->

En la tercera respuesta de DNS, la tercera dirección IP, 1.1.1.2, se sirve como el primer registro:

  ns1.                    1H IN A         1.1.1.3  ns1.                    1H IN A         1.1.1.4  ns1.                    1H IN A         1.1.1.1  ns1.                    1H IN A         1.1.1.2
<!--NeedCopy-->
Sistema de nombres de dominio