web-dev-qa-db-ja.com

ルート/頂点DNSゾーンにcnameを使用すると、MXレコードが失われます

DNSはMediaTempleでホストされています-ロジックが間違っているのか、Media Templeフロントエンドが編集フォームからゾーンファイルに入力を変換する方法に固有であるのか興味があるので、これについてのみ言及します。

MXレコードはGoogleアプリを指しています。 3つのAレコードがWebサーバーを指しています。 Media Temple DNSエディターには、名前、タイプ、データの3つのフィールドが含まれています。 Aレコードは次のように構成されます。

"blank" (literally the field is blank) - A - IP Address of web server 
* (wildcard) - A - IP Address of web server
www - A - IP Address of web server

新しいウェブサイトは別のホスト上に構築されました。上記の各キャプション付きAレコードは、同じ3つの「名前」(ホスト)をext.squarespace.comにポイントするCNAMEレコードに変換されました。

GoogleAppsへのメールフローが停止しました。

My-MacBook-Air:~ me$ Dig MX example.com

; <<>> Dig 9.8.3-P1 <<>> MX example.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 64625
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0

;; QUESTION SECTION:
 ;example.com.      IN  MX

;; ANSWER SECTION:
example.com.    15680   IN  CNAME   ext.squarespace.com.

;; AUTHORITY SECTION:
squarespace.com.    60  IN  SOA ns1.p06.dynect.net.     domains.squarespace.com. 1101726 3600 600 604800 60

空白のレコードと*レコードを削除すると、同じクエリが期待される応答を返しました(Googleサーバー)。私の質問は:なぜこの構成が上記のキャプション付きの応答をもたらすのですか? example.comを解決するレコードの私のロジック。 (FQDN)Webホストは、個人がwwwプレフィックスを含まないイベントに対処することでした。

2
sardean

最初のレコード( "blank"/apex/root)can、しかしおそらくすべきではないcnameになります。 ルートドメインのCNAME制限を克服する方法は? スタックオーバーフローを参照してください:

これは、ドメイン名をホストにするための明白な方法として、経験の浅い管理者によって試みられることがよくあります。ただし、BINDなどのDNSサーバーはCNAMEを認識し、その名前の他のリソースの追加を拒否します。他のレコードはCNAMEとの共存が許可されていないため、NSエントリは無視されます。したがって、podunk.xxドメイン内のすべてのホストも無視されます。

つまり、頂点としてcnameがある場合、ゾーン内で他のレコードが機能するかどうかについては、すべての賭けが無効になります。

参照:

7
Mark Henderson