ルーター2台
あて先を知らなかったら?
ほかのルーターに任せるデフォルト・ルート
次はルーター2台がつながった構成だ。ここで初めて自分以外のルーターが登場し,「ルーターのルーティング・テーブルにあて先が登録されていなかったらどうなる?」という問いの答えがわかる。それは「デフォルト・ルート」というキーワードを理解することにほかならない。
すべての経路を登録する?
ルーティング・テーブルに登録されていないあて先のパケットをルーターが受信したらどうなるか——。結論から言うと,ルーターは受信パケットをどこにも転送しないで,その場に捨て,送信元にパケットを破棄したことを通知する。すべてのポートへ転送していたら,ネットワークがあて先不明パケットでいっぱいになってしまうからだ。
では,ルーティング・テーブルには,この世の中にあるすべてのあて先情報を登録しておかなければならないかというと,そんなことはない。ルーティング・テーブルを効率よく記述する方法があるのだ。それが「デフォルト・ルート」という考え方である。
「0.0.0.0」という特別なアドレス
図4 自分が知らないあて先はほかのルーターに任せる 自分の知らないサブネットあてのパケットが届いたら,ルーターはほかのルーターにそのパケットの転送を任せる。これが,「デフォルト・ルート」だ。 |
このとき,ルーターAのルーティング・テーブルには,ルーターが1台のときと同じように,サブネットA,B,Cそれぞれに対する出力先ポートが登録されている。したがって,サブネットA,B,CあてのパケットはルーターA自身で転送先を判断できる。
しかし,ルーターAはそれ以外のサブネットへの経路は知らない。そこで,サブネットA,B,C以外は,すべてルーターBの先にあると考え,サブネットA,B,Cあて以外のパケットが届いたら,ルーターBに転送する。そのあとの経路選びを,ルーターBに任せるのである。これが,「デフォルト・ルート」だ。
もちろん,デフォルト・ルートもルーティング・テーブルに記述される。デフォルト・ルートが書かれた行は,ほかとは少し違い,DestinationとMaskの項目が,いずれも「0.0.0.0」になる(図4[拡大表示]の右側)。これは,「自分の知らないすべてのあて先」という意味である。
また,この行のGatewayの項目には,ルーターBのIPアドレス(192.168. 2.100)が書かれている。これは,ルーターAが受信パケットをどのルーターへ転送すればよいかを示した情報である。つまり,この1行で「自分が知らないあて先のパケットは,ルーターBへ転送する」と表現している。
なお,デフォルト・ルートに指定されたルーターは,「デフォルト・ゲートウエイ」と呼ばれる。
ネットはデフォルト・ルートの連鎖
企業のネットワークに当てはめて,デフォルト・ルートの利用例を考えてみよう。
図5 上位のルーターほど持っている経路の情報が多い 自分の知らないサブネットあてのパケットが届いたら,上位のルーターに任せていく。こうすることで,ルーティング・テーブルに記録する情報を少なくできる。ただし,最上位のルーターはすべての経路を知っている必要がある。 |
このとき,デフォルト・ルートの考え方を取り入れると,それぞれのルーターのルーティング・テーブルを簡略化できる。具体的には,フロア用ルーターのデフォルト・ルートを上位のビル用ルーターに指定,ビル用ルーターは全社ルーターをデフォルト・ルートに指定する。
こうすれば,フロア用ルーターは,そのフロアにあるサブネットあての経路だけを知っていればよい。そのほかのあて先(ほかのフロアや別のビル)は,ビル用ルーターに任せられるからだ。同様に,ビル用ルーターはビル内の経路だけが登録され,別のビルあてのパケットは全社ルーターに任せる。
ただし,全社ルーターは一番上位に位置するので,頼る相手がいない。このため,デフォルト・ルートは指定できず,企業内のすべての情報を登録しなければならない。
「自分の知らない経路は他人に任せる」という一見無責任な考え方が,ルーターの世界では重要なのである。