MX Records: a história não contada do correio eletrônico

25/03/2025

MX Records: a história não contada do correio eletrônico
Desenhado por Freepik

Por Alejandro Acosta, Coordenador de P&D no LACNIC

Os avanços no mundo tecnológico acontecem em todos os níveis, e o mundo do DNS e do e-mail não é a exceção. Nesta postagem do blog, faremos uma retrospectiva e exploraremos a história por trás de alguns registros DNS, revisaremos brevemente como os sistemas de correio eletrônico funcionavam antes de 1983 e daremos crédito ao poderoso registro MX, que revolucionou a forma como o correio eletrônico é tratado na Internet.   É muito importante observar que não usaremos os conceitos de MTA (Mail Transfer Agent) ou MUA (Mail User Agent) porque esses mnemônicos foram introduzidos anos depois do próprio registro MX.

O correio eletrônico era muito diferente do que conhecemos hoje.

1. Entre 1960 e 1970, surgiram os primeiros sistemas de correio eletrônico, desenvolvidos em universidades e centros de pesquisa. Um dos primeiros foi o programa “CTSS Mail” no MIT, que permitia que os usuários enviassem mensagens para outros usuários *somente* dentro do mesmo servidor.

2. Formatos e Protocolos (1971-1982) Naquela época, não havia um protocolo padronizado para o e-mail, mas cada sistema tinha seu próprios métodos e formato para enviar e receber mensagens. Isto é, as mensagens enviadas de um sistema para outro poderiam não ser compatíveis.

3. O trabalho de Ray Tomlinson (1971) fez história ao implementar o primeiro sistema de e-mail que podia enviar mensagens entre diferentes computadores na ARPANET. Tomlinson introduziu o uso do símbolo “@” para separar o nome de usuário do nome do host, um formato que ainda é usado hoje. Curiosidade: há muitas histórias sobre o motivo pelo qual o símbolo @ é usado para separar o nome de usuário do nome do host, parte do motivo é porque @ é lido como “at”, que em inglês significa “em”, quer dizer, luisalfonso@lacnic.net é lido Luis Alfonso em lacnic.net

4.- Em 1983, com a introdução do protocolo SMTP (Simple Mail Transfer Protocol), foi estabelecido um padrão que permitiu uma comunicação mais eficiente e universal entre diferentes sistemas de e-mail, marcando o início de uma nova era em mensagens digitais.

Que registro DNS era usado antes de MX?

Antes da introdução dos registros MX, os registros MD (Mail Delivery) e MF (Mail Forwarding) eram usados ​​para vincular agentes de correio no Sistema de Nomes de Domínio (DNS). A especificação original usava esses registros MD e MF para vincular agentes de correio.

Aspectos principais dos registros MD e MF:

  • As consultas MAILA solicitavam ambos os tipos de registros: MD e MF.
  • Os registros MD especificavam hosts que se esperava tivessem a caixa de correio em questão.
  • Os registros MF especificavam hosts que se esperava atuassem como intermediários e aceitassem correio eletrônico para seu encaminhamento.

O problema de usar registros MD e MF separados era que um agente de correio que realizava uma consulta MAILA não podia usar o cache, uma vez que este podia ter resultados para uma consulta MD ou MF, mas não para ambas. A solução foi substituir MD e MF por um novo tipo de registro chamado MX, que combina as informações de ambos em um único tipo de registro.

           F.ISI.ARPA      A         IN     10.2.0.52

           F.ISI.ARPA      MD        IN     F.ISI.ARPA

           XXXX.ARPA       CNAME     IN     F.ISI.ARPA

           XXXX.ARPA       MF        IN     A.ISI.ARPA

Extrato de exemplo de configuração tirado do RFC 882.

O que são as consultas DNS MAILA?

As consultas MAILA eram consultas DNS usadas para solicitar tanto registros MD quanto MF no sistema de nomes de domínio.

Principais aspectos das consultas MAILA:

  • Solicitavam ambos os tipos de registros: MD e MF.
  • Os registros MD especificavam hosts que se esperava tivessem a caixa de correio em questão.
  • Os registros MF especificavam hosts que se esperava atuassem como intermediários.

