全4292文字
PR

 SERIALはゾーンファイルの新しさを示す値である。管理者は、プライマリーサーバーのゾーンファイルを変更するたびに値を増やす(図8)。REFRESHは、セカンダリーサーバーがプライマリーサーバーにゾーンファイルの変更を確認する間隔である。なおREFRESHなど時間を表す項目はすべて秒で指定する。

図8●SOAレコードを要求して変更の有無をチェック
図8●SOAレコードを要求して変更の有無をチェック
管理者はプライマリーサーバーのゾーンファイルに変更を加えたらSERIAL(シリアル番号)を任意の数だけ増やす。セカンダリーサーバーはREFRESHで指定された間隔でSOAレコードを要求。SERIALが増えていたらゾーン転送を要求する。
[画像のクリックで拡大表示]

 セカンダリーサーバーはREFRESHで指定された間隔でプライマリーサーバーにSOAレコードを要求。それに対してプライマリーサーバーは自分のSOAレコードを送信する。

 受信したセカンダリーサーバーはSOAレコード中のSERIALをチェック。現在保持しているゾーンファイルのSERIALより大きい場合には変更が加わったとして、セカンダリーサーバーはプライマリーサーバーに対してゾーン転送を要求。プライマリーサーバーはゾーンファイルを送信し、セカンダリーサーバーはゾーンファイルを更新する。

 SOAレコードにはRETRYという項目もある。これには、プライマリーサーバーから応答がなかった場合にセカンダリーサーバーが要求を再送するまでの待ち時間を指定する。

 EXPIREには、プライマリーサーバーと接続できなかった場合のセカンダリーサーバーの有効期間を指定する。EXPIREに指定された期間、セカンダリーサーバーがプライマリーサーバーと接続できなかった場合にはセカンダリーサーバーの情報は古くて使えなくなったとして、外部からの問い合わせに応答しないようにする。つまりDNSサーバーとしての動作を停止する。

 プライマリーサーバーとセカンダリーサーバーは、上位のDNSサーバーのゾーンファイルにNSレコードとして登録する。