九州大学 工学府海洋システム工学専攻 講義資料 担当：木村船舶海洋情報学 02. ネームサービス（DNS）／DHCP
ＴＣＰ－ＩＰプロトコルの階層
アプリケーションプログラム

アプリケーション層：DNS, HTML, HTTP, TLS/SSL, SMTP, POP, IMAP, SSH
コンピュータを「名前」で識別するための仕組み：ＤＮＳ

トランスポート層
オペレーティングシステム

トランスポート層：TCP, UDP

デバイスドライバとネットワーク
インターフェース

ネットワークインターフェース層： Ethernet, Wi-Fi

New!

コンピュータをＩＰアドレスで識別

インターネット層：IP, ARP

コンピュータをＭＡＣアドレスで識別

ハードウエア
人間にとって分かりにくく不便！

ＤＮＳ（Domain Name System）
ローマ字やピリオドを使った名前からＩＰアドレスへの変換、およびその逆変換を行う仕組み

ドメイン名の構造

ホスト名 所属組織名（階層構造を持つ）

・ドメイン名： 「ホスト名」や「組織名」を識別するための階層的な名前例） sysplan.nams.kyushu-u.ac.jp
対応するIPアドレスは133.5.136.170(root)
英国uk

cnorgjp

非営利団体日本国

accogo

edor

企業

政府機関

各種学校

法人

kyushu-u

titech大学

u-tokyo

eng
nams

edu

net
ネットワーク

東京工業大学

東京大学

中国

sci

ne

米国の教育機関gr

ad

ネットワーク 法人格の無い JPNIC会員
任意団体
サービス
IP管理組織Tokyo
Osakaなど
地域ドメイン

１）ドメイン名は日本語など多国語に対応
２）ドメイン名は勝手に名乗ったり使ったりできない
jpドメイン名の登録管理は株式会社日本レジストリサービス（JPRS）が行っている（要審査：指定業者を介して手続き、登録料年間約¥10,000）
ドメイン名は会社名などの「商標」に準じてビジネス上重要なため高額で取引される場合がある

ドメイン名を管理するホストやソフト：ネームサーバ（DNSサーバ）･それぞれのドメインの階層毎にネームサーバが配置
ac･各ネームサーバは下階層のネームサーバの情報を管理
acドメイン下で管理しているドメインのDNSサーバのIPアドレスのテーブルを管理･全てのネームサーバはrootから木構造で結ばれる･ルートから順番に辿ることで世界中のホストへ接続

kyushu-u
Kyushu-uドメイン下で管理しているドメインのDNSサーバのIPアドレスのテーブルを管理

eng

sci

nams

・管理しているドメインより下の階層であればホスト名やサブドメインを自由に設定可能（ＩＰアドレスは割り当てられた範囲内に制限）

インターネット上の分散データベース･各階層のDNSサーバは、障害発生に備え複数設置されることが多い：
プライマリサーバ＝オリジナルデータ保持
セカンダリサーバ＝プライマリから定期的にデータをコピー

Namsドメイン下のホスト名とIPアドレスのテーブルを管理ネームサーバ（DNSサーバ）の利用
・ＤＮＳの正引きレコードの例 （namsドメイン）キャッシュ時間

ネームサーバ

メールサーバ 優先度

nams.kyushu-u.ac.jp.

43200 IN NS

hosting3.nams.kyushu-u.ac.jp.

nams.kyushu-u.ac.jp.

43200 IN MX 10

vwall.nc.kyushu-u.ac.jp.

rie.nams.kyushu-u.ac.jp.

43200 IN MX 10

vwall.nc.kyushu-u.ac.jp.

vortex.nams.kyushu-u.ac.jp.

43200 IN MX 10

vwall.nc.kyushu-u.ac.jp.

rie.nams.kyushu-u.ac.jp.

43200 IN MX 30

rie.nams.kyushu-u.ac.jp.

vortex.nams.kyushu-u.ac.jp.

43200 IN MX 30

vortex.nams.kyushu-u.ac.jp.

mserver2.nams.kyushu-u.ac.jp.

43200 IN A

133.5.136.90

FDDI.nams.kyushu-u.ac.jp.

43200 IN A

133.5.136.254

rie.nams.kyushu-u.ac.jp.

43200 IN A

133.5.136.10

ＤＮＳに問い合わせを行うホストやソフト： リゾルバ（resolver）

ＩＰアドレス（IPv4）

例） Windowsのコマンドプロンプトで以下を実行するとIPアドレスを得る（正引き／逆引き）> nslookup system.nams.Kyushu-u.ac.jp

ドメイン名 → IPアドレス ： 正引き・インターネット層以下の階層で通信するために通信相手のIPアドレスは必須･IPアドレスさえ分かれば接続はできる
・複数のドメイン名に同じIPアドレスが割り当てられている場合がある（alias）

