主要メッセージの手引き

named [pid]: hostname.domainname has CNAME and other data (illegal)

原因

このエラーメッセージが DNS サーバー上で表示されます。

対処方法

このエラーは、エイリアス (CNAME) が別のタイプの DNS レコードと関連していることを示します。

DNS システムでは、CNAME レコードを使用してシステムに対しエイリアスを設定することができます。この例を次に示します。


alias1		IN CNAME	host1.domain1.

alias1 というエイリアスは、他のタイプのレコードには表示されません。ホストの実際の名前だけが使用できます。そのため、このホストをメールエクスチェンジャとして使用すると、次のレコードは不正なのでエラーが発生します。


alias1		IN MX  10  host2.domain1.

代わりに、次のレコードを使用します。


host1		IN MX  10  host2.domain1.
この対処法は、HINFOA などすべてのタイプのレコードに適用できます。

このエラーはレコードの最初のエントリを明示的に設定しなくても発生することがあります。DNS システムのデフォルトの最初のエントリは、最後に指定した最初のエントリになります。そのため、指定されたデータベースファイルが以下のようになる場合があります。


host1	IN A	 123.124.125.126
        IN HINFO Sun Solaris
alias1  IN CNAME host1.domain1.
        IN MX 10 host2.domain1.
上記の部分では、MX レコードの左辺に alias1 が暗黙的に存在しています。データベースの使用中にエイリアスを追加すると、エラーが突然表示されるようになります。MX レコードは、CNAME が前に追加されると不当になるからです。この例の場合は、MX レコードと CNAME レコードの順番を逆にするか、あるいは MX レコードの左辺に host1 を明示的に設定することによって解決できます。