計算機ネットワーク - info.kochi-tech.ac.jp · ip internet protocol layer 3...

35
5IP 計算機ネットワーク

Upload: others

Post on 04-Sep-2019

0 views

Category:

Documents


0 download

TRANSCRIPT

第5回 IP

計算機ネットワーク

IP Internet Protocol

Layer 3 ・ネットワーク層

機能

アドレッシング (IPアドレス) IP Reachable 到達可能 = インターネット

L2ではローカルのみ通信可

ルーティング

フラグメント

IPパケット

ペイロードイーサネット

ヘッダ

イーサネットペイロード

最大長=MTU

ペイロードIP

ヘッダ

IPパケット

Maximum Transfer Unit (最大転送単位)150014

FCS

4

パケット(packet)

PDU (Protocol Data Unit) データの転送単位

一度に送信するひとかたまり

IP : 65536 オクテット (64KB) LANプロトコルに依存

Ethernet: IP パケット=1500オクテット

パケットの最大サイズMaximum Transfer Unit (MTU)

PDUの呼称L2: フレームL3: パケットL4: セグメント

Packet Structure of IPv4

RFC791 1981/9

32ビット(4オクテット)

20オクテット

ペイロード

IPアドレスの構成

32ビット(IPv4), 128ビット(IPv6) ネットワークアドレスとホストアドレス

ネットワーク部 ホスト部

192 . 168 . 1 . x192.168.1.1 192.168.1.2

192.168.1.3

132.112.128.1

6

192.168.1.127

132.112.128.4Router

Router

x.y.z.w

a.b.c.d

IPアドレス体系

ネットワーク部+ホスト部

8ビット+24ビット (Class A) 16ビット+16ビット (Class B) 24ビット+8ビット (Class C)

ホスト部

All 0 -> ネットワークアドレス

All 1 -> ブロードキャストアドレス

IPアドレスのクラス

ネットワーク部+ホスト部 Class A (0xxxx….xxx) Class B (10xxx….xxx) Class C (110xx….xxx) Class D (1110x….xxx) Class E (1111x….xxx)

10.0.0.0

10.1.0.0

10.2.0.0

10.2.1.010.2.2.0

1つのネットワーク⇒ 1つのネットワークアドレス

IPアドレスの管理

IANA Internet Assigned Numbers Authority

RIR (レジストリ) ARIN, RIPE, APNIC, LACNIC, AfriNIC

JPNIC⇒プロバイダ・組織⇒個人

9

ループバックアドレス127.0.0.0/8

プライベートアドレス10.0.0.0/8172.(16~31).0.0/16192.168.(0~255).0/24

リンクローカル (APIPA)169.254.0.0/16

IPv4 アドレスの枯渇2011年2月~4月レジストリに在庫なし

サブネット

ネットワーク部を延長

サブネットマスク

ホスト部から一部のビットを借りる

192.168.0.0 255.255.255.0192.168.0.0 255.255.255.192192.168.64.0192.168.128.0192.168.192.0

VLSM

Variable Length Subnet Mask サブネットの切り方に自由度を持たす

CIDR

Classless Inter-Domain Routing スーパーネット化

複数のネットワークを集約(アグリゲーション aggregation)

ルーティングテーブルの縮約

ブロードキャストアドレス

ホスト部+ネットワーク部

ネットワークAddr + All 1 Directed broadcast

All 1 + All 1 ( 255.255.255.255) Limited broadcast

ネットワークAddr + サブネットAddr + All1 Broadcast to specified subet

ネットワークAddr + All 1 + All 1 Broadcast to all subnet

ルーティング

宛先IPアドレスにより次の転送先ルータ(次ホップ)を決定

10.0.1.1 10.0.2.1

10.0.3.1

10.0.1.2 10.0.2.2

10.0.3.2

172.21.0.0/16 10.0.1.2172.16.0.0/16 10.0.2.2172.17.0.0/16 10.0.3.210.0.1.0/24 directly connected0.0.0.0/0 10.0.1.2

同一ネットワーク内通信

アドレス解決

ARP (Address Resolution Protocol) IPアドレス→MACアドレス

ARP: イーサネットフレーム

ARP Request (Src->broadcast) 送信元IP・送信元MAC・宛先IP 宛先MAC:FF:FF:FF:FF:FF:FF

ARP Reply (Dst -> Src) 送信元IP・MAC・宛先IP・MAC

ARPテーブル

MACアドレスとIPアドレスの組

無通信300秒で破棄

コマンド – arp -a (arp -na) arp -s arp -d

ルーティングテーブル

宛先IPネットワークアドレスと次ホップIPアドレスの組

