¿Por qué no se recomiendan múltiples registros PTR en DNS?

36

A menudo leo que no se recomienda el uso de múltiples registros PTR en una configuración de DNS.

Sin embargo, las razones son a menudo vagas, o no tan obvias, nombrando:

  • "puede causar problemas",
  • "puede provocar errores en los programas que esperan una sola respuesta": es el problema del software, ¿no?
  • "puede hacer que el paquete de respuesta DNS sea demasiado grande": ¿no se soluciona esto con EDNS ?

¿Son estas buenas razones? ¿Conoces alguna otra (buena) razón? Todo esto parece un "miedo heredado" ...

Totor
fuente
44
¿Por qué desea tener múltiples registros PTR para una sola dirección IP? No puedo pensar en una razón que tenga sentido hacer.
Per von Zweigbergk
3
@PervonZweigbergk Esto no es lo que pregunté, pero por ejemplo, porque tengo varios nombres apuntando a la misma IP y quiero que el reverso coincida con todos ellos.
Totor
10
@PervonZweigbergk Imagine un servidor de correo que maneja el correo para múltiples dominios. Es posible que desee utilizar un nombre dentro del dominio para el que está enviando correo en el EHLOcomando. Ciertos receptores requieren que tenga un PTRregistro que coincida con el dominio en su EHLOcomando, de lo contrario no aceptarán su correo. Pero si tiene varios PTRregistros, pueden elegir uno de ellos al azar, y si ese no coincide con el EHLOcomando, rechaza el correo.
Kasperd
3
Sé que no es lo que preguntaste, por eso lo pregunté a través de un comentario, no como respuesta. :-) Nunca mencionaste de qué aplicación estás hablando. Haría bien en ser más explícito al hablar sobre el contexto del correo electrónico saliente, que es lo que especula @kasperd.
Per von Zweigbergk
2
@kasperd Supongo que alguien puede querer hacer eso, pero hacerlo no es convencional e innecesariamente causa la situación problemática de la que se trata la pregunta. Solo se espera que un servidor de correo use un solo nombre en sus EHLOcomandos, independientemente de cuántos dominios maneje el correo. El nombre en HELO/ EHLOse espera para identificar el servidor de correo en sí, no se refieren a las MAIL FROMo Fromelectrónico direcciones.
Håkan Lindqvist

Respuestas:

19

Se espera que elPTR registro para un nombre inverso (por ejemplo 7.2.0.192.in-addr.arpa) identifique el nombre canónico asociado con esa dirección IP.

Tanto los punteros de puerta de enlace en los nodos de la red como los punteros de host normales en los nodos de dirección completa utilizan el RR PTR para volver a apuntar a los nombres de dominio principales de los hosts correspondientes.

De: http://tools.ietf.org/html/rfc1035#section-3.5

Esta expectativa se refleja en el software que realiza búsquedas inversas; a menudo, dicho software espera específicamente un solo nombre y espera poder usar ese nombre como un nombre canónico para ese host. Si se devuelven varios nombres, es común tomar uno al azar porque no tienen absolutamente ninguna manera de saber cuál hubiera preferido para esta ocasión en particular.

Como la expectativa general es que hay un nombre canónico asociado con una dirección IP y ese nombre es el que PTRdebe apuntar, agregar múltiples nombres generalmente no tiene ventajas (nada espera que ningún registro A/ aleatorio AAAAtenga una coincidencia PTR) pero tiene un potencial inconveniente ya que puede causar resultados extraños ya que no tiene control sobre cuál de sus PTRregistros se utilizará si ha agregado más de uno.

En esencia, si tiene varios PTRregistros, en realidad no hace que su host parezca más legítimo, sino todo lo contrario, corre el riesgo de fallar alguna validación o de otra manera romper algo.

Como una metáfora quizás un tanto extrema, es probable que no se reciban cinco pasaportes con su foto pero con diferentes nombres en el aeropuerto, así como si entregan uno.

Håkan Lindqvist
fuente
Elaboración de "un nombre canónico": en los casos en que la dirección IP podría asociarse con más de una entidad, se prefiere la más específica. En el caso de un servidor web con varios hosts virtuales basados ​​en nombres, el nombre del servidor web en sí es el más apropiado. Este es uno de esos casos en los que tratar de seguir los consejos de los RFC informativos ( PTRsiempre de acuerdo con el Aregistro) es completamente falso.
Andrew B
"Se espera que el registro PTR identifique": ¿por quién? Parece una regla de facto , ya que los desarrolladores de software comenzaron a considerar que solo un PTR era la norma. Estoy en lo cierto?
Totor
@Totor Se agregó una cotización y un enlace para una fuente.
Håkan Lindqvist
Como anécdota, recientemente se observó que Apple tiene algunos registros PTR que tienen más de 9k bytes de respuestas. Sin duda no son los únicos. Este es un ejemplo bastante extremo de lo que puede terminar cuando las políticas obligatorias de registro PTR no toman en cuenta los detalles de esta respuesta.
Andrew B
16

Todo se reduce a un comportamiento impredecible ya que el RFC no impone un límite o una forma de manejar estos registros PTR. La mayoría de las implementaciones elegirán round-robin y no logrará el resultado deseado (coincidencia perfecta entre muchos nombres con una sola IP).

Puede leer más sobre esto aquí: https://supernoc.rogerstelecom.net/pdfs/multiple-ptrs.pdf

Además, verifique este error desde la función getnameinfo de Glibc ( https://sourceware.org/bugzilla/show_bug.cgi?id=5790 ). ¿Cómo puede garantizar que esto no esté sucediendo en el número infinito de sistemas diferentes en Internet (algunos de ellos muy antiguos y sin parches)?

Para reforzar, como regla general, siempre es bueno evitar comportamientos no especificados e impredecibles. Desafortunadamente, múltiples registros PTR para una sola IP caen en esa categoría (en lo que respecta a los RFC).

Giovanni Tirloni
fuente
2
¿Cómo puede garantizar que no ocurra ningún problema en el número "infinito" de sistemas diferentes en Internet? Su respuesta es buena, pero este argumento no tiene valor. Además, los errores de los clientes son irrelevantes en mi humilde opinión, excepto si un número "significativo" de ellos se ve afectado.
Totor
2

¿Cómo garantiza que un PTR coincidirá con un registro directo particular si tiene múltiples PTR?

Esto es especialmente importante en las interacciones del servidor de correo, donde la mayoría de los servidores SMTP receptores entrantes verificarán si el reenvío coincide con el reverso

Es bastante difícil tener múltiples PTR y no hay forma de garantizar qué PTR está seleccionado y que coincide con el reenvío que proporcionó al conectarse

La forma más fácil de garantizar una combinación perfecta es tener un PTR que coincida con una entrada directa

usuario274768
fuente