## page was renamed from DNS/1/RFC/2181/s7 ## page was renamed from DNS/基礎知識/RFC/2181/s7 ## page was renamed from DNS/RFC/2181/s7 ## page was renamed from DNS/RFC2181/s7 #pragma section-numbers off [[DNS/RFC2181]] <> <> == 7. SOA 資源レコード == Start of Zone of Authority (SOA) 資源レコード についての 細かい点をみっつ明かにしておく。 <> === 7.1. 権威ある返事の中に SOA 資源レコードをおくこと === {{{ RFC 1034 [std13], in section 3.7, indicates that the authority section of an authoritative answer may contain the SOA record for the zone from which the answer was obtained. When discussing negative caching, RFC 1034 section 4.3.4 refers to this technique but mentions the additional section of the response. The former is correct, as is implied by the example shown in section 6.2.5 of RFC 1034. SOA records, if added, are to be placed in the authority section. }}} RFC 1034 [std13]の 3.7節には 権威ある返答の authority 節には 返答を得たゾーンの SOA レコードを含めてよいとある。 ネガティブキャッシングを議論するのに RFC 1034、4.3.4 節でこの技法を参照しているが、 返答の付加節(additional section)に言及している。 RFC 1034, 6.2.5 節の例に含まれているように、前者が正しい。 もし SOA レコードをつけ加えるのであれば、authority 節に置くべきである。 <> === 7.2. SOA 資源レコードの TTL === {{{ It may be observed that in section 3.2.1 of RFC 1035, which defines the format of a Resource Record, that the definition of the TTL field contains a throw away line which states that the TTL of an SOA record should always be sent as zero to prevent caching. This is mentioned nowhere else, and has not generally been implemented. Implementations should not assume that SOA records will have a TTL of zero, nor are they required to send SOA records with a TTL of zero. }}} 資源レコードの形式を定義している RFC 1035 3.2.1 節をみると TTL フィールドの定義には捨てさるべき行が含まれている。 そこには SOA レコードがキャッシュされないように TTL は 常に 0 として返事されるべきであるとある。 このことは他では一切触れられていないし、ひろく実装されてもいない。 実装するものは SOA レコードの TTL が 0 であることを仮定すべきでは ないし、0 として送りだす必要もない。 <> === 7.3. SOA.MNAME フィールド === {{{ It is quite clear in the specifications, yet seems to have been widely ignored, that the MNAME field of the SOA record should contain the name of the primary (master) server for the zone identified by the SOA. It should not contain the name of the zone itself. That information would be useless, as to discover it, one needs to start with the domain name of the SOA record - that is the name of the zone. }}} 仕様にははっきり書いてあるのだが、広く無視されているように見えることがある。 SOA レコードの MNAME フィールドには SOA で同定されるゾーンの プライマリ(マスター)サーバ名を書くことである。 そこにはゾーンの名前そのものは書くべきではない。 そんな情報は役に立たない。それを見つけるのに SOA レコードのドメイン名(つまり、ゾーンの名前である)から始める 必要があるのだから。 ---- 2002-02-21 訳 前野年紀