5月20日(月)1コマ目
今日、やったこと
- [練習問題]IPアドレス/ネットワークアドレスビット数
- ルーティング
今日のホワイトボード
[練習問題]IPアドレス/ネットワークアドレスビット数
IPアドレスとネットワークアドレスのビット数から
- ネットワークアドレス
- ブロードキャストアドレス
- サブネットマスク
を計算する問題をやりました。
IPアドレスに続く/xxはネットワークアドレスのビット数。IPアドレスの先頭からxxビット目までがネットワークアドレス。xxビット目からあとはホストアドレス。
ネットワークアドレスはホストアドレスのビットをすべて0に。
ブロードキャストアドレスはホストアドレスのビットをすべて1に。
サブネットマスクはネットワークアドレス部のビットは1、ホストアドレス部のビットは0に。
|
| 図 IPアドレス/ネットワークアドレスのビット数 |
IPのルーティングの特徴
送信元で宛先までの経路をすべて決定してから送信するわけではない。
途中のルーター(パケット交換機)でルーティングを繰り返して宛先にたどり着く行き当たりばったりなバケツリレー方式。
|
| 図 ルーティングとパケットのイーサネットヘッダ、IPヘッダ |
イーサネットはルーティングで決まった宛先へパケットを送信する。
| イーサネットヘッダ | 宛先MACアドレス | ルーティングの結果決まる。 よって、ルーティング毎に変わる |
|---|---|---|
| 送信元MACアドレス | ルーティングの結果決まる。 よって、ルーティング毎に変わる |
|
| IPヘッダ | 宛先IPアドレス | 最終的にたどり着きたい宛先 基本的に変わらない |
| 送信元IPアドレス | このパケットの送信元 基本的に変わらない |
ルーティングの例
教科書p.24を参考に。
この例ではパケット(IPヘッダの宛先IPアドレスが192.168.30.11)がルーターAに到着し、ルーターAのIPがルーティングする際のおはなし。
1.ルーティングテーブル1行目チェック
受信パケットのIPヘッダ内の宛先IPアドレス(192.168.30.11)とルーティングテーブル1行目のマスクを使って、
- マスクのビットが1のビットはそのまま
- マスクにビットが0のビットは0にする
を行う(ネットワークアドレスを求める計算と同じ)。
計算結果が1行目の「宛先」と一致しないため、却下。
2.ルーティングテーブル2行目チェック
受信パケットのIPヘッダ内の宛先IPアドレス(192.168.30.11)とルーティングテーブル2行目のマスクを使って、
- マスクのビットが1のビットはそのまま
- マスクにビットが0のビットは0にする
を行う(ネットワークアドレスを求める計算と同じ)。
計算結果が2行目の「宛先」と一致する。
2行目のインタフェース(192.168.30.254)から2行目のゲートウェイ(192.168.30.1)へ送信するようにイーサネットに依頼。
|
| 図 IPのルーティング |
[練習問題]ルーティングテーブルからパケットの経路をたどる
ホストAからホストBへ、使用するルーティングテーブルはケース1。
ホストAでのルーティング
IPヘッダの宛先IPアドレス(192.168.30.10)とホストAのルーティングテーブルを使ってルーティング。
①ホストAのルーティングテーブル1行目をチェック
宛先IPアドレスとルーティングテーブル1行目のマスクで計算。結果と1行目の宛先が一致しないため却下。
|
| 図 ホストAのルーティングテーブル1行目をチェック |
②ホストAのルーティングテーブル2行目をチェック
宛先IPアドレスとルーティングテーブル2行目のマスクで計算。結果と2行目の宛先が一致。
ルーティングテーブル2行目のインタフェース(192.168.10.10)から2行目のゲートウェイ(192.168.10.1)へ送信することになる。
|
| 図 ホストAのルーティングテーブル2行目をチェック |
ホストAのイーサネットはルーター1へ送信する。
2.ルーター1でのルーティング
ルーター1のIPは受信したパケットをルーティング。
①ルーター1のルーティングテーブル1行目をチェック
宛先IPアドレスとルーティングテーブル1行目のマスクで計算。結果と1行目の宛先が一致しないため却下。
|
| 図 ルーター1のルーティングテーブル1行目 |
②ルーター1のルーティングテーブル2行目をチェック
宛先IPアドレスとルーティングテーブル2行目のマスクで計算。結果と2行目の宛先が一致しないため却下。
③ルーター1のルーティングテーブル3行目をチェック
宛先IPアドレスとルーティングテーブル3行目のマスクで計算。結果と3行目の宛先が一致。
ルーティングテーブル3行目のインタフェース(192.168.20.1)から3行目のゲートウェイ(192.168.20.254)へ送信することになる。
|
| 図 ルーター1のルーティングテーブル3行目 |
ルーター1のイーサネットはパケットをルーター2へ送信する。
3.ルーター2でのルーティング
ルーター2のIPは受信したパケットをルーティング。
①ルーター2のルーティングテーブル1行目をチェック
宛先IPアドレスとルーティングテーブル1行目のマスクで計算。結果と1行目の宛先が一致しないため却下。
②ルーター2のルーティングテーブル2行目をチェック
宛先IPアドレスとルーティングテーブル2行目のマスクで計算。結果と2行目の宛先が一致しないため却下。
③ルーター2のルーティングテーブル3行目をチェック
宛先IPアドレスとルーティングテーブル3行目のマスクで計算。結果と3行目の宛先が一致。
ルーティングテーブル3行目のゲートウェイは「リンク上」になっている。これはルーター2に接続されているネットワーク上(リンク上)に宛先があるという意味。直接宛先に送信することになる。
ルーティングテーブル3行目のインタフェース(192.168.30.254)から直接宛先(192.168.30.10)へ送信することになる。
|
| 図 ルーター2のルーティングテーブル3行目をチェック |
ルーター2のイーサネットは192.168.30.10へ直接送信する。
次回は
IPアドレス/ネットワークアドレスのビット数から
- ネットワークアドレス
- ブロードキャストアドレス
- サブネットマスク
を計算するテストをします。







