Resolver en CNAME, no en un registro

Resolver en CNAME, no en un registro

En el centro de datos de la universidad donde trabajo, tenemos un sistema DNS, que utilizamos para registrar los nombres de nuestros servidores y las direcciones de los servicios que están destinados únicamente para uso interno.

Normalmente utilizamos el siguiente patrón:

server     A        xxx.xxx.xxx.xxx
service    CNAME    server

Ahora tenemos un servicio que queremos resolver solo en el registro CNAME, cuando accedemos a través de HTTP, y no en el registro A.

¿Es eso posible usando solo la configuración DNS?

Respuesta1

Para algunos protocolos (como http), puede configurar el servicio para que solo responda si el cliente especifica el nombre correcto; En este escenario, configuraría el servidor web para que solo responda a solicitudes http que contengan el CNAME. Según los comentarios, ya sabes cómo hacer esto.

También existen protocolos en los que el servidor ignora el nombre que utiliza el cliente, en cuyo caso no hay forma de evitar que el usuario utilice el nombre en el registro A.

No creo que puedas hacer esto en la capa DNS. Es decir, no existe una forma confiable de crear un CNAME que sea visible para sus clientes y que se resuelva en la dirección IP deseada, sin que exista un registro A correspondiente que también sea visible para sus clientes.

Lo que tupoderLo que debe hacer (dependiendo del software DNS que esté utilizando, supongo) es tener dos registros A, ambos apuntando a la misma dirección IP, es decir,

server     A        xxx.xxx.xxx.xxx
service    A        xxx.xxx.xxx.xxx

y luego hacer que el serverregistro sea visible solo para el personal administrativo que necesita acceder a él. tu notenerutilizar un CNAME para los nombres de los servicios. El único inconveniente es que entonces es su responsabilidad asegurarse de que las direcciones IP de los dos nombres siempre coincidan.

Respuesta2

Si es posible. De hecho, ese es el primer paso para resolverlo por completo.

Sin embargo, para hacer esto, (normalmente) necesitarás omitir los métodos de resolución DNS local de tu sistema operativo, ya que (de nuevo, normalmente) no se puede hacer que se detengan en el registro CNAME y no se resuelvan más. No conozco ninguna biblioteca de resolución de DNS que le permita hacer esto, pero sí conozco una herramienta estándar que sí lo hace. digEl comando BIND no seguirá los registros CNAME si solicita explícitamente un CNAMEtipo de consulta (o un ANYtipo de consulta, aunque esopuededevolver registros A o AAAA también dependiendo del servidor DNS).

información relacionada