CNAMEを使用するDNSはMXレコードを破壊しますか?


42

新しい年にサーバーを移動することを計画しているため、ホストしているすべてのWebサイトをCNAMESに移動しようとしています。クライアントに一意のCNAMEを提供することを計画していましたが、このCNAMEは後日変更できます。(今これを行う理由は他にもありますが、それが主な理由です)

私たちはこの理論をいくつかの独自のドメインでテストしてきましたが、問題ないように思えました。ただし、ドメインでMXレコードをチェックすると、MXレコードではなくCNAME値が返されました。

悲しいことに、これらのドメインはすべてコントロールパネルを介して行われますが、それらは私のためにゾーンファイルを作成しているだけだと推測しています。

company.comに2つのCNAMEを作成したい

company.com. IN CNAME client.dns.ourserver.com
www          IN CNAME client.dns.ourserver.com

MXレコードは次のようなものです。

company.com  IN MX 10 mail.company.com

mail.company.comのAレコードがあります

やること:

host -t mx company.com

mxレコードではなく、CNAME値を返します。

これは予想される動作ですか?

123-reg.co.ukコントロールパネルで上記の構成を動作させることができましたが、それが何よりも幸運かどうかはわかりません。


これはよくある質問であり、以前に何度も質問されてきました。例については、次のリンクを参照してください
。serverfault.com/ questions / 18000

答えを探すのに少し時間を費やしましたが、何か違うことをしているかどうかはわかりませんでした。特に、1つのドメインプロバイダーで正常に機能しているためです。私は自分の答えを持っているので、それはクールであり、うまくいけば誰かに役立つでしょう。
ジョンワーズ

回答:


54

これは一般的なエラーです。あなたのルートドメイン(例:company.com)用のCNAME RRを使用することはできませんし、同じゾーンの追加のリソースレコードを定義します。

ルートレコードのCNAMEレコードを作成できない理由をご覧くださいおよびRFC1034セクション3.6.2の詳細:

CNAME RRがノードに存在する場合、他のデータは存在しないはずです。これにより、正規名とそのエイリアスのデータが異なることはありません。


RFC2181セクション10.1は、上記を強化するという点でも関連しています。
ホーカンLindqvist

アペックスドメインとしても知られている
Alex78191

5

RFC2181セクション10.3には、MXレコードをCNAMEに向けることができないと書かれています。

MXリソースレコードの値...として使用されるドメイン名はエイリアスであってはなりません。


2
しかし、それは実際に質問の対象となるシナリオではありませんか?
ホーカンLindqvist

2

Aレコードの代わりにCNAMEを使用するHerokuに移動しました。my_domain.comでherokuを指すようにCNAMEを作成する代わりに、www.my_domain.comでherokuを指すようにCNAMEを作成しました。ルートドメインは転送されず、MXレコードは引き続き機能します。次に、my_domain.comをwww.my_domain.comにリダイレクトするポインターを追加しました。うまくいくようです。私のドメイン名プロバイダーでは、「標準」「URL」および「www.my_domain.com」に設定した「ポインター」設定を使用してポインターが作成されました


堅実な仕事!これを共有してくれてありがとう!
デュハイ

0

これら2つを完全に分離できることに気づきました

mydomain.com. -  A Record  - 01.0.0.1
mydomain.com - CNAME - www.cname.eg.com

サーバーをメールサーバーとして使用していない限り、実際には何も影響しません。メールはmydomain.com MXレコードを探します。このような場合にのみ影響を受けます

mydomain.com - MX - mail.mydomain.com

しかし、このような場合(別のメールサーバーを使用していることを意味する)、影響を受けません

mydomain.com - MX - mail.mycustommailserver.com

メールサーバーにIPを使用することはできません。


-1

トップダウンのレコード順でCNAMEの上にMXレコードを並べるだけであれば、いくつかのDNSプロバイダーと連携して、いくつかのMXプロバイダーが実際に裸のCNAMEと共に動作することがわかりました。

Name.comレジストラで、Office 365 MXレコードとベアCNAMEレコードを使用して、HTTPをさらに別のドメインに転送しています。MXクエリのテスト中に、DNSエントリの順序に対応してCNAMEの結果が最初に返されることに気付いたので、MXを最初に注文してみて、それがMXプロバイダーを満足させるかどうかを確認しました。驚いたことに、Office 365 MXの検証に合格し、受信メールと送信メールが実際に流れていることを確認できました。また、いくつかのWebクライアントをテストした後、HTTPは実際に指定されたCNAME宛先ホストに望ましく解決されます。

注意事項-これは明らかに標準に違反しているため、おそらく重要なものについては考慮すべきではありません。レコードの順序は仕様に含まれていないため、公式に信頼することはできません。つまり、このハックを忘れた直後に変更される可能性があります。

ヒント-MX Toolboxの無料ページは、さまざまなDNS設定を試した結果を確認するのに非常に便利です。

私の対応する投稿のための恥知らずなプラグイン


2
文書化されていない動作であるため、これは私が期待したいことではありません。
ceejayoz

2
この動作は唯一のバグと考えることができ、CNAME応答をキャッシュすることがあり、キャッシングネームサーバがのMDAは、MXレコードを参照することはありませんANS tools.ietf.org/html/rfc5321#section-5.1
Jasen

-3

ドメインのルートでCNAMEを使用できますが、これらのMXレコードはホストレコードでも構成する必要があるため、yourdomain.comのゾーンとyourdomainのルートでmx1.mail.comを構成している場合。 comはthisrecord.cname.comのCNAMEであるため、mx1.mail.comがそのCNAMEホストで構成されていることも確認する必要があります。そうでない場合、すべてのメールが失われます!


4
問題は、RFC1034に従って、「CNAME RRがノードに存在する場合、他のデータは存在しない」ことです-ルートにはNSレコードが必要であるため(とにかく有用であるため)、常に他のデータが存在します、RFCのこのセクションに違反しています。
ドクターJ

私の意見では、答えは正しいですが、MXレコードは代わりにCNAMEホスト上にある必要があります(そうではありません)。
アレクサンダータウベンコーブ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.