IPアドレス → ドメイン名 ： 逆引き・例えばインターネット上のサーバへ接続してくる不特定多数のホストは、そのIPアドレスのみをサーバへ開示している
接続してきたホストの所属（組織名など）を確認するためDNS逆引きを利用･DNSの逆引きレコードに記載されていないIPアドレスは、身元不明で不正アクセスの可能性ありセキュリティの厳しいサービスでは、DNS逆引きできないIPアドレスからの接続を拒否する場合が多い

・ドメイン名の取得・管理と、ＩＰアドレスの取得は、一般に別々に行う･ＩＰアドレスはインターネットプロバイダから割り当てられ、ＤＮＳの管理も基本的にプロバイダに依頼･DHCP（後述）を利用しているためIPアドレスが固定できない場合はダイナミックDNS（DDNS）というネームサービスがある

DHCP（Dynamic Host Configuration Protocol）
・いわゆる「自動ネットワーク接続」「プラグ＆プレイ」の仕組み･ＰＣの設定で上記を選択するとDHCPサービスを利用したネットワーク設定になる
WAN（Wide Area Network）

133.5.136.3

ルータ

ルータは２つのコネクタを持ち、通信の橋渡しを行う

LAN（Local Area Network） 192.168.3.253
192.168.3.0/24

133.5.6.1
九大のDNSサーバ

ＩＰアドレス 192.168.3.116
Netmask 255.255.255.0･DHCPサービスを利用すると、物理的にネットワークへ接続するだけで通信に必要な設定が自動的に行われる利用するDNSサーバ133.5.6.1
デフォルトルート 192.168.3.253･通常はLANの中にDHCPサーバを設置すべし（市販のルータの多くはこの機能を持っている）

ネットワークにホストを設置するにはこれだけの設定を要する！

デスクトップPCやプリンタのIPは固定で良いが…
いちいち設定してられない！

･DHCPサーバは、リクエストに応じて予め設定したIPアドレスのリストから使っていないものを選んで割当（MACアドレス毎に固定割当も可能）NAT（Network Address Translator）
・LANの内側でプライベートIPを使い、インターネットへ接続するときにグローバルIPアドレスへ変換する仕組み･IPv4のアドレス枯渇問題を解決するための技術･ルータの機能
133.5.136.* のネットワーク
WAN
インターネット
ルーター
WANとLANの橋渡しをする

133.5.136.3

192.168.3.* のネットワーク（プライベートアドレス）
LAN ＷＡＮ側のＰＣへ接続できる

ＷＡＮ側からLAN側のＰＣへは接続できない

メールサーバ・ＷＥＢサーバ
ＤＮＳサーバなど：
グローバルなＩＰアドレスを持つ

ＷＡＮ側からはグローバルIPのルータしか見えず、内側のコンピュータを区別できない→ セキュリティ上安全講座内のＰＣ・プリンタなど
LAN内のIPアドレス設定は自由

【復習】 各IPアドレスのコンピュータにおけるサービスの区別「IPアドレス」でコンピュータを区別
さらにサービスも区別せねばならぬ → 各コンピュータにサービス受付の「ポート番号」
133.5.136.3

WAN（Wide Area Network）

NATルータLAN（Local Area Network）

192.168.3.254

133.5.136.77

133.5.136.170

通称メールサーバ
System.nams.kyushu-u.ac.jp

Webサーバ80番ポートSMTPサーバ（郵便ポスト）25番ポート
POPサーバ（郵便受け）110番ポート

192.168.3.116

192.168.3.20

192.168.3.1

LANの内側のホストは、通常WAN側から接続できない（WAN側からはLAN内の全てのホストをNATルータのインターネット側のホスト１台として認識）

ポート番号を変えることにより、同一コンピュータで複数のサービスを提供できる
有名なプロトコルのポート番号はほぼ決められている
サービスを行うホストはWANへ接続

ポートフォワーディング（NAPT：Network Address Ports translator）
・LANの内側でプライベートIPを使い、インターネットへ接続するときにグローバルIPアドレスへ変換するNATの仕組みに加えてポート番号も付け替える･IPv4のアドレス枯渇問題を解決するための技術･ルータの機能
WAN（Wide Area Network）
WAN側からはNATルータをホスト１台として認識

WAN側IPアドレス: 133.5.136.3

NATルータLAN（Local Area Network）

25番ポートへの接続は192.168.3.116の25番ポートへ転送
110番ポートへの接続は192.168.3.20の110番ポートへ転送
80番ポートへの接続は192.168.3.1の80番ポートへ転送

192.168.3.254

