Provided by: manpages-ja_0.5.0.0.20210215+dfsg-1_all
名称
nsupdate — 対話的に Internet ネームサーバを更新する
書式
nsupdate [-k keydir:keyname] [-d] [-v] [filename]
解説
nsupdate は動的な更新をサポートした Internet ドメインネームサーバを更新する ためのプログラム です。 nsupdate は DNS のリソースレコード (RR) を追加したり削除したりする メッセージを DNS サーバ に伝えるために、DNS リゾルバライブラリを使用します。 nsupdate は入力を filename もし くは、標準入力から読み取ります。
引数
-k TSIG を用いて更新に署名します。 -d デバッグモードを指定します。 -v バーチャルサーキット - サーバとの通信に TCP を使用します。既定値では UDP を 使用 します。
入力書式
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