IPと経路制御 — 世界規模の住所とホップの旅
同じLAN内なら相手に直接渡せますが、地球の裏側へ届けるには話が別。IPは世界中で一意な住所を決め、ルータたちが次の1ホップだけを判断してバケツリレーします。住所の割り方(サブネット)と、経路の選び方(最長一致)、そしてパケットの寿命(TTL)を動かして体感しましょう。
1. IPアドレス — 世界でひとつの住所
IPv4アドレスは 32ビット。ふだんは 192.168.10.37 のように8ビットずつ4つに区切って10進で書きます。この32ビットは前半=ネットワーク部(どのネットワークか)と後半=ホスト部(その中の何番目か)に分かれ、境目はサブネットマスク(/24 のようなプレフィックス長)で決まります。
下でプレフィックス長を動かして、境界がどう動くか・使えるホスト数がどう変わるかを見てください。
2. ホップごとに宛先へ運ぶ — ルータと転送表
ルータは全世界の地図を持っているわけではありません。持っているのは転送表だけ ―「この宛先なら次はこのルータへ渡せ」という次ホップの一覧です。各ルータは受け取ったパケットの宛先を見て次の1台を選び、渡す。これを繰り返すうちにパケットは宛先へ届きます。
宛先ボタンで行き先を選ぶと、パケットが1ホップずつ進みます。各ルータを通るたびにTTL(残り寿命)が1減り、0になるとその場で破棄されます。TTLを小さくして「途中で力尽きる」様子も見てください。
3. 最長一致で経路を選ぶ — ロンゲストプレフィックスマッチ
転送表には 10.0.0.0/8 のようなざっくりした行と 10.0.2.0/24 のような細かい行が混在します。宛先が複数の行に当てはまったら、どれを使う? 答えはいちばん細かく一致した行(プレフィックスが最長の行)。より具体的な指示を優先するわけです。
宛先ボタンを切り替えて、どの行が一致し、どれが勝つかを見てください。/0(デフォルトルート)は「どこにも当てはまらない全部」の受け皿です。
4. TTL — パケットに寿命を与える
もし転送表が誤って輪になっていたら? パケットは A→B→C→A→… と永遠にぐるぐる回り、ネットワークを溢れさせてしまいます。これを防ぐのがTTL(Time To Live)。ルータを通るたびに1ずつ減り、0になったら問答無用で破棄。ループが起きても、いつか必ず止まります。
下は経路がループしてしまった網。TTLを変えて、何ホップで救出されるか見てください。
5. まとめ — 住所と次の一歩
- IPアドレス:32ビットをネットワーク部|ホスト部に割り、境目はサブネットマスク(プレフィックス長)で決まる。
- ホップ・バイ・ホップ転送:各ルータは全経路を知らず、次ホップだけ決めてリレーする。
- 最長一致:宛先が複数行に該当したら、いちばん具体的(長い)行を選ぶ。/0 は受け皿。
- TTL:ホップごとに減る寿命。ループや設定ミスでも、いつか必ずパケットが消える安全弁。