Je comprends que vous ne devriez pas pointer un enregistrement MX à une adresse IP directement, mais devrait pointer à la place à un A
enregistrement, qui, à son tour, pointe vers l'adresse IP de votre serveur de messagerie.
Mais, en principe, pourquoi est-ce nécessaire?
Réponses:
L'idée derrière l'enregistrement MX est de spécifier un hôte ou des hôtes qui peuvent accepter le courrier pour un domaine. Comme spécifié dans la RFC 1035 , l'enregistrement MX contient un nom de domaine. Il doit donc pointer vers un hôte qui peut lui-même être résolu dans le DNS. Une adresse IP ne peut pas être utilisée car elle serait interprétée comme un nom de domaine non qualifié, qui ne peut pas être résolu.
Les raisons de ceci dans les années 1980, lorsque les spécifications ont été écrites à l'origine, sont presque identiques à celles d'aujourd'hui: Un hôte peut être connecté à plusieurs réseaux et utiliser plusieurs protocoles.
Dans les années 80, il n’était pas rare d’avoir des passerelles de messagerie qui se connectaient à la fois au Internet (relativement nouveau) utilisant TCP / IP et à d’autres réseaux existants, qui utilisaient souvent d’autres protocoles. Spécifier MX de cette manière autorisait les enregistrements DNS pouvant indiquer comment atteindre un tel hôte sur un réseau autre qu'Internet, tel que Chaosnet . En pratique, cependant, cela n’est presque jamais arrivé; pratiquement tout le monde a réorganisé ses réseaux pour devenir une partie d'Internet.
Aujourd'hui, un hôte peut être atteint par plusieurs protocoles (IPv4 et IPv6) et par plusieurs adresses IP dans chaque protocole. Un seul enregistrement MX ne peut pas répertorier plus d'une adresse. La seule option est donc de pointer vers un hôte, où toutes les adresses de cet hôte peuvent ensuite être recherchées. (À titre d'optimisation des performances, le serveur DNS enverra les enregistrements d'adresse de l'hôte dans la section supplémentaire de réponse s'il possède des enregistrements faisant autorité pour eux, en sauvegardant un aller-retour.)
Il arrive également que vos échangeurs de courrier soient fournis par un tiers (par exemple, Google Apps ou Office 365). Vous pointez vos enregistrements MX vers leurs noms d’hôtes, mais il se peut que le fournisseur de services doive modifier les adresses IP des serveurs de messagerie. Étant donné que vous avez désigné un hôte, le fournisseur de service peut le faire de manière transparente et vous n'avez pas à modifier vos enregistrements.
la source
Le DNS en tant que protocole a différents types de valeurs, celles-ci ne sont pas interchangeables.
Il est important de noter que le DNS est un protocole binaire avec des correspondances strictes entre le type d'enregistrement et le type de données qu'un tel enregistrement contient.
Par exemple:
Un
A
enregistrement contient une adresse IPv4 (4 octets de données, longueur fixe).Un
AAAA
enregistrement contient une adresse IPv6 (16 octets de données, longueur fixe).Un
MX
enregistrement, par contre, contient un nom (une séquence d'étiquettes sur le format<int number of bytes> <label> <int number of bytes> <label> <int 0>
, longueur variable).Il n'est pas possible pour un
MX
enregistrement d'avoir une adresse IP comme données.la source
NXDOMAIN
).MX
enregistrements qui existent réellement dans le monde peuvent ou devraient être utilisés.Je vais jeter cela comme une supposition. Bien sûr, je suis à la maison avec la grippe, alors peut-être que je suis en manque
La RFC 974 déclare:
En demandant un nom à la place de la propriété intellectuelle, cela encourage fortement cette pratique. Les noms peuvent rester les mêmes et, en cas d'équilibrage de charge ou de reprise après sinistre, vous n'aurez plus à vous soucier de modifier l'enregistrement MX lui-même et d'attendre la propagation DNS.
la source
Certains serveurs de messagerie (tels que exim) n'autorisant pas spécifiquement l'envoi d'enregistrements MX pointant vers une adresse IP pure, vous devez donc utiliser un nom de domaine complet pour que cette adresse soit conforme. En effet, la plupart des serveurs s’attendent à ce que l’enregistrement MX contienne un nom d’hôte et non une adresse IP (c’est le cas pour les enregistrements A).
Éditer: Pour élaborer, dans DNS, chaque enregistrement a des exigences strictes pour le type de données que chaque enregistrement peut contenir. Dans le cas des enregistrements MX, il s'agit uniquement d'un nom d'hôte .
la source
MX
enregistrement ne peut avoir une adresse IP comme valeur.IN RFC 1025 Les enregistrements MX pointent uniquement vers un RR (enregistrement de ressource) d'un enregistrement A ou d'un CNAME.
Ainsi, le serveur de messagerie qui envoie le courrier demande le RR d'un enregistrement MX, l'enregistrement mx répertorie les enregistrements A de serveurs, le serveur de messagerie effectue une recherche directe pour obtenir un enregistrement A, puis transfère le courrier via smtp à l'hôte de service répertorié comme un serveur de messagerie "disposé" à recevoir du courrier pour ce domaine.
Votre question - Pourquoi le courrier ne peut-il pas être envoyé à une adresse IP?
Réponse - en raison de la confiance
De nombreuses règles en vigueur concernant le courrier ont évolué afin de maintenir la confiance entre les domaines en ce qui concerne la validité des messages échangés. Tout cela a pour finalité de réduire les spams.
Tous ces composants essentiels d’une fondation pour la construction d’un serveur de messagerie ont au moins un petit composant conçu pour créer des communications fiables et réduire les communications non fiables.
Référence - RFC 1035 et 974
https://www.ietf.org/rfc/rfc1035.txt35
https://www.ietf.org/rfc/rfc974.txt
la source
Le but des
MX
enregistrements est qu'une application (transfert de courrier) puisse en savoir plus sur l'hôte à utiliser. Au niveau de l'application, les noms d' hôte sont la bonne chose à utiliser (pas les adresses IP).En outre, l’ajout de la conception d’un enregistrement de type de variante à DNS introduit un levier de complication et, partant, un point d’entrée pour les problèmes, les problèmes d’implémentation, les problèmes de sécurité. Par exemple,
1.2.3.4.example.com.
est un nom d’hôte valide (oui, même à la lumière de RFC1034, 3.5). Spécifier cet hôte commeMX
dans un fichier de configuration de liaison pour exemple.com pourrait ressembler àet vraisemblablement c'est exactement la même chose qu'un enregistrement MX avec une adresse IP devrait ressembler. Et même pour transférer les informations dans un datagramme DNS, des additoins bizarres sont nécessaires; le moyen le plus simple serait d'introduire un nouveau type d'enregistrement de ressource, par
MXA
exemple, pour la désambiguïsation. Mais encore une fois, pourquoi introduire le fardeau d’un tel nouveau type d’enregistrementpourrait toujours être remplacé par
(et serait également supporté par les clients DNS ne sachant rien des
MXA
enregistrements)?la source