インターネットプロトコル階層とOSI

Download Report

Transcript インターネットプロトコル階層とOSI

インターネットのプロトコル階層
ネットワーク層(IPアドレス)
1
インターネットプロトコル階層とOSI
 OSIの7層モデルはインターネットでは5層と考えられる
 下図はwebアクセスの例
2
レイヤ1(物理層)
3
レイヤ1
たとえば10BaseTの規定では
4
レイヤ2
5
レイヤ2
 レイヤ2はLANの範囲内で直接つながる相手との通信
6
レイヤ3(ネットワーク層)
 レイヤ3はデータを相手まで届ける
7
レイヤ3
 レイヤ3はレイヤ2を利用し,レイヤ2はレイヤ1を
利用する
8
レイヤ4(トランスポート層)
データの品質を管理し,目的のアプリ
ケーションにデータを渡す
9
レイヤ4
TCPとUDP
10
レイヤ5(アプリケーション)
アプリケーション同士がやりとり
11
レイヤを通して見たら
12
ネットワーク層(IP層)の役割
 第3層(ネットワーク層)の役割
 下位層を用い両端のシステム間でデータの伝送や中
継を行う
 異なる種類の回線を経由して相手までデータを届け
る役割を担う
 データの転送単位:IPデータグラム
 IPヘッダ+データ
IPヘッダ
データ
ネットワーク層
データリンク層
ルータ
データリンク層
データリンク層
ルータ
ルータ
データリンク層
データリンク層
ルータ
13
IP層の役割
IPの機能その1:アドレス管理
 ネットワークに接続しているコンピュータの中から,
通信を行う宛先を指定する
IPの機能その2:経路制御
 宛先コンピュータまでの経路を決定する
14
IPアドレス構成(IPv4)
l
IPアドレス:インターネット上で一意に決まる識別子
 ホストのネットワークインタフェースに付与される
 32ビット固定長(232=4,294,967,296個の識別子)
 ネットワーク識別子+ホスト識別子
 8ビットずつ区切って10進数で表現し、ピリオドで区切って並べる
11000000 10101000 10100111 11110111
192.168.167.247
約40億
15
IPアドレスの構造とクラスわけ
 IPアドレスはネットワーク部とホスト部からな
る
 ネットワーク部:組織をあらわす
 ホスト部:組織内での番地をあらわす
102
202.255.229.
ネットワーク部
24bit
ホスト部
8bit
 ネットワーク部の大きさによってクラスわけ
クラスA
0
クラスB
10
クラスC
110
24bit
8bit
16bit
16bit
24bit
8bit
16
IPアドレス(ホストとNWのアドレス)
l
通信相手指定とルーチングのため、アドレスを付与
 ルーチングのためのNWアドレス
 NW規模(ホスト数)に応じた3つのNW-IDのクラス
 クラスフル・アドレス
Class A (1.0.0.0 – 126.0.0.0)
ユ
ニ
キ
ャ
ス
ト
ア
ド
レ
ス
0
126個のネットワーク,0.0.0.0は自分,127.0.0.0はループバック用
256×256×256-2=16,777,214個のホスト
Network ID
Host ID
Class B (128.0.0.0 – 191.255.0.0)
1
0
(191-127)×256=16,384個のネットワーク
256×256-2=65,534個のホスト
Network ID
Class C (192.0.0.0 – 223.255.255.0)
1
1
0
第1オクテット
Host ID
(223-191)×256×256=2,097,152個のネットワーク
256-2=254個のホスト
Network ID
第2オクテット 第3オクテット
ホストの全0は
ネットワークアドレス
として,全1は
そのネットワーク
のすべてのホス
トに放送でパ
ケットを届ける
ためののアドレ
スとして予約さ
れているため2
引く
Host ID
第4オクテット
第1オクテットを見たらクラスがわかる
17
サブネットマスク
l
l
サブネット:枯渇するNWアドレスを増やすため、ホストアドレス領域をNW
アドレスとして利用可能とする仕組み
サブネットマスク:どこまでがNWアドレス領域なのかを指定
クラスBのNetwork アドレス
AND
クラスBのHost アドレス
10000001 10101000 10100111 11110111
129.168.167.247
11111111 11111111 11111100 00000000
255.255.252.0
10000001 10101000 10100100 00000000
129.168.164.0
Subnet address
Network part
Subnet part
Host part
Subnet mask
ネットワークアドレスの計算法
18
サブネットアドレスの求め方
自分の
IPアドレス
10000001 10101000 10100111 11110111
129.168.167.247
サブネット
マスク
11111111 11111111 11111100 00000000
255.255.252.0
10000001 10101000 10100100 00000000
129.168.164.0
自分の属する
(サブ)ネットア
ドレス
自分の属するネットワークのアドレスが129.168.164.0とわかる.
このとき,このネットワーク全体に割り当てられているアドレスの範囲は,
ホストアドレス部がall”0”からall”1”の範囲と考えられるので
10000001 10101000 10100100 00000000
(129.168.164.0)
10000001 10101000 10100111 11111111
(129.168.167.255)
ただし,129.168.164.0はネットワークのアドレス,129.168.167.255は放送
用(ネットワーク内全てに届く)としてホストには割り振らない
19
CIDR(ネットワークアドレスの表現法)
 1991-:CIDR(Classless
Routing)
Inter-Domain
 手ごろな大きさであるクラスBアドレスの枯渇が見え出した.
