martes, 1 de diciembre de 2009

Analizando la respuesta DNS

Procederemos a analizar la respuesta que nos devuelve el servidor DNS.



Voy a pasar a comentar sólo algunos campos que nos resultan de interés para la práctica que estamos realizando.
  • Transaction ID: Como vemos, coincide el ID de la consulta con la de la respuesta.
  • Answer RRs: Nos indica que el número de servidores tipo MX resueltos.
  • Additional RRs: Son campos adicionales donde se muestran las direcciones IP de cada servidor MX resuelto.

Ahora vamos a desglosar los campos Answers donde se encuentran los servidores MX resueltos por el servidor DNS.



Datos de la estructura Answers:
  • Name: gmail.com = 0xc00c. c0 indica que hay compresión y el siguiente byte establece el byte de desplazamiento donde se encuentra la información, osea: 0c, que en decimal se traduce a 12. En la posición 12 de la respuesta se encuentra lo que buscamos. Los primeros 12 bytes de la respuesta corresponden a parámetros de la consulta, el byte siguiente, osea, el 13, nos deja justo en el campo Name de la estructura Queries, que es nada más ni nada menos que: gmail.com. Todo este procedimiento se traduce como compresión.
  • Type: MX = 0x000f. Indica el tipo de servidor (servidor de correo saliente)
  • Class: IN = 0x0001. Indica la clase de servidor (servidor de internet)
  • Time to live: 47 minutes, 52 secons = 0x00000b38. Marca de tiempo que establece el tiempo que puede ser el servidor cacheado hasta vovler a interrogar para resolverlos de nuevo.
  • Data length: 27 = 0x000b. Indica el tamaño de la cadena en bytes del servidor resuelto.
  • Preference: 5 = 0x0005. Indica preferencia de uso del servidor entre los resueltos.
  • Mail exchange: gmail-smtp-in.l.google.com

Nos detenemos en el campo Mail exchange ya que merece la pena para analizar la compresión.



Este tipo de procedimiento se repite una y otra vez mientras se pueda hacer uso de la compresión.
Como ya dije, se hace uso de la compresión para dar una rápida respuesta y demorar lo menos posible en resolver las consultas de los clientes. Es un buen mecanismo pero un tanto engorroso, se deben de tener bien claros los conceptos porque en el capítulo siguiente veremos la implementación de un cliente DNS para resolver servidores tipo Mail exchange.

No hay comentarios:

Publicar un comentario