
私の DNS サーバーには、マスター ゾーン ドメインとして domain1.ir が設定されています。このドメインの DNS レコードは次のとおりです。
$ttl 1H
domain1.ir. IN SOA dns.domain1.ir. [email protected]. (
2014041610 ; serial
1D ; refresh
1H ; retry
1W ; expire
1H ) ; minimum
mail.domain1.ir. IN CNAME mail.mailserver.ir.
mail.domain1.ir IN CNAME mail.mailserver.ir
www.domain1.ir. IN CNAME domain1.ir.
www.domain1.com. IN CNAME domain1.ir.
domain1.com. IN CNAME domain1.ir.
domain1.ir. IN NS ns1.dns1.ir. ; 18
domain1.ir. IN NS dns.dns2.ir. ; 19
domain1.ir. IN NS dns.dns2.ir. ; 20
domain1.ir. IN NS ns2.dns1.ir. ; 21
domain1.ir. IN A xxx.xxx.xxx.xxx
dns.domain1.ir. IN A xxx.xxx.xxx.xxx
dns.domain1.com. IN A xxx.xxx.xxx.xxx
domain1.ir. IN MX 5 mail.domain1.ir.
xxx.xxx.xxx.xxx.domain1.ir. IN PTR mail.domain1.ir
domain1.ir. txt "v=spf1 ip4:xxx.xxx.xxx.xxx ip4:xxx.xxx.xxx.xxx -all"
次のように nslookup コマンドを実行した場合:
nslookup domain1.com localhost
次のエラーが発生しました:
** server can't find domain1.com: REFUSED
私の設定に何が問題なのでしょうか?
答え1
ネーム サーバーも権限レコードも設定されていませんdomain1.com
。どうすれば機能するのでしょうか? このサーバーがそのゾーンにサービスを提供するにはどうすればよいでしょうか?
これが機能するのは、ネームサーバーがリクエストに応答して存在するすべてのゾーンを検索し、一致するレコードが含まれているかどうかを確認する場合に限られます。これは明らかにネームサーバーの動作方法ではありません。まず、ゾーン内のレコードを指定する権限が誰にあるかを知る方法がなく、無関係なさまざまなソースからの矛盾する情報を調和させる方法がないことを意味します。
domain1.ir
に のレコードを含めることができるのにdomain1.com
、 にはなぜ含めることができないのでしょうかdomain2.ir
? SOA レコードや NS レコードがない場合、ネームサーバーは誰がそのドメインの DNS を制御する権限を持っているかをどのように知るのでしょうか?