クラスCを複数まとめて,組織に配付.
経路表(ルーティング・テーブル)の肥大.
経路制御性能の悪化
 アドレスクラスを完全に捨て,ネットワークを「プレフィックス
(接頭辞)」で表現.
prefix:=IPアドレス/プレフィックス長
 192.32.1.0
 192.32.0.0
255.255.255.0
255.255.0.0
<=>192.32.1.0/24
<=>192.32.0.0/16
 前ページの例は,
ネットアドレス129.168.164.0で,ネットマスク255.255.252.0
と表現していたが,それを 129.168.164.0/22と表現する.
上から数えて何ビットまでがホストアドレス部分かを示す
20
CIDRによる経路集約
201.23.1.0
201.23.2.0
201.23.3.0
201.24.1.0
201.23.1.0
201.23.2.0
201.23.3.0
201.24.1.0
201.23.1.0
201.23.2.0
23 : 00010111
24 : 00011000
16 : 00010000
201.23.0.0/16
201.16.0.0/12
201.24.0.0/16
201.23.1.0
201.24.1.0
201.23.3.0
201.23.2.0
201.24.1.0
201.23.3.0
21
CIDRによる経路集約
212.56.132.0/24
212.56.133.0/24
212.56.134.0/24
212.56.135.0/24
11010100.00111000.10000100.00000000
11010100.00111000.10000101.00000000
11010100.00111000.10000110.00000000
11010100.00111000.10000111.00000000
すべてのアドレスに共通のプレフィクスを判別すると
以下のように集約できる(管理するアドレスの数を減らせ
る)
212.56.132.0/22
11010100.00111000.10000100.00000000
22
サブネットアドレスの求め方の例
ホストのIPアドレス
212. 62. 31. 90
サブネットマスク
255.255.255.224
のとき,このホストの属するサブネットアドレスを求めなさい
11010100 00111110 00011111 010 11010 (212.62.31.90)
× 11111111 11111111 11111111 111 00000 (255.255.255.224)
11010100 00111110 00011111 010 00000 (212.62.31.64)
→ サブネットアドレスは,212.62.31.64となる
CIDRで表記すれば,212.62.31.64/27 となる
このサブネットに割当てられるIPアドレスは,ホストアドレス部がall 0 か
らall 1の範囲なので
11010100 00111110 00011111 010 00000 (212.62.31.64)
から
11010100 00111110 00011111 010 11111 (212.62.31.95)
212.62.31.64 から 212.62.31.95となる.
このうち,64はネットワーク,95は放送用なので,65から94の30個がホ
スト用に割り当てられる
23
ICMP
(Internet Control Message Protocol)
 ICMP:情報通知や診断を行う
 IPはコネクションレス型通信のためパケット転送を保証しない
 パケットが宛先まで届かない場合の状況を通知する必要がある
 ICMPはIPフレームのプロトコル番号で識別され,
宛先不到達通知
経路変更通知
生存時間カウンタ(TTL)オーバ通知
到達確認メッセージ
...
などの情報を提供する
 ping, traceroute は ICMPを使用している
ping→宛先コンピュータの生存確認を行うコマンド
traceroute→宛先までの経路確認を行うコマンド
24
どうやって通信するか
 あなたのPCは
 IPアドレス
 サブネットマスク
192.168.1.10
(10=00001010)
255.255.255.248 (248=11111000)
とすると,あなたの属するネットワークアドレスはマス
クをかけ算して,192.168.1.8 となる(8=00001000)
 ここで
 192.168.1.12にパケット送りたいとする
 宛先アドレスに自ネットマスクかけてみるとネット
ワークアドレスが一致
 192.168.1.12×255.255.255.248=192.168.1.8 →自ネット!
12=00001100
248=11111000 → 00001000=8
25
さてどうやって通信するか
 こんどは
 192.168.1.20
にパケット送りたいとする
 宛先アドレスに自ネットマスクかけてみると不一致
 192.168.1.20×255.255.255.248=192.168.1.16→ 他ネット!
20=00010100
248=11111000 → 00010000=16
 他ネットなのでデフォルトゲートウェイに投げる
 デフォルトゲートウェイが他ネットワークとの接続を
行う装置=ルータ
26