class: title, smokescreen, shelf, no-footer # コンピュータネットワーク(2024-)<br><small>第08回 DNS</small> <div class=footnote> <small><small> 3年、春学期、必修; 旧「コンピュータネットワーク」(-2023) </small></small> </div> --- class: compact # 用語集 - DNS(発音:でぃーえぬえす) ... Domain Name Serivce/System <small> - ドメイン名とIPアドレス(+他の属性)間の対応関係を管理するしくみ <br> (注意:他の属性の話は、今回、省略) </small> - ドメイン名 ... domainname <small> - 英数字(と特殊文字の一部,例: "-")の文字列をドット(".")でつないだもの - (右から逆方向に読むと)階層構造を表していることに注目 <br> 例: portal.mc.chitose.ac.jp </small> - 正引き <small> - ドメイン名からIPアドレスを検索する操作 </small> - 逆引き <small> - IPアドレスからドメイン名を検索する操作。正引きの逆 </small> --- class: compact # <small>IPアドレスだと覚えきれないよね?そこでドメイン名をつけます</small> <div class=footnote> <small><small> </small></small> </div> - 演習で、"210.128.53.ほげ"というIPアドレスが10個でてきてますが、みなさん覚えてますか?ふつう覚えてないよね - 大丈夫です、プロも覚えてません <small> - さすがに最重要なサーバは覚えてますね〜 - たぶん覚えようとしているわけではなくて、よく使うサーバのアドレスを覚えてしまうだけ </small> - もっと覚えやすくするには?というわけで、ドメイン名というものを考えました <small> - 210.128.53.254 (にせポータル)には portal.net.fml.org というドメイン名でもアクセス出来ます - 少しは覚えやすそうでしょ? </small> --- class: compact # ドメイン名の例 <div class=footnote> <small><small> </small></small> </div> - 英数字の文字列を . (ドット)でつないだ文字列 - 例: portal.mc.chitose.ac.jp ... (本物のポータル) - 例: portal.net.fml.org ... (演習で使っているニセポータル) - 読み方の例: portal.mc.chitose.ac.jp を右から読むと?それっぽいです <small> - 日本(jp)の - 高等学術機関(ac = academic の冒頭部分)の - 公立千歳科学技術大学(を表す用語 = chitose) - メディアセンター(mc)(管轄の) - ポータル(portal) - 右側が大きい組織の単位であることに注目です </small> --- class: compact,img-right # DNSサーバ <div class=footnote> <small><small> (脚注) 通常、前者(1)は各組織のネットワーク管理者しか触りません </small></small> </div> ![](../images/www-internal-htdocs-w-dns.png) - DNSという仕組みを運用しているので当然DNSサーバというものがあります - DNSサーバは二種類あります <small> 1. 自分のドメインの情報を世界に提供するためのDNSサーバ 2. 他ドメインの情報を検索するためのDNSサーバ(リゾルバ) </small> --- class: compact,img-right # 正しいブラウザの動作 <div class=footnote> <small><small> </small></small> </div> ![](../images/www-internal-htdocs-w-dns.png) <small> 例:http://b2902900.cloud.fml.org/ にアクセス </small> 1. ブラウザは b2902900.cloud.fml.org のIPアドレスを調べる(名前解決) - DNSサーバ(リゾルバ)に問い合わせ、 10.20.30.40 と分かる(図(0)) 1. ブラウザは 10.20.30.40 とのあいだにTCPのデータ転送路を作成する 1. データ転送路の上でHTTPを使いWWWサーバとデータのやりとりをする(図(1)) --- class: compact,img-right # 付録: DNSなどを学ぶマンガ小冊子 <div class=footnote> <small><small> <A HREF="https://internet.watch.impress.co.jp/docs/news/1412233.html"> internet.watch.impress.co.jp/docs/news/1412233.html </A> </small></small> </div> ![](https://asset.watch.impress.co.jp/img/iw/docs/1412/233/jprs03_l.png) - JPRS(ドメイン名を管理している組織)が、 教育機関を対象に無償で配布するマンガ小冊子「ポン太のネットの大冒険 ~楽しくわかるインターネットのしくみ~」 --- class: title, smokescreen, shelf, no-footer # 演習 <div class=footnote> <small><small> </small></small> </div> --- class: compact # 例題 <div class=footnote> <small><small> (脚注) 例題なので、一緒にやります </small></small> </div> 1. 210.128.53.254のドメイン名を調べる(逆引き) 1. portal.net.fml.orgのIPアドレスを調べる(正引き) --- class: compact # 解説: DNSを調べるコマンド (逆引き) <div class=footnote> <small><small> (脚注) DNS三大コマンドは nslookup host dig です。 <br> Debianの場合はじめからhostコマンドは利用できます。 nslookupとdigはdnsutilsパッケージをインストールすると使えます。 <br> nslookupはWindowsにもあるので覚えておくならnslookupのほうがよい?(でも素Debianのように入ってないこともある) </small></small> </div> <small> ``` [コマンドの使い方] host 調べたいもの [実行例] $ host 210.128.53.254 254.53.128.210.in-addr.arpa domain name pointer portal.net.fml.org. ``` - 読み方 - <B>右端の`portal.net.fml.org`がドメイン名</B>です - 左端の`254.53.128.210.in-addr.arpa`は全世界のDNS階層構造を表現したものです。 スライドP.5に出てくる「自ドメインのドメイン情報を世界に提供する」には、 この階層構造を考えて設定を書いています。 とりあえず、ネットワーク管理者だけが分かっていればいい話です </small> --- class: compact # 解説: DNSを調べるコマンド (正引き) <div class=footnote> <small><small> </small></small> </div> <small> ``` [コマンドの使い方] host 調べたいもの [実行例] $ host portal.net.fml.org portal.net.fml.org has address 210.128.53.254 ``` - せっかくなので、前ページの逆をやってみます。正引き(ドメイン名 -> IPアドレス)です - 読み方 - <B>右端の`210.128.53.254`がIPアドレス</B> - <B>左端の`portal.net.fml.org`がドメイン名</B>(コマンドの引数) </small> --- class: compact # 必須課題 <div class=footnote> <small><small> </small></small> </div> 1. Excelにある全てのIPアドレスについて逆引きしなさい 1. 逆引きした結果(ドメイン名)を見ると、その機器の役割がだいたい分かる。各LANの役割について推定しなさい - Excelに新たな列(C列?)を作成して、役割を書きこんでください - ポータルのレポートボックスに提出