第 5 回 IP 計算機ネットワーク
IP Internet Protocol Layer 3 ネットワーク層 機能 アドレッシング (IP アドレス ) IP Reachable 到達可能 = インターネット L2ではローカルのみ通信可 ルーティング フラグメント
IP パケット IP パケット IP ヘッダ ペイロード イーサネットヘッダ ペイロード FCS 4 14 1500 イーサネットペイロード 最大長 =MTU Maximum Transfer Unit ( 最大転送単位 )
パケット (packet) PDU (Protocol Data Unit) データの転送単位 一度に送信するひとかたまり IP : 65536 オクテット (64KB) LAN プロトコルに依存 Ethernet: IP パケット =1500 オクテット パケットの最大サイズ Maximum Transfer Unit (MTU) PDU の呼称 L2: フレーム L3: パケット L4: セグメント
Packet Structure of IPv4 32 ビット (4 オクテット ) 20 オクテット ペイロード RFC791 1981/9
6 IP アドレスの構成 32 ビット (IPv4), 128 ビット (IPv6) ネットワークアドレスとホストアドレス ネットワーク部 ホスト部 192. 168. 1. x 192.168.1.1 192.168.1.2 Router 192.168.1.127 192.168.1.3 x.y.z.w a.b.c.d Router 132.112.128.4 132.112.128.1
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.1.0.0 10.0.0.0 10.2.0.0 10.2.1.0 10.2.2.0 1 つのネットワーク 1 つのネットワークアドレス
9 IP アドレスの管理 IANA Internet Assigned Numbers Authority RIR ( レジストリ ) ARIN, RIPE, APNIC, LACNIC, AfriNIC JPNIC プロバイダ 組織 個人 IPv4 アドレスの枯渇 2011 年 2 月 ~4 月レジストリに在庫なし ループバックアドレス 127.0.0.0/8 プライベートアドレス 10.0.0.0/8 172.(16~31).0.0/16 192.168.(0~255).0/24 リンクローカル (APIPA) 169.254.0.0/16
サブネット ネットワーク部を延長 サブネットマスク ホスト部から一部のビットを借りる 192.168.0.0 255.255.255.0 192.168.0.0 255.255.255.192 192.168.64.0 192.168.128.0 192.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.3.2 10.0.3.1 10.0.1.2 10.0.1.1 10.0.2.1 10.0.2.2 172.21.0.0/16 10.0.1.2 172.16.0.0/16 10.0.2.2 172.17.0.0/16 10.0.3.2 10.0.1.0/24 directly connected 0.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 通信 5 宛先 MAC 00:11:22:33:44:15 3 宛先 MAC 00:11:22:33:44:04 宛先 IP:172.18.0.4 1 同一 NW? 172.17.0.3 / 28 送信端末 宛先 IP:172.17.0.4 1 同一 NW? 172.17.0.3 / 255.255.255.248 異 NW 2 172.18.0.4への経路 3 ルーティングテーブル 172.17.0.0/28 : 直接 172.19.0.0/24: 172.17.0.14 default: 172.17.0.13 次ホップルータ 4 172.17.0.13 ARP request Who is 172.17.0.13? ARP reply 00:11:22:33:44:15 0.0.0.0 / 0 (0.0.0.0 / 0.0.0.0) ARP テーブル 00:11:22:33:44:04 172.17.0.4 00:11:22:33:44:15 172.17.0.13 同一 NW 2 ARP request Who is 172.17.0.4? ARP reply 00:11:22:33:44:04
ルーティング 宛先 IP アドレスにより次の転送先ルータ ( 次ホップ ) を決定 10.0.3.2 10.0.3.1 10.0.1.2 10.0.1.1 10.0.2.1 10.0.2.2 172.21.0.0/16 10.0.1.2 172.16.0.0/16 10.0.2.2 172.17.0.0/16 10.0.3.2 10.0.1.0/24 directly connected 0.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: Ethernet MSB 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