No entanto, o uso de registros separados apresentava um problema de armazenamento em cache. Como um agente de correio não podia confiar que o cache tivesse ambos os registros, muitas vezes ele tinha que consultar diretamente os servidores autoritativos. Para resolver isso, foram introduzidos os registros MX, que combinam as informações em um único tipo de registro.

Exemplo de uma consulta DNS MAILA

Exemplo de uma resposta DNS MAILA

Leia também:

Quando foram usados os registros MD e MF?

Os registros MD e MF foram usados entre 1983 e 1986. A seguir, um cronograma relevante:

  • Novembro de 1983: os RFC 882 e 883 são publicados, definindo o sistema de nomes de domínio e especificando o uso de registros MD e MF.
  • Novembro de 1985: Craig Partridge completa o RFC 974, que aborda um erro nos registros MD/MF.
  • Janeiro de 1986: o RFC 973 é publicado, introduzindo o registro MX e substituindo os registros MD e MF.

Quais eram os erros/problemas dos registros MD e MF?

O principal erro (temos que imaginar que estamos naqueles anos) era que um agente de correio que realizava uma consulta MAILA não podia usar o cache de forma eficiente, pois ele só podia conter um dos dois tipos de registros (MD ou MF). Isso exigia a consulta de servidores autoritativos para cada decisão de roteamento, o que levou à criação do registro MX.

Exemplo de entrega de um correio eletrônico por um agente nessa época (1983 – 1986)

Antes dos registros MX, as consultas MAILA solicitavam registros MD e MF.

Por exemplo:

  • Um agente de correio deseja enviar um e-mail para user@example.com.
  • O agente emite uma consulta DNS MAILA para example.com.
  • O servidor DNS poderia responder com:
    • Um registro MD que indica o host que deve lidar com a entrega final.
    • Um registro MF que indica um host que encaminhará o correio eletrônico.
  • O agente de correio usa essas informações para encaminhar o correio eletrônico.

Embora não explicitamente declarado, é provável que o programa de correio eletrônico haja tentado primeiro o DM e, se isso falhava, haveria tentado o MF.

Como era o sistema de correio antes de 1983?

Antes de 1983, o sistema de correio era baseado no UUCP (UNIX-to-UNIX Copy Protocol), que formava a espinha dorsal de uma rede de armazenamento e encaminhamento. Os usuários tinham que especificar manualmente (o método era:  hosta!hostb!user) as rotas do correio, o que se tornou problemático com o crescimento da USENET.

Uma tentativa nos 90’

Em julho de 1990, o RFC 1168, intitulado “INTERMAIL AND COMMERCIAL MAIL RELAY SERVICES”, descrevia um sistema para que usuários comerciais enviassem e-mails pela Internet em uma época em que o acesso à rede era limitado e as redes estavam fragmentadas em “ilhas” isoladas. O Intermail, serviço proposto no documento, atuava como uma ponte para retransmitir e-mails entre redes comerciais e acadêmicas, resolvendo um problema temporário de conectividade.

No entanto, seu sucesso foi limitado. Com a rápida expansão da Internet e a adoção do protocolo SMTP como padrão universal, sistemas como o Intermail se tornaram obsoletos em meados dos anos 90. Hoje, o RFC 1168 é um documento histórico que reflete os desafios e as soluções criativas dos primeiros anos do correio eletrônico, estabelecendo as bases para a comunicação global moderna.

Como é o sistema de correio hoje?

Hoje, os agentes de transferência de correio (MTA) usam registros MX para determinar como rotear mensagens. O agente usa DNS para consultar os registros MX do domínio de destino (Querytype=MX) e tenta a entrega em ordem de preferência: quanto menor a preferência, maior a prioridade.

Conclusões

Os registros MD e MF foram fundamentais para o roteamento de e-mails antes da introdução dos registros MX. No entanto, seu uso separado gerava problemas de armazenamento de cache e eficiência. A criação do registro MX resolveu essa situação com um único tipo de registro, simplificando o roteamento de e-mails no Sistema de Nomes de Domínio.

Você já conhecia essa história? Será que o registro MX vai mudar no futuro?

Referências:

As opiniões expressas pelos autores deste blog são próprias e não refletem necessariamente as opiniões de LACNIC.

para receber as últimas novidades no seu e-mail
Inscrever-se
Notificar de


0 Comments
mais antigos
mais recentes Mais votado
Feedbacks embutidos
Ver todos os comentários