インターネット層 •前回の課題 •IPv6アドレス •IP •ARP •ICMP •NAT 2003年12月4日 情報ネットワーク論 新村太郎 TCP/IPからみたインターネット層 TCP/IP プロトコル, アプリ ケーション, 規格など アプリケーション層 HTTP, SMTP, FTP, TELNET, etc. トランスポート層 TCP, UDP インターネット層 IP (v4, v6), ICMP, ARP ネットワーク インターフェース層 Ethernet, FDDI, ATM データの送信元から送信先へ正しくデータを届ける - 識別、経路制御、通知 - 前回の課題 練習問題3 172.16.0.0/16のネットワークが与えられている。 ここで、ホスト数10000個を接続するサブネッ トを3つ設定する。できる限り最小規模のサ ブネットにする場合、2つ目のサブネットのIP アドレスとサブネット長を書け。 練習問題3の解答 先ず、ホスト数10000を接続する場合、最低でも何ビットのネットワーク が必要であるか決める。 24ビットでは 2(32-24) - 2 = 28 - 2 = 256 23ビットでは 2(32-23) - 2 = 29 - 2 = 510 ・・・ 19ビットでは 2(32-19) - 2 = 213 - 2 = 8190 18ビットでは 2(32-18) - 2 = 214 - 2 = 16384 したがって、18ビットのでサブネットを設定する。 最初のサブネットは 172.16.0.0/18 であるから、範囲は 10101100 00010000 00000000 00000000 ~ 10101100 00010000 00111111 11111111 すなわち 172.16.0.0 ~ 172.16.63.255 次の範囲の最初のIPアドレスは前の範囲の最後に1を加えて 10101100 00010000 00111111 11111111 + 1 = 10101100 00010000 01000000 00000000 (172.16.64.0) したがって、解答は 172.16.64.0/18 (ちなみに、範囲は 172.16.64.0 ~ 172.16.127.255 である) プロトコル階層モデル OSI参照モデル TCP/IP プロトコル, アプリケーション, 規格など アプリケーション層 HTTP, SMTP, FTP, TELNET, etc. トランスポート層 トランスポート層 TCP, UDP ネットワーク層 インターネット層 IP (v4, v6), ICMP, ARP ネットワーク インターフェース層 Ethernet, FDDI, ATM アプリケーション層 プレゼンテーション層 セッション層 データリンク層 物理層 IPv6アドレス IPv6 IPアドレス • 128ビット(IPv4は32ビット・・・何倍?) → 確保できる数は非常に大きい 割り当てに困ることは当分ない 様々な通信機器に使用可能・・・家電、携帯電話、etc. • IPv4のアドレスシステムの良い部分は踏襲、欠点 を改善 • 新しい技術・需要に対応 • 表記 16ビットごとに : で区切る 16進数表記 0 の部分を省略できる IPv6 IPアドレス表記 • 例 0011111111111110 0000010100000001 0001100010000111 0000000000000001 0000000000000000 0000000000000000 0000000000000000 0000000000000011 ↓ 3ffe:0501:1887:0001:0000:0000:0000:0003 ↓ 3ffe:0501:1887:0001:0000:0000:0000:0003 • 0 がずっと続く箇所をすべて省略して :: に • 各まとまりで先頭の0を省略 ↓ 3ffe:501:1887:1::3 IP IP (Internet Protocol) • フラグメント化&カプセル化 アプリケーションデータ アプリケーション データ1 アプリケーション データ2 トランスポート層 ・・・・・ インターネット層 ・・・・・ アプリケーション データ3 アプリケーション データ4 TCPセグメント TCPヘッダ アプリケーション データ TCPヘッダ アプリケーション データ IPパケット (IPデータグラム) ネットワークインターフェース 層 ・・・・・イーサネットフレーム イーサネット ヘッダ IPヘッダ IPヘッダ アプリケーション データ5 TCPヘッダ アプリケーション イーサネット データ トレイラ IP • IPパケット IPヘッダ IPヘッダ TCPヘッダ アプリケーション データ データ アプリケーションデータと上位のプロトコルの ヘッダ(TCPヘッダ)をデータとして扱う IP • IPv4ヘッダ データ IPヘッダ 32ビットごと 0 8 バージョン ヘッダ長 16 サービスタイプ 識別子 TTL(生存時間) 24 パケット長 フラグ プロトコル フラグメントオフセット ヘッダチェックサム 送信元IPアドレス あて先IPアドレス オプション(可変長) パディング 31 • IPv6ヘッダ 0 8 バージョン 優先度 IP 16 24 31 フローラベル ペイロード長 次ヘッダ 送信元IPアドレス あて先IPアドレス IPv6拡張ヘッダ(オプション・可変長) 中継限界数 IPの役割 • IPアドレスを使用してネットワーク上で識別 • IPアドレスを使用してネットワーク上でグ ループを形成 • IPアドレスをたよりにしてあて先へ届ける → 経路制御(ルーティング) → 経路制御を行う機器:ルータ IPの役割 ルーティング ルータ:パケットを正しい方向へ送り出す 例: 192.168.10.2 から 192.168.12.34 へ ルータ ↓ 192.168.10.0/24 192.168.12.0/24 192.168.11.0/24 IPの役割 ルーティング 192.168.10.2 から 192.168.12.34 へ 192.168.10.2 ルータ 192.168.10.32/28 192.168.10.0/28 192.168.10.16/28 IPの役割 ルーティング 192.168.10.2 から 192.168.12.34 へ ルータ ↓ 192.168.10.0/24 192.168.12.0/24 192.168.11.0/24 IPの役割 ルーティング 192.168.10.2 から 192.168.12.34 へ 192.168.12.34 ルータ 192.168.12.32/28 192.168.12.0/28 192.168.12.16/28 ARP Address Resolution Protocol ARP • ネットワーク機器が実際に信号をやりとりす るのはネットワークインターフェース層 ARP • ネットワークインターフェース層ではIPアドレスは処 理できない・・・互いをMACアドレス(物理アドレス) で識別 ARP コンピュータやネットワーク機器が最初に 認識できるのは直接つながっているホスト のMACアドレス(物理アドレス) MAC(Media Access Control)アドレス(物理アドレス) • ネットワーク機器のネットワークインターフェースに1つ 設定されている • 基本的に変更することはできない(製造された時点で設 定されている) • 16進数表示 00-90-27-2E-4E-7D 00-90-27-2E-4E-DE ARP IPアドレスを使用して通信先を選ぶので IPアドレスとMACアドレスの対応付けをする 00-90-27-2E-4E-7D 192.168.0.5 192.168.0.6 00-90-27-2E-4E-DE 誰が 192.168.0.7の IPアドレスを持ってい る? MACアドレスを 00-90-27-2E-4E-7D に返 事して下さい。 ARPリクエスト をブロードキャ ストする 00-90-27-2E-4E-5A 192.168.0.7 ARP 該当のIPアドレスを持っているホストが応答 僕は違うから無視しよう 00-90-27-2E-4E-7D 192.168.0.5 00-90-27-2E-4E-DE 192.168.0.6 私のことを呼んでる! 返事しなきゃ。 00-90-27-2E-4E-5A 192.168.0.7 ARP 該当のIPアドレスを持つホストが自分のMACア ドレスを送る (ARP reply) 00-90-27-2E-4E-7D 192.168.0.5 00-90-27-2E-4E-DE 192.168.0.6 192.168.0.7 は、私、 00-90-27-2E-4E-5A が持っています ARPリプライ 00-90-27-2E-4E-5A 192.168.0.7 ARP IPアドレスとMACアドレスの対応付けができたら、 通信が開始される 00-90-27-2E-4E-7D 192.168.0.5 こんにちは 192.168.0.7 こと、 00-90-27-2E-4E-5A さん。 00-90-27-2E-4E-DE 192.168.0.6 通信開始 00-90-27-2E-4E-5A 192.168.0.7 ARP いくつかのルータを介して 192.168.0.5 から 192.168.2.4 へ 通信を行いたい場合 ・・・ 00-90-27-2E-4E-7D 192.168.0.5 00-90-27-2E-77-2C 192.168.1.4 192.168.0.1 00-90-27-2E-4E-5D 00-90-27-CC-17-3C 192.168.2.1 192.168.1.1 192.168.2.4 00-90-27-21-A7-BC 00-90-27-8A-A7-22 ARP 192.168.0.5 から 192.168.2.4 へ とりあえず 192.168.0.1 へ とりあえず、192.168.0.1 へ送 ればいいのだけれど、MAC アドレスはいくつだろう? 00-90-27-2E-4E-7D 192.168.0.5 00-90-27-2E-77-2C 192.168.1.4 192.168.0.1 00-90-27-2E-4E-5D 00-90-27-CC-17-3C 192.168.2.1 192.168.1.1 192.168.2.4 00-90-27-21-A7-BC 00-90-27-8A-A7-22 ARP 192.168.0.5 から 192.168.2.4 へ ARPリクエスト 192.168.0.1 の IP アドレスを 持っていたら MACアドレス を教えて下さい! 00-90-27-2E-4E-7D 192.168.0.5 00-90-27-2E-77-2C 192.168.1.4 192.168.0.1 00-90-27-2E-4E-5D 00-90-27-CC-17-3C 192.168.2.1 192.168.1.1 192.168.2.4 00-90-27-21-A7-BC 00-90-27-8A-A7-22 ARP 192.168.0.5 から 192.168.2.4 へ ARPリプライ 192.168.0.1 の IP アドレス持っ ています。MACアドレスは 00-90-27-2E-77-2C です。 00-90-27-2E-4E-7D 192.168.0.5 00-90-27-2E-77-2C 192.168.1.4 192.168.0.1 00-90-27-2E-4E-5D 00-90-27-CC-17-3C 192.168.2.1 192.168.1.1 192.168.2.4 00-90-27-21-A7-BC 00-90-27-8A-A7-22 ARP 192.168.0.5 から 192.168.2.4 へ IPで通信 192.168.0.5 から送られたこの データを 192.168.2.4 へ届 けて下さい。 00-90-27-2E-4E-7D 192.168.0.5 00-90-27-2E-77-2C 192.168.1.4 192.168.0.1 00-90-27-2E-4E-5D 00-90-27-CC-17-3C 192.168.2.1 192.168.1.1 192.168.2.4 00-90-27-21-A7-BC 00-90-27-8A-A7-22 ARP 192.168.0.5 から 192.168.2.4 へ とりあえず 192.168.1.1 へ 192.168.2.4 へ送るには、とりあえず、 192.168.1.1 へ送ればいいのだけれ ど、MACアドレスはいくつだろう? 00-90-27-2E-4E-7D 192.168.0.5 00-90-27-2E-77-2C 192.168.1.4 192.168.0.1 00-90-27-2E-4E-5D 00-90-27-CC-17-3C 192.168.2.1 192.168.1.1 192.168.2.4 00-90-27-21-A7-BC 00-90-27-8A-A7-22 ARP 192.168.0.5 から 192.168.2.4 へ ARPリクエスト 192.168.1.1 の IP アドレスを 持っていたら MACアドレス を教えて下さい! 00-90-27-2E-4E-7D 192.168.0.5 00-90-27-2E-77-2C 192.168.1.4 192.168.0.1 00-90-27-2E-4E-5D 00-90-27-CC-17-3C 192.168.2.1 192.168.1.1 192.168.2.4 00-90-27-21-A7-BC 00-90-27-8A-A7-22 ARP 192.168.0.5 から 192.168.2.4 へ ARPリプライ 192.168.1.1 の IP アドレス持っ ています。MACアドレスは 00-90-27-21-A7-BC です。 00-90-27-2E-4E-7D 192.168.0.5 00-90-27-2E-77-2C 192.168.1.4 192.168.0.1 00-90-27-2E-4E-5D 00-90-27-CC-17-3C 192.168.2.1 192.168.1.1 192.168.2.4 00-90-27-21-A7-BC 00-90-27-8A-A7-22 ARP 192.168.0.5 から 192.168.2.4 へ IPで通信 192.168.0.5 から送られたこの データを 192.168.2.4 へ届 けて下さい。 00-90-27-2E-4E-7D 192.168.0.5 00-90-27-2E-77-2C 192.168.1.4 192.168.0.1 00-90-27-2E-4E-5D 00-90-27-CC-17-3C 192.168.2.1 192.168.1.1 192.168.2.4 00-90-27-21-A7-BC 00-90-27-8A-A7-22 ARP 192.168.0.5 から 192.168.2.4 へ 同じネットワークにある 192.168.2.4 へ 192.168.2.4 は同じネットワークにつ ながっているはずなのだけれど、 MACアドレスはいくつだろう? 00-90-27-2E-4E-7D 192.168.0.5 00-90-27-2E-77-2C 192.168.1.4 192.168.0.1 00-90-27-2E-4E-5D 00-90-27-CC-17-3C 192.168.2.1 192.168.1.1 192.168.2.4 00-90-27-21-A7-BC 00-90-27-8A-A7-22 ARP 192.168.0.5 から 192.168.2.4 へ ARPリクエスト 192.168.2.4 の IP アドレスを 持っていたら MACアドレス を教えて下さい! 00-90-27-2E-4E-7D 192.168.0.5 00-90-27-2E-77-2C 192.168.1.4 192.168.0.1 00-90-27-2E-4E-5D 00-90-27-CC-17-3C 192.168.2.1 192.168.1.1 192.168.2.4 00-90-27-21-A7-BC 00-90-27-8A-A7-22 ARP 192.168.0.5 から 192.168.2.4 へ ARPリプライ 192.168.2.4 の IP アドレス持っ ています。MACアドレスは 00-90-27-8A-A7-22 です。 00-90-27-2E-4E-7D 192.168.0.5 00-90-27-2E-77-2C 192.168.1.4 192.168.0.1 00-90-27-2E-4E-5D 00-90-27-CC-17-3C 192.168.2.1 192.168.1.1 192.168.2.4 00-90-27-21-A7-BC 00-90-27-8A-A7-22 ARP 192.168.0.5 から 192.168.2.4 へ IPで通信 192.168.0.5 から あなた 192.168.2.4 へ送られたこの データを届けます。 00-90-27-2E-4E-7D 192.168.0.5 00-90-27-2E-77-2C 192.168.1.4 192.168.0.1 00-90-27-2E-4E-5D 00-90-27-CC-17-3C 192.168.2.1 192.168.1.1 192.168.2.4 00-90-27-21-A7-BC 00-90-27-8A-A7-22 ARP 192.168.0.5 から 192.168.2.4 へ データ受信 192.168.0.5 からデータが送ら れてきたな。どんなデータだろ う? 00-90-27-2E-4E-7D 192.168.0.5 00-90-27-2E-77-2C 192.168.1.4 192.168.0.1 00-90-27-2E-4E-5D 00-90-27-CC-17-3C 192.168.2.1 192.168.1.1 192.168.2.4 00-90-27-21-A7-BC 00-90-27-8A-A7-22 ARP まとめ • IPで処理するIPアドレスと、ネットワークイ ンターフェース層で処理されるMACアドレ スを関連付ける役割 • インターネット層に位置付けられるが、IP 層の下層に位置する • 逆にMACアドレスを元にIPアドレスを検 索するプロトコルをRARP(Reverse ARP)と いう ICMP Internet Control Message Protocol ICMP • IPパケットがあて先に送られ、途中でエ ラーになった時に知らせるためのプロトコ ル • ネットワークの状況を調べることにも使用さ れる • IP層の上位になるがインターネット層に位 置付けられる ICMPパケット IPヘッダ ICMP タイプ 0 3 4 5 8 11 12 13 14 15 16 17 18 ICMPで伝えられる各種メッセージ 意味 Echo Reply Destination Unreachable Source Quench Message Redirect Echo Time Exceeded Parameter Problem Timestamp Timestamp Reply Information Request Information Reply Address Mask Request Address Mask Reply ICMP ICMPで伝えられる各種メッセージ 0 Echo Reply 3 Destination Unreachable 4 Source Quench Message 5 Redirect 8 Echo 11 Time Exceeded 12 Parameter Problem 13 Timestamp 14 Timestamp Reply 15 Information Request 16 Information Reply 17 Address Mask Request 18 Address Mask Reply 応答性確認 実習: スタート → ファイル名を指定して実行 → command → ping 202.24.147.232 → exit で終了 ICMP ICMPで伝えられる各種メッセージ 0 Echo Reply 3 Destination Unreachable 4 Source Quench Message 5 Redirect 8 Echo 11 Time Exceeded 12 Parameter Problem 13 Timestamp 14 Timestamp Reply 15 Information Request 16 Information Reply 17 Address Mask Request 18 Address Mask Reply 情報収集 ICMP ICMPで伝えられる各種メッセージ 0 Echo Reply 3 Destination Unreachable 4 Source Quench Message 5 Redirect 8 Echo 11 Time Exceeded 12 Parameter Problem 13 Timestamp 14 Timestamp Reply 15 Information Request 16 Information Reply 17 Address Mask Request 18 Address Mask Reply エラー通知 ICMP ICMPで伝えられる各種メッセージ 0 Echo Reply 3 Destination Unreachable 4 Source Quench Message 5 Redirect 8 Echo 11 Time Exceeded 12 Parameter Problem 13 Timestamp 14 Timestamp Reply 15 Information Request 16 Information Reply 17 Address Mask Request 18 Address Mask Reply 経路変更 NAT Network Address Translation NAT プライベートIPアドレスを持つネットワークと パブリックIPアドレスを持つネットワークは 直接通信できない ・・・ ルータを介す プライベートアドレスを持 つネットワーク 192.168.0.2 192.168.0.3 192.168.0.4 ルータ 192.168.0.1 202.24.147.231 NAT プライベートIPアドレスを持つ1つのホストの データを、肩代わりして自分のパブリック IPアドレスを付けて送り出す プライベートアドレスを持 つネットワーク 192.168.0.2 ルータ 192.168.0.1 202.24.147.231 192.168.0.2 のデータをパブリックIPアドレスを 持ったネットワークに送り出す時、ルータのパブ リックIPアドレスを付けて送り出す ・・・ NAT NAPT プライベートIPアドレスを持つネットワークに ある複数のホストのデータをすべて、肩代 わりして自分のパブリックIPアドレスを付 けて送り出す・・・NAPT (IPマスカレード) プライベートアドレスを持 つネットワーク 192.168.0.2 192.168.0.3 192.168.0.4 ルータ 192.168.0.1 202.24.147.231 NAPT: Network Address and Port Translation NAPT 逆にパブリックIPアドレスを持ったネットワー クからの応答データを、ポートによって、プ ライベートIPアドレスを持つネットワークの どのホストあてにするか区別する プライベートアドレスを持 つネットワーク 192.168.0.2 192.168.0.3 192.168.0.4 ルータ 192.168.0.1 202.24.147.231
© Copyright 2024 ExpyDoc