2026年6月16日
2026年6月16日
DNSViz を使った DNS レコードの逆引き手順|逆引きゾーン(in-addr.arpa・ip6.arpa)の委任と DNSSEC を確かめる
IP アドレスからホスト名を引く(PTR レコードを調べる)だけなら、dig -x や host で足ります。DNSViz が役立つのは、その逆引きの名前にたどり着くまでの委任のつながりと、DNSSEC の署名の状態を確かめたい場面です。「PTR を設定したのに一部の受信サーバーだけ逆引きに失敗する」「逆引きが時々 SERVFAIL になる」といった症状は、PTR の値ではなく、逆引きゾーンの委任や署名に原因があることがあります。この記事では、逆引きの名前の組み立てから、所属するゾーンの特定、DNSViz での解析と読み方、見つかった問題を誰が直すかまでを順に説明します。
逆引きの名前とゾーンの階層
逆引きでは、IP アドレスを特別な名前に変換して PTR を問い合わせます。IPv4 では4つの数字を逆順に並べて in-addr.arpa を付け、192.0.2.10 は 10.2.0.192.in-addr.arpa になります。IPv6 では16進数の1桁ずつを逆順にドットで区切り、ip6.arpa を付けます。
この名前は、正引きのドメインと同じように委任でつながっています。一般的には次のような階層です。
arpaとin-addr.arpa(IPv6 はip6.arpa)- 地域インターネットレジストリ(APNIC など)が管理する、アドレスの大きな区画のゾーン
- アドレスの割り当てを受けた事業者(プロバイダーやクラウド、VPS 事業者)のゾーン
- 事業者からさらに委任された、利用者のゾーン(委任を受けている場合のみ)
PTR の値が正しくても、この途中のどこかで委任が壊れていたり、DNSSEC の署名がつながっていなかったりすると、問い合わせる側によっては逆引きに失敗します。DNSViz はこの階層全体を一度に検査できます。
手順1:逆引きの名前を確かめる
逆引きの名前は手で組み立てることもできますが、IPv6 は桁数が多く、間違えやすいので dig に作らせると確実性が上がります。
dig -x 192.0.2.10 +noall +question
dig -x 2001:db8::10 +noall +question
QUESTION の行に、10.2.0.192.in-addr.arpa. のような逆引きの名前が表示されます。この記事の IP アドレスは説明用の範囲なので、実際には調べたい自分のアドレスに置き換えてください。
あわせて、今の PTR の値と応答コードを見ておきます。
dig -x 192.0.2.10
status が NOERROR で値が返るなら PTR は設定済み、NXDOMAIN なら PTR が無い、SERVFAIL なら委任か DNSSEC に問題がある可能性があります。SERVFAIL のときは、同じ問い合わせに +cd(検証を行わないよう求めるオプション)を付けて比べます。+cd を付けたときだけ答えが返るなら、DNSSEC が原因である見込みが高くなります。
手順2:その名前がどのゾーンに属するかを調べる
逆引きの名前に SOA を問い合わせると、所属するゾーンの頂点がわかります。
dig 10.2.0.192.in-addr.arpa SOA +noall +answer +authority
名前がゾーンの頂点でなければ ANSWER は空になり、AUTHORITY に 2.0.192.in-addr.arpa. のようなゾーンの SOA が表示されます。このゾーン名が、DNSViz に入力する候補になります。続けて、そのゾーンの権威サーバーを確認します。
dig 2.0.192.in-addr.arpa NS +short
dig +trace -x 192.0.2.10
+trace を使うと、上位から順にどのサーバーへ委任されているかを一覧できます。
小さなアドレスのブロック(/24 より小さい範囲)を割り当てられている場合、PTR の名前が CNAME になっていて、10.0-25.2.0.192.in-addr.arpa のような別の名前のゾーンを指していることがあります。これは RFC 2317 で示されている委任の方法で、区切りの書き方(0-25 や 0/25 など)は事業者によって違います。CNAME の先のゾーンも確認の対象になります。
手順3:DNSViz で解析する
Web 版の DNSViz(dnsviz.net)では、手順2で調べたゾーン名、または逆引きの名前そのものを入力して解析を実行します。逆引きの名前を入力すると、その名前と上位のゾーンがまとめて解析されます。
過去に誰かが解析した結果が表示される場合があるので、解析日時を確認し、古ければ最新の状態で解析し直してください。画面のボタン名、解析で問い合わせる種別の選び方、図の配色や凡例は更新で変わることがあります。ここでの説明は執筆時点(2026年10月現在)の一般的な構成にもとづきます。
自分の環境から解析したい場合は、コマンドライン版も使えます。
# 逆引きゾーンを解析して結果を JSON に保存する
dnsviz probe 2.0.192.in-addr.arpa > rev.json
# 解析結果をテキストで確認する
dnsviz print -r rev.json
# 図を PNG で出力する
dnsviz graph -r rev.json -T png -O
コマンドライン版は Python のパッケージとして配布されており、図の出力には Graphviz が必要です。問い合わせる種別の指定方法などのオプションは、公式のリポジトリの説明で確認してください。
手順4:逆引きゾーンの結果を読む
図には、上から arpa、in-addr.arpa、アドレスの区画のゾーン、対象のゾーンが順に並びます。逆引きで特に見るのは次の点です。
- 署名の状態の切り替わり:上位の
arpaやin-addr.arpaは DNSSEC で署名されていますが、事業者の逆引きゾーンは署名されていないことも多くあります。親ゾーンに DS が無く、そこから下が「署名していない状態(insecure)」になっているのは、エラーではありません - 検証に失敗する状態(bogus):親ゾーンに DS があるのに、子ゾーンの鍵が DS と合わない、署名の期限が切れている、といった状態です。DNSSEC を検証するキャッシュサーバーでは PTR の問い合わせが SERVFAIL になり、逆引きを確認する受信サーバーからは「逆引きできない」ように見えます
- 応答しない権威サーバー:親ゾーンが案内しているネームサーバーの一部が応答しない、またはそのゾーンの権威として答えない状態(lame delegation)です。問い合わせが当たったサーバーによって成功したり失敗したりします
- 親と子の NS の食い違い:親ゾーンに登録された NS と、子ゾーン自身が返す NS が違う状態です。古いネームサーバーが残っていると、移転後も古い PTR が返ることがあります
エラーと警告の一覧も確認します。警告は運用上の注意で、すぐに逆引きが止まるとは限りません。まずはエラーとして示された項目から対処します。
手順5:見つかった問題を誰が直すか
逆引きゾーンは、IP アドレスを管理している側が持っています。直す担当はゾーンの階層で決まります。
- VPS やクラウドのアドレスで、PTR を管理画面から設定している場合:逆引きゾーンは事業者のものです。委任や署名の問題が見つかったら、DNSViz の結果(画像や日時)を添えて事業者に問い合わせます
- 自分の権威サーバーに逆引きゾーンを委任されている場合:応答しないサーバーや NS の食い違いは、自分の権威サーバーの設定で直します。親ゾーン側の NS や DS の登録は、委任元の事業者や、アドレスの割り当て元の手続きで変更します
- 逆引きゾーンで DNSSEC を使っている場合:鍵の更新や事業者の変更の前後で DNSViz を実行し、DS と鍵のつながりを確かめます。DS の登録や削除には時間がかかるため、手順は割り当て元や事業者の案内に従います
修正したら、DNSViz で解析し直してエラーが消えたことを確かめ、dig -x で検証を行う公開 DNS からも答えが返るかを確認します。メールサーバーの場合は、PTR が指すホスト名の A(または AAAA)が同じ IP を返すか(正引きと逆引きの一致)もあわせて確認してください。こちらは DNSViz ではなく dig で確かめます。
まとめ
- PTR の値を引くのは
dig -x、逆引きの名前に至る委任と DNSSEC を確かめるのが DNSViz です。 - 逆引きの名前は
dig -x アドレス +noall +questionで作り、SOA の問い合わせで所属するゾーンを特定します。 - 小さなブロックでは RFC 2317 の CNAME による委任があり、CNAME の先のゾーンも確認します。
- DS が無く途中から insecure になるのは正常、DS があるのに鍵が合わない bogus は逆引きの失敗につながります。
- 逆引きゾーンはアドレスの管理側のものなので、問題の場所に応じて事業者に依頼するか、自分の権威サーバーを直します。