Acerca del sistema DNS
La información almacenada en los sistemas DNS globales determina la ruta que el correo electrónico toma de remitente a destinatario. El sistema DNS es un sistema jerárquico que administra la asignación entre los elementos con nombre en Internet y los sistemas subyacentes que admiten esos nombres. Por ejemplo, un registro de direcciones (registro A) relaciona el nombre de dominio completo (FQDN) de un host con su dirección IP o con la dirección que los routers pueden usar para enviar un paquete a ese host. La inversión de esa asignación se almacena en un registro de puntero (registro PTR). Un registro de intercambio de correo (registro MX) es un registro especial que usan solamente los sistemas de correo. Un registro MX identifica un nombre de dominio de correo (la parte de una dirección de correo electrónico que viene después de @) a un sistema que proporciona el servicio de correo para ese dominio de correo.
Todos los hosts que ejecutan los MTA compatibles con SMTP deben tener registros A y PTR válidos. Es posible que los MTA compatibles con SMTP no funcionen correctamente si, por ejemplo, un registro PTR no existe para ese host o el registro PTR para ese host no está sincronizado con el registro A. Un registro MX relaciona el dominio de correo electrónico con un registro A válido para un host que sepa cómo entregar el correo electrónico para ese dominio. También asocia un valor de prioridad de entrega para ese host determinado cuando envía correo a ese dominio de correo.
Cuando se consulta al sistema DNS para los registros MX que coinciden con un dominio determinado del correo electrónico, devuelve una lista de todos los registros MX que coinciden con los valores de dirección y sus prioridades. Un MTA compatible con SMTP que recibe más de un registro coincidente primero intenta realizar una conexión con el servidor con el valor de precedencia más bajo (o la prioridad más alta) para ese dominio de correo. Si se produce un error en esa conexión, se intenta una conexión al siguiente servidor con mayor prioridad para ese dominio. Este proceso continúa hasta que se establece una conexión o se agotan todos los hosts de la lista. Cuando todos los hosts en la lista están agotados, el mensaje se almacena durante un tiempo y se realiza otro intento de entregar el mensaje. Una forma elemental de uso compartido de carga se puede implementar teniendo varios registros MX enumerados con la misma prioridad. Los valores de prioridad pueden tener cualquier valor representado por un número entero de 16 bits, pero la mayoría de los valores usados son potencias de 5.