Comments
Description
Transcript
DNS 特論
DNS 特論 DNSはアプリケーションプロトコル 今回はアプリケーションプロトコル の中で特にDNSを扱います 1 インターネットを利用するには IPアドレスとドメイン名が必要 • IPアドレス(例) 133.90.18.10 192.5.216.4 192.168.0.1 • ドメイン名(例) waseda.ac.jp waseda.jp 早稲田大学.jp サービス名 domain 内容 Domain Name Server 表 6—3 UDPの代表的なウェルノウンポート番号, 教科書 p.228 • 一つのプロトコルがTCPとUDPの両方のポート番号を 持つことがある。その場合には同じ番号。 • 最初の頃のポート番号は奇数の割合が多い。 2 利用者はドメイン名を使う コンピュータはIPで通信する • ドメイン名で指定されたWEBも、 メールアドレスで指定された宛先も、 IPアドレスに変換する必要がある。 IPデータグラム ヘッダ データ 3 4 1.DNSの必要性 DNSへの問い合わせ(query) • 利用者はドメイン名を使う [email protected] [email protected] www.goto.cs.waseda.ac.jp http://133.90.18.50 ②, ③, ④は 後に登場 ⑤ 次の図を参考にして大幅に簡略化した 図5—5 DNSによる問い合わせ, 教科書 p.187 ステップ②, ③, ④を省略している 内容 Domain Name Server 表 6—2 TCPの代表的なウェルノウンポート番号, 教科書 p.227 ポート番号 53 マスタリングTCP/IP入門編 第5版では、DNSを「第5章 IPに関 連した技術」で扱っています。一方で第4版では、DNSを第8章 アプリケーションプロトコル」の最初で扱っていました。 本講義においてDNSをアプリケーションプロトコルとして扱いま す。その理由は、前回の授業で強調した事柄が関係しています。 利用者のPC サービス名 domain どう見ても2つの表の内容は同一 情報ネットワーク講義資料 教科書 p.182~188 リゾルバ resolver ① ポート番号 53 www. ietf.org p.183 このページの例題は 実際のデータの一部 を変更しています • 最初はホスト名とIPアドレスの変換表 /etc/hosts この変換表では収容しきれない 5 6 1 IPアドレスの管理 JPNIC pp.156 http://www.nic.ad.jp/ja/ip/index.html • 日本国内のIPアドレスはJPNICが管理 ICANN (IANA) APNIC JPNIC プロバイダ(IPアドレス管理指定事業者) 利用者 参考) 発足時のAPNICは日本で活動をしていました。 7 8 http://www.apnic.net/about-APNIC/organization/history-of-apnic ドメイン名の管理 JPRS http://jpshop.jp/info/service/syurui/index.html p.340 • 日本国内のドメイン名はJPRSが管理 (株)日本レジストリサービス (2002年4月1日より) ICANN JPRS プロバイダ(JPRS指定事業者) 利用者 http://jprs.co.jp/press/020401.html 9 http://www.nic.ad.jp /ja/topics/2002/20020401-01.html 2.DNSの登場 p.183—184 • 1983年 ARPAnetがNCPからTCP/IPに切替 1984年 ドメイン名の導入 • 背景: 当時のホスト数 08/1981 213 05/1982 235 08/1983 562 10/1984 1,024 10/1985 1,961 02/1986 2,308 11/1986 5,089 11 10 1984年当時のDNSの評判 • スタンフォード大学における変化(利用例) [email protected] → [email protected] • 不評, ブーイング ドメイン名は長過ぎる • Martin Frost氏の説得 [問題] システム管理者のFrost氏は、どのように して学内の利用者を説得したのでしょうか? 12 2 3.ドメイン名の構造 DNSの階層構造 pp.184~185 p.185 教科書の 図も参照 ルート • 例: www.cs.waseda.ac.jp jp トップレベルドメイン (国別) ccTLD 例: cs.stanford.edu edu トップレベルドメイン gTLD “ ” ac ネームサーバの配置 arpa ietf in-addr info int 133 … 18 piano 13 ip6 90 goto 10 piano.goto.info.waseda.ac.jp 14 問い合わせ(query)の詳細 p.186—187 • そのネームサーバが設置された階層の ドメインに関する情報を管理 • ルートネームサーバ(世界に13台(個)) TLDを管理している • jpネームサーバ acネームサーバ wasedaネームサーバ(早稲田大学) csネームサーバ, infoネームサーバ(学科) goto ネームサーバ(後藤研) 15 4.DNSの query org waseda www • 注: ccTLDの多くは ISO3166 のcountry codeを用いているが例外がある (uk, gb) • サブドメイン トップレベル以外のドメイン名 jp … pp.187~188 ② ③ ④ リゾルバ resolver ① ⑤ www. ietf.org 利用者のPC 次の図を基本にして一部削除した 図5—5 DNSによる問い合わせ, 教科書 p.187 ルートDNSの「ルート」は root です(routeではない) nslookupの使用例 このページの例題は 実際のデータの一部 を変更しています > mail.goto.cs.waseda.ac.jp Server: ns.cfi.waseda.ac.jp Address: 2001:2f8:33:1::3#53 • リゾルバ • アプリケーションに先立って名前解決する • 意識的に名前解決するツール nslookup dig 16 早稲田大学 のサーバ 数字53 mail.goto.info.waseda.ac.jp canonical name = voice.goto.cs.waseda.ac.jp. Name: voice.goto.cs.waseda.ac.jp Address: 133.90.18.110 CNAME 17 別名がある 18 3 dig の使用例 % dig –x 133.90.18.50 ;; QUESTION SECTION: ;50.18.90.133.in-addr.arpa. IN PTR このページの例題は 実際のデータの一部 を変更しています ここでも CNAMEが 使われている ;; ANSWER SECTION: 50.18.90.133.in-addr.arpa. 3600 IN PTR pentagon.goto.cs.waseda.ac.jp. ;; AUTHORITY SECTION: 18.90.133.in-addr.arpa. 3600 18.90.133.in-addr.arpa. 3600 18.90.133.in-addr.arpa. 3600 18.90.133.in-addr.arpa. 3600 18.90.133.in-addr.arpa. 3600 18.90.133.in-addr.arpa. 3600 IN IN IN IN IN IN NS NS NS NS NS NS voice5.goto.cs.waseda.ac.jp. ns.cfi.waseda.ac.jp. ns.info.waseda.ac.jp. ns1.goto.cs.waseda.ac.jp. ns2.cfi.waseda.ac.jp. voice3.goto.cs.waseda.ac.jp. 19 CNAMEレコード: 別名を定義 MXレコード: メールサーバを指定 PTRレコード: IPアドレスからドメイン名を逆引き するためのデータ 21 逆引きのための構造 jp … 文字通りに逆引き する訳ではありま せん ac arpa ietf in-addr waseda www info goto piano int org この説明が 分かりにくい かもしれませ ん。ご注意 ※) FQDN = Fully Qualified Domain Name 20 … • DNSの照会(query)でPTR(ポインタ) を指定すると逆引きができる 10.18.90.133.in-addr.arpa 応答(answer)は piano.goto.info.waseda.ac.jp 5.分散データベース 22 p.188 • 世界規模で運用されている分散デー タベース • DNSのデータはキャッシュされる 90 • セキュリティを強化する提案がある DNSsec 18 10 10.18.90.133.in-addr.arpa • DNSの階層構造を、しらみ潰しで調 べるのは現実的でない • ルートサーバが13台(日本にもある) なぜルートサーバが必要か [問題] ip6 133 Aレコード: ドメイン名に対してIPアドレスを定義 AAAAレコード: ドメイン名に対してIPv6アドレスを定義 PTRレコードによる「逆引き」 DNSのデータをリソースレコードで記述 “ ” • DNS = Domain Name System IPアドレスとドメイン名(FQDN※)の対応 これを覚えておいてください 多様なDNSの機能 ルート IPアドレスとドメイン名との相互変換 23 24 4 教科書の範囲外 早稲田大学の入り口で測定したルートサーバとの通信 3000 Query Answer A/Q 2500 0.8 0.7 2000 0.6 0.5 1500 0.4 1000 割合 パケット数 6.多言語ドメイン名の話題 0.9 0.3 0.2 500 0.1 0 0 A B C D E F G H I ROOT SERVER J K L M 25 荒井祐一 マスターするべき事項 • ドメイン名に使用して良いのは、英字、数 字、ハイフン(-)である。 • 英字の大文字と小文字の区別はしない case insensitive • 日本語ドメイン名、例:早稲田大学.jp の日本文字は puny codeで表現されている RFC 3492 • この国際標準化を IETFで推進するについ ては早稲田大学の大学院生が活躍 26 注意するべき事項 • IPアドレス割り当て機関であるJPNICの役割 • JPドメイン名の登録を受け付けるJPRSの役割 • DNSはアプリケーションプロトコルの一つ • DNSはドメイン名をIPアドレスに変換する またDNSはIPアドレスをドメイン名に逆変換する • DNS機能を提供するサーバを識別するに は、ドメイン名を使うこともできるし、IPアド レスで指定することもできる。 • ただしリゾルバがDNSサーバにアクセスす る場合には、必ずIPアドレスを使う。これは 何故か? ヒント: リゾルバがDNSサーバを、ドメイン名 で指定する場合に生じる不具合を述べよ。 27 28 DNSサーバの運用 • DNSサーバが停止すると、ドメイン名を使 うことが出来なくなる。事実上はインターネ ットが停止することになる • DNSサーバは primary server と secondary server の2台を運用することが規定されて いる • DNSサーバの情報をコピーして保持する サーバが存在する。興味のある人は調べ てみてください(anycast) 29 5