再帰的な解決において、レコードタイプが異なると優先順位も異なります。ホストレコードと解決回線が同じ場合、一部のレコードタイプは共存できません。これは、このような構成が脅威となり、サービスの可用性が失われる可能性があるためです。
DNS レコード競合の原因
example.com に次の 2 つの DNS レコードを設定したとします:
レコードタイプ | ホストレコード | 回線 | 値 |
MX | www | デフォルト | mx1.hichina.com |
CNAME | www | デフォルト | demo.xxx.com |
RFC 標準によれば、CNAME レコードは最も高い優先度を持ちます。DNS クエリ中に、CNAME レコードが最初に返されます。この構成は MX レコードの解決を妨げ、メールサービスに影響を与えます。このシナリオでは、Alibaba Cloud DNS は DNS レコードの競合を検出し、この構成の脅威を回避するためにエラーを報告します。詳細については、「RFC1034」および「RFC2181」をご参照ください。
DNS レコード競合の解決策
システムが DNS レコードの競合を報告した場合、競合する DNS レコードを削除するか、ホストレコードを変更して競合を解決できます。
ホストレコードが @ の場合の特別な処理
さまざまなユーザーシナリオに対応するため、Alibaba Cloud DNS は、ホストレコードが @ の場合の一部のレコードタイプの競合ルールを最適化しました。
ホストレコードが @ の場合、CNAME レコードと MX レコードは競合しなくなります
レコードタイプ | ホストレコード | 回線 | 値 |
MX | @ | デフォルト | mx1.hichina.com |
CNAME | @ | デフォルト | example.com |
このシナリオ構成には、メールボックスがメールを正常に受信しない、または断続的に受信するというリスクがあります。
メールサーバーの localDNS が @ レコードの CNAME タイプ解決を優先する場合、@ レコードの MX タイプ解決が影響を受け、解決の失敗または予期しない解決結果が発生します。
ホストレコードが @ の場合、CNAME レコードと TXT レコードは競合しなくなります
レコードタイプ | ホストレコード | 回線 | 値 |
TXT | @ | デフォルト | db642353e95243c12d3 |
cname | @ | デフォルト | example.com |
この構成は、受信メールの受信失敗、受信者によるメールの拒否、TXT 検証の失敗などの問題を引き起こす可能性があります。これらの問題が発生した場合は、CNAME レコードを削除できます。
DNS レコード競合の完全なルール
ホストレコードが @ の場合
ホストレコードと解決回線が同じ場合、これらの異なるタイプの解決レコードは共存できません。
❌: 競合。同じホストレコードと解決回線に対して、2 種類の DNS レコードを共存させることはできません。たとえば、
example.comに A レコードを追加した場合、example.comに CNAME レコードを追加することはできません。✅: 競合なし。同じホストレコードと解決回線に対して、2 種類の DNS レコードを共存させることができます。たとえば、
example.comに A レコードを追加した場合、example.comに MX レコードを追加することもできます。↔️: 繰り返し可能。同じホストレコードと解決回線に対して、同じタイプの複数の DNS レコードを追加できます。たとえば、
example.comに A レコードを追加した場合、example.comに別の A レコードを追加できます。NS
CNAME
A
URL
MX
TXT
AAAA
SRV
CAA
SVCB (エイリアスモード)
SVCB (サービスマード)
HTTPS (エイリアスモード)
HTTPS (サービスマード)
NS
↔️
✅
✅
✅
✅
✅
✅
✅
✅
✅
✅
✅
✅
CNAME
✅
↔️
❌
❌
✅
✅
❌
❌
❌
❌
❌
❌
❌
A
✅
❌
↔️
❌
✅
✅
✅
✅
✅
✅
✅
✅
✅
URL
✅
❌
❌
❌
✅
✅
❌
✅
✅
✅
✅
✅
✅
MX
✅
✅
✅
✅
↔️
✅
✅
✅
✅
✅
✅
✅
✅
TXT
✅
✅
✅
✅
✅
↔️
✅
✅
✅
✅
✅
✅
✅
AAAA
✅
❌
✅
❌
✅
✅
↔️
✅
✅
✅
✅
✅
✅
SRV
✅
❌
✅
✅
✅
✅
✅
↔️
✅
✅
✅
✅
✅
CAA
✅
❌
✅
✅
✅
✅
✅
✅
↔️
✅
✅
✅
✅
SVCB (エイリアスモード)
✅
❌
✅
✅
✅
✅
✅
✅
✅
↔️
❌
✅
✅
SVCB (サービスマード)
✅
❌
✅
✅
✅
✅
✅
✅
✅
❌
↔️
✅
✅
HTTPS (エイリアスモード)
✅
❌
✅
✅
✅
✅
✅
✅
✅
✅
✅
↔️
❌
HTTPS (サービスマード)
✅
❌
✅
✅
✅
✅
✅
✅
✅
✅
✅
❌
↔️
ホストレコードが @ ではない場合
ホストレコードと解決回線が同じ場合、これらの異なるタイプの解決レコードは共存できません。
❌: 競合。同じホストレコードと解決回線に対して、2 種類の DNS レコードを共存させることはできません。たとえば、
www.example.comに A レコードを追加した場合、www.example.comに CNAME レコードを追加することはできません。✅: 競合なし。同じホストレコードと解決回線に対して、2 種類の DNS レコードを共存させることができます。たとえば、
www.example.comに A レコードを追加した場合、www.example.comに MX レコードを追加することもできます。↔️: 繰り返し可能。同じホストレコードと解決回線に対して、同じタイプの複数の DNS レコードを追加できます。たとえば、
www.example.comに A レコードを追加した場合、www.example.comに別の A レコードを追加できます。NS
CNAME
A
URL
MX
TXT
AAAA
SRV
CAA
SVCB (エイリアスモード)
SVCB (サービスモード)
HTTPS (エイリアスモード)
HTTPS (サービスモード)
NS
↔️
❌
❌
❌
❌
❌
❌
❌
❌
❌
❌
❌
❌
CNAME
❌
↔️
❌
❌
❌
❌
❌
❌
❌
❌
❌
❌
❌
A
❌
❌
↔️
❌
✅
✅
✅
✅
✅
✅
✅
✅
✅
URL
❌
❌
❌
❌
✅
✅
❌
✅
✅
✅
✅
✅
✅
MX
❌
❌
✅
✅
↔️
✅
✅
✅
✅
✅
✅
✅
✅
TXT
❌
❌
✅
✅
✅
↔️
✅
✅
✅
✅
✅
✅
✅
AAAA
❌
❌
✅
❌
✅
✅
↔️
✅
✅
✅
✅
✅
✅
SRV
❌
❌
✅
✅
✅
✅
✅
↔️
✅
✅
✅
✅
✅
CAA
❌
❌
✅
✅
✅
✅
✅
✅
↔️
✅
✅
✅
✅
SVCB(エイリアスモード)
❌
❌
✅
✅
✅
✅
✅
✅
✅
↔️
❌
✅
✅
SVCB (サービスモード)
❌
❌
✅
✅
✅
✅
✅
✅
✅
❌
↔️
✅
✅
HTTPS (エイリアスモード)
❌
❌
✅
✅
✅
✅
✅
✅
✅
✅
✅
↔️
❌
HTTPS (サービスモード)
❌
❌
✅
✅
✅
✅
✅
✅
✅
✅
✅
❌
↔️