NSUPDATE(8) | System Manager's Manual | NSUPDATE(8) |
名称¶
nsupdate
—
対話的に Internet
ネームサーバを更新する
書式¶
nsupdate
[-
k keydir:keyname]
[-
d]
[-
v]
[filename]
解説¶
nsupdate
は動的な更新をサポートした
Internet
ドメインネームサーバを更新する
ためのプログラムです。
nsupdate
は DNS
のリソースレコード
(RR)
を追加したり削除したりする
メッセージを DNS
サーバ
に伝えるために、DNS
リゾルバライブラリを使用します。
nsupdate
は入力を
filename
もしくは、標準入力から読み取ります。
引数¶
入力書式¶
nsupdate
は 1
行ごとに 1
個の入力レコードを読みます。
それぞれの行は更新要求の対象になるリソースレコードです。
1
個の更新要求に含まれるすべてのドメイン名は、
同一の DNS
ゾーンに含まれるものであることが必要です。
更新は、SOA MNAME
フィールドで定義されるマスタサーバへ送られます。
空行は、蓄積されたレコードを
1
個の更新要求としてまとめ、ゾーンの権威を
もつネームサーバへの送信を指示します。
追加レコードを続けることが可能です。
これらは、追加的な、完全に独立した更新要求になります。
最後の要求が送信されるためには、空行が入力の最後にあることが必要です。
レコードはふたつの一般的な形式のうちのどちらかの形式です。 必要条件 (prerequisite) レコードは、要求が処理される前に満たされていることが必要な条件を指示します。 更新情報 (update) レコードは、DNS データベースになされる変更を指示します。 更新要求は、0 個以上の必要条件と、1 個以上の更新情報から成ります。 それぞれの更新要求は、すべての必要条件が満たされることが確認 されたあとで、すべての更新が実行されるという順番で、原子的に処理されます。
nsupdate
は次のような入力レコードの書式を理解します。
prereq nxdomain
domain-name- domain-name で指定したドメイン内に、どのような RR もないことを要求します。
prereq yxdomain
domain-name- domain-name で指定したドメイン内に、最低 1 個の RR が存在することを要求します。
prereq nxrrset
domain-name [class] type- domain-name で指定したドメイン内に type で指定した型の RR が存在しないことを要求します。
prereq yxrrset
domain-name [class] type [data...]- domain-name で指定したドメイン内に、 type で指定した型の RR が存在することを要求します。 data が指定された場合は、正確にチェックが行なわれます。
update delete
domain-name [class] [type [data...]]- domain-name で指定したドメイン名の RR を削除します。 もし type (と、可能ならば data) が指定されれば、該当されるレコードだけが削除されます。
update add
domain-name ttl [class] type data...- ttl, type, data で指定した RR を追加します。
使用例¶
下記の例は、
nsupdate
の対話的な使用例を示しています。
あるドメイン名のすべての
A
レコードを削除して、新しいレコードを
追加することによって、IP
アドレスを変更します。
ここでは必要条件が指定されていないので、削除するレコードがなくても新しい
レコードが追加されます。
後に続く空行は要求を処理させるために必要であることに注意してください。
$ nsupdate > update delete test.example.com A > update add test.example.com 3600 A 10.1.1.1 >
この例では、対象のドメインに A レコードまたは CNAME レコードがない場合に、 CNAME エイリアスがデータベースに追加されます。
$ nsupdate > prereq nxrrset www.example.com A > prereq nxrrset www.example.com CNAME > update add www.example.com 3600 CNAME test.example.com >
この例では、nsupdate はディレクトリ "/var/named/keys" に存在するキー "mykey" で署名されます。
$ nsupdate -k /var/named/keys:mykey > update add ftp.example.com 60 A 192.168.5.1 >
診断¶
- "send error"
- 一般に、権威のあるネームサーバに到達できなかったことを示します。
- "failed update packet"
- 一般に、ネームサーバが動的更新をサポートしていないためか、認証の失敗のために、 更新を拒否したことを示します。
- "res_mkupdate: packet size = size"
- (また他のメッセージが表示されないとき)
更新は正常に受信されてネームサーバに認証されました。
しかし必要条件が更新を妨げたかもしれません。更新が行なわれているか
を確かめる方法は、デバッグモード
(
-d
) を使用して、ネームサーバからの応答フィールドを確認するしかありません。
関連ファイル¶
- /etc/resolv.conf
ドメイン名とネームサーバのアドレスの初期設定。
関連項目¶
named(8), resolver(3), resolver(5); RFC-1034, “Domain Names - Concepts and Facilities”; RFC-1035, “Domain Names - Implementation and Specification”; RFC-2136, Dynamic Updates in the Domain Name System.
作者¶
Brent Baccala
March 5, 1999 | BSD 4 |