1. DNS/1/MX
MXレコードが存在しているときにCNAMEを指してはならないことははっきりしている。
MX検索したときに、qnameがCNAMEであるときにはどういう扱いを受けるのか。 (リゾルバー側での処理が必要かどうか、気になった。)
それはSMTPの問題である。
- MXは存在しなかった。
- もしAの検索をするのであれば、CNAMEに対するAを検索することになる。
- MXが存在しないということで、配送エラーにする。
-- ToshinoriMaeno 2017-03-20 08:39:11
https://tools.ietf.org/html/rfc974 (Obsoleted by: 2821)
If the response contains an answer which is a CNAME RR, it indicates that REMOTE is actually an alias for some other domain name. The query should be repeated with the canonical domain name.
とあるが、この部分はリゾルバーの責任というよりは、MTAの責任であろう。
/2821に相当部分があるか、調べてみなければ。
MXの検索を行って、CNAMEが返ってきたら:
If a CNAME record is found instead, the resulting name is processed as if it were the initial name.
-- ToshinoriMaeno 2017-03-20 08:39:11
/5321 も調べないといけないのか。(この部分については変更はなさそう。)
2. google mail 利用例
answer: 092.jp 120 MX 10 aspmx.l.google.com answer: 092.jp 120 MX 20 alt1.aspmx.l.google.com answer: 092.jp 120 MX 20 alt2.aspmx.l.google.com answer: 092.jp 120 MX 30 aspmx2.googlemail.com answer: 092.jp 120 MX 30 aspmx3.googlemail.com
%dnsq a aspmx.l.google.com a.gtld-servers.net ~/dnsq/0328 1 aspmx.l.google.com: 172 bytes, 1+0+4+4 records, response, noerror query: 1 aspmx.l.google.com authority: google.com 172800 NS ns2.google.com authority: google.com 172800 NS ns1.google.com authority: google.com 172800 NS ns3.google.com authority: google.com 172800 NS ns4.google.com additional: ns2.google.com 172800 A 216.239.34.10 additional: ns1.google.com 172800 A 216.239.32.10 additional: ns3.google.com 172800 A 216.239.36.10 additional: ns4.google.com 172800 A 216.239.38.10
%dnsq a aspmx.l.google.com ns1.google.com
1 aspmx.l.google.com: 52 bytes, 1+1+0+0 records, response, authoritative, noerror query: 1 aspmx.l.google.com answer: aspmx.l.google.com 293 A 74.125.204.26
3. l.google.com
親子ゾーン同居だった。
%dnsq ns l.google.com ns1.google.com
2 l.google.com: 166 bytes, 1+4+0+4 records, response, authoritative, noerror query: 2 l.google.com answer: l.google.com 86400 NS ns4.google.com answer: l.google.com 86400 NS ns3.google.com answer: l.google.com 86400 NS ns2.google.com answer: l.google.com 86400 NS ns1.google.com additional: ns4.google.com 345600 A 216.239.38.10 additional: ns3.google.com 345600 A 216.239.36.10 additional: ns2.google.com 345600 A 216.239.34.10 additional: ns1.google.com 345600 A 216.239.32.10