経路制御
- ルーティング (routing)
- 経路制御表
- ダイナミックルーティング (dynamic:動的)
- スタティックルーティング (static:静的)
経路制御表
- 宛先 vs 次のルータ の表
- デフォルトルート (Default Route)
- ホストルート (Host Route)
- ループバック
- 127.0.0.1/32 localhost (自分自身)
- あるハッカーの顛末 という笑い話
UNIX の経路制御表
IPパケットの分割・再構築
- MTU (Maximum Transfer Unit) の違い
- FDDI (4352 octet) Ethernet (1500 octet) PPPoE (1492 octet)
- 大 -> 小のところで、パケットを分割する
- 分割されたパケットは、分割されたまま届くので、再構築してから上位層へ渡す
- Path MTU Discovery
- 分割するな!というパケットを送る
- エラーが返ったら、長過ぎる
ARP
- Address Resolution Protocol
- IPアドレスと MACアドレスの対応
ARP
- ARP要求
- Source IP, Source MAC, Target IP をブロードキャスト
- ブロードキャスト: 宛先MAC=ff:ff:ff:ff:ff:ff
- ARP応答
- ARP要求で空欄であった Target MAC を記入して、Source MAC へユニキャスト応答
- Ethernetフレームでタイプは
0806
ARP パケットフォーマット
RARP
- RARP要求
- RARP応答
- RARPサーバが必要
- 空欄であった、Source IP を記入して応答
- Ethernetフレームでタイプは
0835
ARP/RARP
- ARP ... あなた、どこにいるの?
- RARP ... 私は誰?
IPヘッダ
IPヘッダ説明(1)
- Version ... バージョン = 4
- IHL ... ヘッダ長
- オプションが無ければ 5 x 32 bit = 160 bit = 20 octet
- TOS ... サービスタイプ
- Total Length ... パケット長
IPヘッダ説明(2)
- ID ... Identification
- Flags ... パケット分割について
- Fragment Offset ... 分割パケットのオフセット (どこから始まるか)
IPヘッダ説明(3)
- TTL ... Time To Live (1ホップ毎に1減)
- Protocol ... ペイロードデータのプロトコル
- Header Checksum
IPヘッダ説明(4)
- Source Address ... 送信元IPアドレス
- Destination Address ... 宛先IPアドレス
- Option/Padding ... あれば追加
ICMP
- Internet Control Message Protocol
- Protocol = 1
- IPパケット中継などで発生したエラーを通知する
- 相手ホストの存在を確認する
- etc.
ICMP のフォーマット
|<-Type(8bit)->|<-Code(8bit)->|<--Checksum(16bit)-->|
|<--Data...
- Type
- Code (Type によって定められている)
主な ICMP メッセージ
- ICMP到達不能メッセージ (Type 3)
- ICMPリダイレクトメッセージ (Type 5)
- ICMP時間超過メッセージ (Type 11)
- traceroute に利用 (TTL を 1 から順に大きくしてパケットを送ると、途中で time exceeded が返ってくる)
- ICMPエコーメッセージ (Type 0,8)
本日の問題
- 同じネットワーク上で、通信相手のIPアドレスからMACアドレスを知るために使われるのは _____ _______ Protocol ( ___ ) である。