通常は外部から接続できないLAN内のPCをサーバとして外部から接続することが可能となる
通常WAN側から接続できないLANの内側のホストへ、WAN側からポートのサービス毎に振り分けられて接続

192.168.3.116

192.168.3.20

SMTPサーバ（郵便ポスト）
25番ポートPOPサーバ（郵便受け）
110番ポート

192.168.3.1
Webサーバ80番ポートNATによる通常のプライベートネットワーク

無料Wi-Fi

インターネット
133.5.136.3

133.5.136.13

NATルータ
192.168.3.0/24

研究室プライベートネットワーク
LAN（Local Area Network）

NATルータ
192.168.3.0/24

実験棟プライベートネットワーク
LAN（Local Area Network）

モバイル端末通常は研究室内のLAN内のPCと実験棟内のLANのPC同士で直接通信したり外部のモバイル機器からLAN内のPCと直接通信はできない

VPN （Virtual Private Network）無料Wi-Fi

インターネット
133.5.136.3

133.5.136.13

VPNルータ
192.168.3.0/24

研究室プライベートネットワーク
LAN（Local Area Network）

VPNルータ
192.168.3.0/24

実験棟プライベートネットワーク
LAN（Local Area Network）

VPNアプリ

モバイル端末VPNルータ同士のIPアドレスなどを互いに設定することにより、同一のプライベートアドレスで接続され、互いのPC同士が自由に通信できる

WindowsコマンドプロンプトからDNSやIPアドレス、TCP接続情報を取得する●ホスト名からIPアドレスを調べる（正引き） IPアドレスからホスト名を調べる（逆引き）＞ nslookup （ホスト名またはIPアドレス）●対象のWindowsＰＣのTCP-IPに関する情報を得る： netsh コマンド> netsh interface ip show
使用できるコマンドは次のとおりです:
このコンテキストのコマンド:
show addresses - IP アドレスの構成を表示します。
show compartments - コンパートメント パラメーターを表示します。
show config - IP アドレスおよび追加情報を表示します。
show destinationcache - 宛先キャッシュ エントリを表示します。
show dnsservers - DNS サーバー アドレスを表示します。
show dynamicportrange - 動的ポート範囲の構成パラメーターを表示します。
show global - グローバル構成パラメーターを表示します。
show icmpstats - ICMP 統計情報を表示します。
show interfaces - インターフェイス パラメーターを表示します。
show ipaddresses - 現在の IP アドレスを表示します。
show ipnettomedia - IP net-to-media のマッピングを表示します。
show ipstats - IP 統計情報を表示します。
show joins - 参加したマルチキャスト グループを表示します。
show neighbors - 近隣キャッシュ エントリを表示します。
show offload - offload 情報を表示します。
show route - ルート テーブル エントリを表示します。
show subinterfaces - サブインターフェイス パラメーターを表示します。
show tcpconnections - TCP 接続を表示します。
show tcpstats - TCP 統計情報を表示します。
show udpconnections - UDP 接続を表示します。
show udpstats - UDP 統計情報を表示します。
show winsservers - WINS サーバー アドレスを表示します。

＞netsh interface ip show config を実行する＞netsh interface ip show dnsservers を実行する＞netsh interface ip show tcpconnections を実行する

Netshコマンドの実行結果

0.0.0.0は「IPアドレスを保有していない」または「システムにおけるすべてのインターフェースのすべてのIPアドレス」を意味する

127.0.0.1は自分自身(localhost)のIPアドレスを意味する（ループバック用IPv4アドレスと呼ばれる）

ＰＣがどんなホストと何番ポートで通信しているのか分かるまとめ（１） DNS （Domain Name System） ホスト名←→IPアドレスを変換する仕組み
ドメイン名とは？
ネームサーバ（DNSサーバ）
リゾルバとは？
（２） DHCP （Dynamic Host Configuration System） ネットワーク自動接続のための仕組み
DHCPサーバ（３） NAT，ポートフォワーディング（NAPT），VPN

レポート課題：（１） 以下のIPアドレスのホスト名を調べよ133.5.12.36
131.112.125.45（２） 以下のホストのIPアドレスを調べよ。また調べたIPアドレスから逆引きして別のドメイン名の有無を調べよ。
www.thingiverse.com
www.google.com

下記の課題提出用フォルダへ、課題の番号と提出者が分かるようにファイル名を以下のようにしてアップロードせよ
第2回2TE19xxxZ名前.pdf
https://share.iii.kyushu-u.ac.jp/public/hROwAAqIPI5ATI4BUXJtIJeJbMLJzVszfitNl89GHcMK

上記フォルダへのリンクは下記ホームページから
http://sysplan.nams.kyushu-u.ac.jp/gen/edu/NavalInformationProcessing/2019/index.html