必須情報:宛先ネットワークアドレス、ネットマスク(プレフィックス)、次ホップルータ(ゲートウェイ)

インターフェース名、MACアドレス名… netstat -r (netstat -rn)

IPパケット

Packet Format バージョン(4)-HLEN(4)-TOS(8)-LEN(16)

バージョン 0100 HLEN:32ビット単位

LEN バイト単位

ID(16)-flag(3)-flagment off(13) ID:パケット識別番号

MF, DF, flagment offset (バイト単位)

IPパケット

Packet Format TTL(8)-Protocol(8)-HChk(16)

TTL 最大255ホップ

Protocol (1:icmp, 6:TCP, 17:UDP etc.) /etc/protocols

IPパケット

Packet Format Src (32) Dst (32) IP Opt (オプション) - Padding

SR, RR, IPSec, etc. Data

最大長64KB

IP通信

送信端末

宛先IP:172.17.0.4

172.17.0.3 / 255.255.255.248同一NW?

同一NW

ARP requestWho is 172.17.0.4?

ARP reply00:11:22:33:44:04

宛先MAC 00:11:22:33:44:04

宛先IP:172.18.0.4

172.17.0.3 / 28同一NW?

異NW

172.18.0.4への経路

ルーティングテーブル172.17.0.0/28 :直接172.19.0.0/24: 172.17.0.14default: 172.17.0.13

0.0.0.0 / 0(0.0.0.0 / 0.0.0.0)次ホップルータ

172.17.0.13 ARP requestWho is 172.17.0.13?

ARP reply00:11:22:33:44:15

宛先MAC 00:11:22:33:44:15

③④

ARPテーブル00:11:22:33:44:04 172.17.0.400:11:22:33:44:15 172.17.0.13

ルーティング

宛先IPアドレスにより次の転送先ルータ(次ホップ)を決定

10.0.1.1 10.0.2.1

10.0.3.1

10.0.1.2 10.0.2.2

10.0.3.2

172.21.0.0/16 10.0.1.2172.16.0.0/16 10.0.2.2172.17.0.0/16 10.0.3.210.0.1.0/24 directly connected0.0.0.0/0 10.0.1.2

同一ネットワーク内通信

アドレス解決

ARP (Address Resolution Protocol) IPアドレス→MACアドレス

ARP: イーサネットフレーム

ARP Request (Src->broadcast) 送信元IP・送信元MAC・宛先IP 宛先MAC:FF:FF:FF:FF:FF:FF

ARP Reply (Dst -> Src) 送信元IP・MAC・宛先IP・MAC

ARPテーブル

MACアドレスとIPアドレスの組

無通信300秒で破棄

コマンド – arp -a (arp -na) arp -s arp -d

ルーティングテーブル

宛先IPネットワークアドレスと次ホップIPアドレスの組

必須情報:宛先ネットワークアドレス、ネットマスク(プレフィックス)、次ホップルータ(ゲートウェイ)

インターフェース名、MACアドレス名… netstat -r (netstat -rn)

IPパケット

Packet Format バージョン(4)-HLEN(4)-TOS(8)-LEN(16)

バージョン 0100 HLEN:32ビット単位

LEN バイト単位

ID(16)-flag(3)-flagment off(13) ID:パケット識別番号

MF, DF, flagment offset (バイト単位)

IPパケット

Packet Format TTL(8)-Protocol(8)-HChk(16)

TTL 最大255ホップ

Protocol (1:icmp, 6:TCP, 17:UDP etc.) /etc/protocols

IPパケット

Packet Format Src (32) Dst (32) IP Opt (オプション) - Padding

SR, RR, IPSec, etc. Data

最大長64KB

Packet Structure

RFC791 1981/9

TOS

fragment

Order

ネットワークバイトオーダ

⇔ホストバイトオーダ

バイトオーダ1 2 3 4 (ビッグエンディアン)4 3 2 1 (リトルエンディアン)

ビットオーダLSB First: EthernetMSB First: FDDI

ICMP

Internet Control Message Protocol 第3層 IPでのエラー報告、制御メッセージ

Type 8bit, Code 8bit, Checksum 16bit

ICMP

Message Type 0:Echo Reply 3:Destination Unreachable 4:Source Quench 5:Redirect 8:Echo Request 9:Router Advertisement 10:Router Selection 11:Time Exceeded 12:Parameter 13:Time Stamp Request 14:Time Stamp Reply 15:,16:, 17:,18:

Unreachable

コード 0: Network 1: Host 2: Protocol 3: Port 4: DF 5: Source Route Failure 6: Network Unknown 7: Host Unknown 8: Isolated 9: Network Prohibited 10: Host Prohibited 13: Prohibited by filtering