初 心 者 のためのDNS 運 用 入 門 - トラブルとその 解 決 のポイント - 2013 年 7 月 19 日 DNS Summer Days 2013 株 式 会 社 日 本 レジストリサービス(JPRS) 水 野 貴 史 Copyright 2013 株 式 会 社 日 本 レジストリサービス 1
講 師 自 己 紹 介 氏 名 : 水 野 貴 史 (みずの たかふみ) 生 年 月 日 :1988 年 3 月 3 日 (25 歳 ) 所 属 : 株 式 会 社 日 本 レジストリサービス(JPRS) システム 部 Unix 歴 :8 年 目 (FreeBSD OS Xを 中 心 に) 職 歴 : 2013 年 4 月 JPRS 入 社 2013 年 4 月 ~6 月 新 人 研 修 2013 年 7 月 DNS Summer Days 2013 講 師 ( New!) Copyright 2013 株 式 会 社 日 本 レジストリサービス 2
本 セミナーの 概 要 と 対 象 ツールの 紹 介 と 使 い 方 コマンドラインツールとWebサービス トラブルシューティングについて 具 体 例 を 挙 げながら 解 説 対 象 DNSサーバーをこれから 運 用 される 方 DNSサーバーの 運 用 を 始 めて 間 もない 初 学 技 術 者 の 方 そして 初 学 技 術 者 ではない 方 々の 知 識 のおさらい 社 内 セミナーの 資 料 などに 活 用 できる 内 容 としても 活 用 可 能 なものをめざします Copyright 2013 株 式 会 社 日 本 レジストリサービス 3
本 日 の 内 容 DNSの 基 礎 知 識 とトラブルシューティングの 基 本 (おさらい) DNSの 全 体 構 成 区 別 すべき2 種 類 の 問 い 合 わせ トラブルシューティングの 基 本 道 具 の 使 い 方 コマンドラインツールの 使 い 方 Webサービスの 紹 介 よくあるトラブル 事 例 とトラブルシューティング 設 定 がうまくいかない 名 前 が 引 けない 名 前 を 引 くのに 時 間 がかかる Copyright 2013 株 式 会 社 日 本 レジストリサービス 4
まずは おさらいとして 1. DNSの 基 礎 知 識 と トラブルシューティングの 基 本 Copyright 2013 株 式 会 社 日 本 レジストリサービス 5
DNSの 全 体 構 成 権 威 DNSサーバー キャッシュ DNSサーバー ルート TLD (.jp,.net,.com ) クライアント SLD ( 各 組 織 ) クエリ 応 答 Copyright 2013 株 式 会 社 日 本 レジストリサービス 6
区 別 すべき2 種 類 のクエリ 権 威 DNSサーバー キャッシュ DNSサーバー ルート TLD (.jp,.net,.com ) クライアント SLD ( 各 組 織 ) クエリ 応 答 Copyright 2013 株 式 会 社 日 本 レジストリサービス 7
区 別 すべき2 種 類 のクエリ クライアントからキャッシュDNSサーバーへのクエリ キャッシュDNSサーバーから 権 威 DNSサーバーへのクエリ この2 種 類 のクエリを 明 確 に 区 別 することがすべての 基 本 DNSの 動 作 の 理 解 トラブルシューティング ルート 権 威 DNSサーバー キャッシュ DNSサーバー TLD (.jp,.net,.com ) クエリ 応 答 クライアント 登 録 者 Copyright 2013 株 式 会 社 日 本 レジストリサービス 8
区 別 すべき2 種 類 のクエリ 実 行 実 際 に 名 前 引 くよ! 権 威 DNSサーバー ルート キャッシュ DNSサーバー 依 頼 名 前 解 決 おねがい! TLD (.jp,.net,.com ) 登 録 者 2つの 違 い ビットのオン オフ クエリ 応 答 区 別 しないと 調 査 の 際 問 題 の 切 り 分 けができない どの 部 分 が 問 題 か?どの 部 分 を 調 べているのか? Copyright 2013 株 式 会 社 日 本 レジストリサービス 9
再 帰 的 クエリ(recursive query) Header RD=1 Header RD=0 Question www.example.jp Question www.example.jp クライアント 再 帰 的 クエリ キャッシュDNS サーバ 非 再 帰 的 クエリ 権 威 DNS サーバ クライアントからキャッシュDNSサーバーへのクエリ クエリ 中 のRDビットがセットされている クライアントはRDビットをセットしたクエリを 送 信 することにより キャッシュDNSサーバーに 階 層 構 造 をたどらせる これを 名 前 解 決 要 求 という Copyright 2013 株 式 会 社 日 本 レジストリサービス 10
非 再 帰 的 クエリ(non-recursive query) Header RD=1 Header RD=0 Question www.example.jp Question www.example.jp クライアント 再 帰 的 クエリ キャッシュDNS サーバ 非 再 帰 的 クエリ 権 威 DNS サーバ キャッシュDNSサーバーから 権 威 DNSサーバーへのクエリ クエリ 中 のRDビットがセットされていない クライアントからの 名 前 解 決 要 求 によって 発 生 再 帰 的 クエリと 同 じ 内 容 をRDビットをクリアしたうえで 送 信 Copyright 2013 株 式 会 社 日 本 レジストリサービス 11
区 別 すべき2 種 類 のクエリ 非 再 帰 的 クエリ キャッシュ DNSサーバー 権 威 DNSサーバー ルート TLD (.jp,.net,.com ) クライアント SLD ( 各 組 織 ) クエリ 応 答 再 帰 的 クエリ Copyright 2013 株 式 会 社 日 本 レジストリサービス 12
トラブルシューティングの 基 本 Where? - 原 因 はどこか? 手 元 のキャッシュDNSサーバーか? 権 威 DNSサーバーのいずれかか? 各 サーバーまでのネットワークか? How? - どこをどう 調 べればよいか? どんなツールやWebサービスを 使 えばよいか? 調 査 の 際 には 再 帰 的 クエリ と 非 再 帰 的 クエリ を 明 確 に 区 別 すべき 調 査 対 象 がキャッシュDNSサーバーか? 権 威 DNSサーバーか? それぞれのサーバーに 合 った 形 での 調 査 が 必 要 digコマンドのオプションなど 以 降 で 詳 しく 説 明 します Copyright 2013 株 式 会 社 日 本 レジストリサービス 13
トラブル 解 決 に 役 立 つ 2. 道 具 の 使 い 方 Copyright 2013 株 式 会 社 日 本 レジストリサービス 14
調 査 の 基 本 どのコマンドを 使 うべきか? DNSサーバにリクエストを 送 り 調 査 する リクエストに 関 するパラメータを 細 かく 調 整 して 応 答 を 調 査 する 基 本 はコマンドラインツール nslookup コマンド は 使 うべきでない クエリの 細 かいパラメータが 指 定 不 可 応 答 のフラグやセクションの 情 報 を 得 ることができない では 何 を 使 うか? digコマンド drillコマンド Copyright 2013 株 式 会 社 日 本 レジストリサービス 15
digコマンドとdrillコマンド dig コマンド BIND 9 に 付 属 するコマンド コマンド 例 : $ dig +dnssec @192.0.2.53 example.jp. SOA drill コマンド Unboundで 用 いられているライブラリ ldns に 付 属 するコマンド コマンド 例 : $ drill D example.jp. @192.0.2.53 SOA こちら 今 日 はdigコマンドを 用 いた 解 説 をします Copyright 2013 株 式 会 社 日 本 レジストリサービス 16
nslookupとdigの 違 い nslookup $ nslookup jprs.co.jp Server: 192.0.2.12 Address: 192.0.2.12 #53 Non authoritative answer: Name: jprs.co.jp Address: 202.11.16.167 dig $ dig jprs.co.jp ; <<>> DiG 9.9.2 P2 <<>> jprs.co.jp ;; global options: +cmd ;; Got answer: ;; >>HEADER<< opcode: QUERY, status: NOERROR, id: 41096 ;; flags: qr rd ra ad; QUERY: 1, ANSWER: 1, AUTHORITY: 3, ADDITIONAL: 6 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;jprs.co.jp. IN A ;; ANSWER SECTION: jprs.co.jp. 13883 IN A 202.11.16.167 ;; AUTHORITY SECTION: jprs.co.jp. 61085 IN NS ns2.jprs.co.jp. jprs.co.jp. 61085 IN NS ns1.jprs.co.jp. jprs.co.jp. 61085 IN NS ns3.jprs.co.jp. 情 報 量 の 差 ;; ADDITIONAL SECTION: ns1.jprs.co.jp. 26393 IN A 202.11.16.49 ns1.jprs.co.jp. 74734 IN AAAA 2001:df0:8::a153 ns2.jprs.co.jp. 71604 IN A 202.11.16.59 ns2.jprs.co.jp. 53612 IN AAAA 2001:df0:8::a253 ns3.jprs.co.jp. 73366 IN A 61.200.83.204 ;; Query time: 1 msec ;; SERVER: 192.0.2.12#53(203.0.113.12) ;; WHEN: Wed Jul 17 21:08:42 2013 ;; MSG SIZE rcvd: 213 Copyright 2013 株 式 会 社 日 本 レジストリサービス 17
dig コマンドが 使 える 環 境 Unix 系 OS ほとんどの 環 境 で 標 準 添 付 OS Xにも 標 準 添 付 Windows Windows 版 BIND 9のバイナリキットに 含 まれている 開 発 元 のISCが 無 償 で 公 開 Copyright 2013 株 式 会 社 日 本 レジストリサービス 18
dig コマンド 使 い 方 $ dig +dnssec @192.0.2.53 example.jp. SOA オプション DNSサーバー 対 象 ドメイン 名 クエリタイプ 重 要 なオプション RD bit オン = 階 層 構 造 をたどって = +recurse または +rec オフ = 持 ってる 情 報 を 教 えて = +norecurse または +norec RD bit = Recursion Desired bit サーバーに 対 して DNSの 階 層 構 造 をたどって! と 伝 えるために クラ イアント 側 でセット digコマンドやdrillコマンドではデフォルトでオン 権 威 DNSサーバーに 対 してリクエストを 送 信 する 場 合 には オフにしてお くこと Copyright 2013 株 式 会 社 日 本 レジストリサービス 19
RD bit と +norec の 関 係 非 再 帰 的 クエリ キャッシュ DNSサーバー 権 威 DNSサーバー RD bit オフ +norec オプション ルート TLD (.jp,.net,.com ) クライアント SLD ( 各 組 織 ) クエリ 応 答 再 帰 的 クエリ RD bit オン +norec なし Copyright 2013 株 式 会 社 日 本 レジストリサービス 20
dig コマンド 使 い 方 $ dig +dnssec @192.0.2.53 example.jp. SOA オプション DNSサーバー 対 象 ドメイン 名 クエリタイプ DNSSEC 関 連 オプション DO bit: +dnssec(オン) +nodnssec(オフ) DO bit = DNSSEC Ok bit クライアントが 設 定 するbit こちらは DNSSEC 関 連 のレコードを 受 信 する 準 備 がある ことを 通 知 Copyright 2013 株 式 会 社 日 本 レジストリサービス 21
dig コマンド 出 力 の 読 み 方 (1/7) $ dig +norec @ns1.jprs.jp jprs.jp ; <<>> DiG 9.9.2 P2 <<>> +norec @ns1.jprs.jp jprs.jp ; (2 servers found) ;; global options: +cmd ;; Got answer: ;; >>HEADER<< opcode: QUERY, status: NOERROR, id: 34174 ;; flags: qr aa; QUERY: 1, ANSWER: 1, AUTHORITY: 3, ADDITIONAL: 5 ;; QUESTION SECTION: ;jprs.jp. IN A ;; ANSWER SECTION: jprs.jp. 86400 IN A 202.11.16.167 ;; AUTHORITY SECTION: jprs.jp. 86400 IN NS ns2.jprs.jp. jprs.jp. 86400 IN NS ns3.jprs.jp. jprs.jp. 86400 IN NS ns1.jprs.jp. ;; ADDITIONAL SECTION: ns1.jprs.jp. 86400 IN A 202.11.16.49 ns1.jprs.jp. 86400 IN AAAA 2001:df0:8::a153 ns2.jprs.jp. 86400 IN A 202.11.16.59 ns2.jprs.jp. 86400 IN AAAA 2001:df0:8::a253 ns3.jprs.jp. 86400 IN A 61.200.83.204 ;; Query time: 1 msec ;; SERVER: 203.0.113.12#53(203.0.113.12) ;; WHEN: Thu May 02 15:20:20 2013 ;; MSG SIZE rcvd: 199 特 に 注 目 ヘッダー Question Answer Authority Additional 応 答 時 間 サイズなど Copyright 2013 株 式 会 社 日 本 レジストリサービス 22
dig コマンド 出 力 の 読 み 方 (2/7) ;; >>HEADER<< opcode: QUERY, status: NOERROR, id: 34174 ;; flags: qr aa; QUERY: 1, ANSWER: 1, AUTHORITY: 3, ADDITIONAL: 5 ヘッダの 内 容 各 セクションに 関 する 情 報 やステータス フラグなどを 格 納 主 な status (RCODE: 応 答 コード) NOERROR 正 常 な 応 答 ( 該 当 するタイプがない 場 合 も 含 む) FORMERR DNSメッセージのフォーマットが 不 正 SERVFAIL DNSサーバーの 異 常 NXDOMAIN リクエストされた 名 前 が 存 在 しない REFUSED リクエストが 拒 否 された Copyright 2013 株 式 会 社 日 本 レジストリサービス 23
dig コマンド 出 力 の 読 み 方 (3/7) ;; >>HEADER<< opcode: QUERY, status: NOERROR, id: 34174 ;; flags: qr aa; QUERY: 1, ANSWER: 1, AUTHORITY: 3, ADDITIONAL: 5 注 目 すべき 主 な flags (ヘッダ 等 に 含 まれるビット) qr: 応 答 であることを 示 す(Query / Response) リクエストではオフになっている aa: 権 威 ある 応 答 であることを 示 す(Authoritative Answer) 通 常 問 い 合 わせたゾーンの 権 威 DNSサーバーからの 応 答 はオン 他 のDNSサーバーに 委 任 していることを 示 す 応 答 ではオフ ra: 再 帰 検 索 要 求 が 処 理 可 能 なことを 示 す(Recursion Available) 通 常 キャッシュDNSサーバーからの 応 答 ではオン tc: 応 答 の 一 部 が 切 り 捨 てられたことを 示 す(TrunCation) TCPに 切 り 替 えて(TCPフォールバック) 再 度 問 い 合 わせる digコマンドは 動 的 にTCPフォールバックする( +ignore オプション で 抑 制 できる) Copyright 2013 株 式 会 社 日 本 レジストリサービス 24
dig コマンド 出 力 の 読 み 方 (4/7) ;; QUESTION SECTION: ;jprs.jp. IN A Question セクションの 内 容 問 い 合 わせた 内 容 がそのままコピーされている $ dig +norec @ns1.jprs.jp jprs.jp Copyright 2013 株 式 会 社 日 本 レジストリサービス 25
dig コマンド 出 力 の 読 み 方 (5/7) ;; ANSWER SECTION: jprs.jp. 86400 IN A 202.11.16.167 Answerセクション 問 い 合 わせた 内 容 に 対 応 するリソースレコード(RR)が 格 納 される 問 い 合 わせた 名 前 やタイプが 存 在 しない 場 合 や 他 のDNSサーバーにゾーンが 委 任 されている 場 合 は 空 Copyright 2013 株 式 会 社 日 本 レジストリサービス 26
dig コマンド 出 力 の 読 み 方 (6/7) ;; AUTHORITY SECTION: jprs.jp. 86400 IN NS ns2.jprs.jp. jprs.jp. 86400 IN NS ns3.jprs.jp. jprs.jp. 86400 IN NS ns1.jprs.jp. Authorityセクション 権 威 を 持 っているDNSサーバーの 情 報 を 格 納 問 い 合 わせたタイプが 存 在 しないことを 示 す 場 合 SOA RRが 格 納 される Copyright 2013 株 式 会 社 日 本 レジストリサービス 27
dig コマンド 出 力 の 読 み 方 (7/7) ;; ADDITIONAL SECTION: ns1.jprs.jp. 86400 IN A 202.11.16.49 ns1.jprs.jp. 86400 IN AAAA 2001:df0:8::a153 ns2.jprs.jp. 86400 IN A 202.11.16.59 ns2.jprs.jp. 86400 IN AAAA 2001:df0:8::a253 ns3.jprs.jp. 86400 IN A 61.200.83.204 Additionalセクション 付 加 的 な 情 報 が 格 納 される Authorityセクションに 含 まれるDNSサーバーのA AAAA RRなど Copyright 2013 株 式 会 社 日 本 レジストリサービス 28
調 査 に 使 えるWebサービス DNSの 設 定 などを GUIで 可 視 化 チェック 可 能 ここでは2 種 類 のツールを 紹 介 します(この 他 にもあります) DNSViz DNSSECの 可 視 化 ツール dnscheck.jp DNSの 設 定 チェックツール(JPRS 提 供 ) 今 現 在 の 設 定 の 確 認 これからしようと 思 っている 設 定 Copyright 2013 株 式 会 社 日 本 レジストリサービス 29
DNSVizの 使 用 例 jprs.jp の 出 力 結 果 Copyright 2013 株 式 会 社 日 本 レジストリサービス 30
dnscheck.jpの 使 用 例 jprs.jp の 出 力 結 果 Copyright 2013 株 式 会 社 日 本 レジストリサービス 31
困 った!どうしてこうなる? 3. DNSトラブル 事 例 Copyright 2013 株 式 会 社 日 本 レジストリサービス 32
今 日 紹 介 するトラブル 事 例 A) 名 前 が 引 けない 1. DNSサーバーがダウンしてい る 2. CNAMEの 循 環 B) 名 前 を 引 くのに 時 間 が 掛 かる 1. TCPフォールバック 2. 権 威 DNSサーバーの 一 部 が ダウンしている C) 設 定 を 間 違 えた 1. ゾーン 転 送 がうまくいかない 1. マスタサーバーにDNSが 稼 動 していない 2. マスタサーバー 側 のファイヤ ーウォールでブロックされて いる 場 合 3. マスタサーバー 側 でゾーン 転 送 が 許 可 されていない 場 合 2. ピリオドを 忘 れた Copyright 2013 株 式 会 社 日 本 レジストリサービス 33
DNSトラブル 事 例 A. 名 前 が 引 けない Copyright 2013 株 式 会 社 日 本 レジストリサービス 34
1. DNSサーバーがダウンしている example.jpの 権 威 DNSサーバー キャッシュ DNSサーバー クライアント Copyright 2013 株 式 会 社 日 本 レジストリサービス 35
1. DNSサーバーがダウンしている example.jpの 権 威 DNSサーバー キャッシュあるから 大 丈 夫 だ 問 題 ない (TTLが 続 くしばらくは) キャッシュ DNSサーバー クライアント キャッシュDNSサーバのキャッシュで 気 づくのが 遅 れることも Copyright 2013 株 式 会 社 日 本 レジストリサービス 36
2. CNAME の 循 環 example1.jpの 権 威 DNSサーバー example2.jpの 権 威 DNSサーバー example1.jp は example2.jp のことだよ example2.jp は example1.jp キャッシュ のことだよ DNSサーバー ぐるぐるぐるぐる クライアント example2.jp は example1.jp で example1.jp は example2.jp? アプリケーションによってはエラーが 出 たり そのまま 固 まったり Copyright 2013 株 式 会 社 日 本 レジストリサービス 37
2. CNAME の 循 環 -dig の 実 行 結 果 $ dig cname.a.example. @127.0.0.1 ; <<>> DiG 9.8.4 rpz2+rl005.12 P1 <<>> cname.a.example. @127.0.0.1 ;; global options: +cmd ;; Got answer: ;; >>HEADER<< opcode: QUERY, status: NOERROR, id: 20338 ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;cname.a.example. IN A ;; ANSWER SECTION: cname.a.example. 15 IN CNAME cname.b.example. cname.b.example. 15 IN CNAME cname.a.example. ;; Query time: 15 msec ;; SERVER: 127.0.0.1#53(127.0.0.1) ;; WHEN: Thu Jul 18 20:40:32 2013 ;; MSG SIZE rcvd: 69 Copyright 2013 株 式 会 社 日 本 レジストリサービス 38
DNSトラブル 事 例 B. 名 前 を 引 くのに 時 間 が 掛 かる Copyright 2013 株 式 会 社 日 本 レジストリサービス 39
1. TCPフォールバック DNS の 512byte の 壁 応 答 はできるだけ 512byte 以 下 に 収 め UDP 一 発 で 送 信 できる のがよい 近 頃 のトレンド: 応 答 サイズの 増 大 IPv6 DNSSEC spam 対 策 (SPF 情 報 :TXTレコード) どうなる? 最 初 に UDP で 問 い 合 わせて 512byte に 収 まらないことが 分 か ったら TCP で 再 度 問 い 合 わせる udp での 問 い 合 わせで tc ビットがオンになっている 再 問 い 合 わせの 分 遅 くなる 最 近 は EDNS0 という 仕 組 みが 使 われる 本 資 料 では 省 略 Copyright 2013 株 式 会 社 日 本 レジストリサービス 40
2. 権 威 DNSサーバーの 一 部 がダウンしている (1/2) 通 常 の 場 合 jpゾーン example.jp 委 任 example.jpゾーン ns1 ns2 クライアント キャッシュ DNSサーバ Copyright 2013 株 式 会 社 日 本 レジストリサービス 41
2. 権 威 DNSサーバーの 一 部 がダウンしている (2/2) DNSサーバーの 一 部 がダウンしている 場 合 jpゾーン example.jp 委 任 example.jpゾーン ns1 ns2 再 問 い 合 わせ 応 答 が ない クライアント キャッシュ DNSサーバ Copyright 2013 株 式 会 社 日 本 レジストリサービス 42
2. 権 威 DNSサーバーの 一 部 がダウンしている (2/2) DNSサーバーの 一 部 がダウンしている 場 合 キャッシュサーバに 一 度 キャッシュされてしまえば 遅 延 は 発 生 しない 遅 延 が 発 生 するのは キャッシュされていないときの 問 い 合 わせ 今 回 の 例 の 場 合 ns1にいきなり 問 い 合 わせに 行 ったら 遅 延 は 発 生 しない 権 威 DNS サーバーの 選 択 に プライマリやセカンダリという 概 念 はない どの 権 威 DNSサーバーに 問 い 合 わせに 行 くかは ロシアンルーレットのようなもの 気 づくのが 遅 れることも Copyright 2013 株 式 会 社 日 本 レジストリサービス 43
DNSトラブル 事 例 C. 設 定 を 間 違 えた Copyright 2013 株 式 会 社 日 本 レジストリサービス 44
1. ゾーン 転 送 がうまくいかない ゾーン 転 送 とは Master Slave 転 送 ゾーンデータ Copyright 2013 株 式 会 社 日 本 レジストリサービス 45
1. ゾーン 転 送 がうまくいかない 正 常 な 例 ゾーン 転 送 要 求 dig コマンド 実 行 Master DNS サーバ ok! 結 果 Slave $ dig +norec @(マスタ) example.jp. AXFR ; <<>> DiG 9.8.1 P1 <<>> +norec @(マスタ) example.jp. AXFR ; (1 server found) ;; global options: +cmd example.jp. 10800 IN SOA ( 中 略 ) example.jp. 10800 IN NS ns1.example.jp. ( 中 略 ) example.jp. 10800 IN SOA ns1.example.jp. root.example.jp. ( 中 略 ) ;; Query time: 1 msec ;; SERVER: (マスタ)#53((マスタ)) ;; WHEN: Fri Jul 12 17:56:17 2013 ;; XFR size: 31 records (messages 1, bytes 3380) Copyright 2013 株 式 会 社 日 本 レジストリサービス 46
1. ゾーン 転 送 がうまくいかない よくある 原 因 原 因 TCP 53 番 ポートがフィルタされている? ゾーン 転 送 の 設 定 を 間 違 っている? あるいは 他 の 何 か? どう 切 り 分 ける? 調 査 法 dig コマンドを 使 う コマンド 例 $ dig +norec @(マスタ) example.jp axfr Copyright 2013 株 式 会 社 日 本 レジストリサービス 47
1. ゾーン 転 送 がうまくいかない 調 査 と 具 体 例 1. マスタサーバーでDNSが 稼 動 していない 場 合 ゾーン 転 送 要 求 dig コマンド 実 行 Master DNS サーバ 結 果 Slave OS だけ 動 作 実 行 結 果 例 $ dig +norec @(マスタ) example.jp axfr ;; Connection to 203.0.113.8 #53(203.0.113.8) for example.jp failed: connection refused. Copyright 2013 株 式 会 社 日 本 レジストリサービス 48
1. ゾーン 転 送 がうまくいかない 調 査 と 具 体 例 1. マスタサーバーでDNSが 稼 動 していない 場 合 ゾーン 転 送 要 求 dig コマンド 実 行 Master DNS サーバ 結 果 Slave OS だけ 動 作 対 応 DNS サーバを 立 ち 上 げ 直 す 実 は 気 づかないうちに 落 ちていたのかも 必 ず 原 因 究 明 を 並 行 してすすめること サーバーのログのチェックなど Copyright 2013 株 式 会 社 日 本 レジストリサービス 49
1. ゾーン 転 送 がうまくいかない 調 査 と 具 体 例 2.マスタサーバー 側 のファイヤーウォールでブロックされている 場 合 tcp 53 block! ゾーン 転 送 要 求 dig コマンド 実 行 Master DNS サーバ 結 果 Slave 実 行 結 果 例 $ dig +norec @(マスタ) example.jp axfr ; <<>> DiG 9.9.2 P2 <<>> +norec @203.119.1.1 jprs.co.jp axfr ; (1 server found) ;; global options: +cmd ;; connection timed out; no servers could be reached Copyright 2013 株 式 会 社 日 本 レジストリサービス 50
1. ゾーン 転 送 がうまくいかない 調 査 と 具 体 例 2.マスタサーバー 側 のファイヤーウォールでブロックされている 場 合 tcp 53 ok! ゾーン 転 送 要 求 dig コマンド 実 行 Master DNS サーバ 結 果 Slave 実 行 結 果 例 対 応 TCP 53 番 ポートを 許 可 する UDP だけの 許 可 かも? そもそもDNSサーバーでは TCP 53 番 のオープンが 必 要! Copyright 2013 株 式 会 社 日 本 レジストリサービス 51
1. ゾーン 転 送 がうまくいかない 調 査 と 具 体 例 3. マスタサーバー 側 でゾーン 転 送 が 許 可 されていない 場 合 ゾーン 転 送 要 求 dig コマンド 実 行 Master DNS サーバ 君 は 許 可 していないよ! 結 果 Slave 実 行 結 果 例 $ dig +norec @(マスタ) example.jp axfr ; <<>> DiG 9.9.2 P2 <<>> +norec @203.119.1.1 jprs.co.jp axfr ; (1 server found) ;; global options: +cmd ; Transfer failed. Copyright 2013 株 式 会 社 日 本 レジストリサービス 52
1. ゾーン 転 送 がうまくいかない 調 査 と 具 体 例 3. マスタサーバー 側 でゾーン 転 送 が 許 可 されていない 場 合 ゾーン 転 送 要 求 dig コマンド 実 行 Master DNS サーバ 許 可 します! 結 果 Slave 対 応 ゾーン 転 送 の 設 定 を 見 直 す 許 可 ホストの 設 定 を 間 違 えているかも Copyright 2013 株 式 会 社 日 本 レジストリサービス 53
2. ピリオドを 忘 れた [ 出 題 編 ] $ORIGIN a.example. $TTL 86400 @ IN SOA ns1.a.example. root.localhost. ( 1047 604800 86400 2419200 3600 ) IN NS ns1.a.example. IN MX 10 mail.a.example ns1.a.example. IN A 192.0.2.54 ns1.a.example. IN A 2001:db8:53::53 mail.a.example. IN A 192.0.2.57 mail.a.example. IN AAAA 2001:db8:53::25 www.a.example. IN A 192.0.2.58 mail.a.example. IN AAAA 2001:db8:53::80 Copyright 2013 株 式 会 社 日 本 レジストリサービス 54
2. ピリオドを 忘 れた [ 回 答 編 ] $ORIGIN a.example. $TTL 86400 @ IN SOA ns1.a.example. root.localhost. ( 1047 604800 86400 2419200 3600 ) IN NS ns1.a.example. IN MX 10 mail.a.example. ns1.a.example. IN A 192.0.2.54 ns1.a.example. IN A 2001:db8:53::53 mail.a.example. IN A 192.0.2.57 mail.a.example. IN AAAA 2001:db8:53::25 www.a.example. IN A 192.0.2.58 mail.a.example. IN AAAA 2001:db8:53::80 Copyright 2013 株 式 会 社 日 本 レジストリサービス 55
2. ピリオドを 忘 れた [ 回 答 編 ] ~dig の 場 合 ~ $ dig a.example. MX @127.0.0.1 ; <<>> DiG 9.8.4 rpz2+rl005.12 P1 <<>> a.example. MX @127.0.0.1 ;; global options: +cmd ;; Got answer: ;; >>HEADER<< opcode: QUERY, status: NOERROR, id: 8642 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1 ;; QUESTION SECTION: ;a.example. IN MX ;; ANSWER SECTION: a.example. 15 IN MX 10 mail.a.example.a.example. ;; AUTHORITY SECTION: a.example. 8 IN NS ns1.a.example. ;; ADDITIONAL SECTION: ns1.a.example. 8 IN A 192.0.2.54 ;; Query time: 4 msec ;; SERVER: 127.0.0.1#53(127.0.0.1) ;; WHEN: Thu Jul 18 20:47:26 2013 ;; MSG SIZE rcvd: 92 mail.a.example.a.example. Copyright 2013 株 式 会 社 日 本 レジストリサービス 56
まとめ どこを 調 べているのか?を 理 解 しよう 再 帰 問 い 合 わせ? 非 再 帰 問 い 合 わせ? 道 具 の 使 いかたを 知 ろう dig は 友 達 nslookupはやめよう よくあるトラブル 事 例 まずはログを 確 認! TCPの53 番 ポート 確 認! ファイヤーウォール 確 認! CNAME 確 認! ピリオド 確 認! Windowsでも 動 く! @でDNSサーバを 指 定 +norec オプション 便 利 なWebサービス DNS 可 視 化 の DNSViz エラーチェックの dnscheck.jp Copyright 2013 株 式 会 社 日 本 レジストリサービス 57
Q&A Copyright 2013 株 式 会 社 日 本 レジストリサービス 58