ルーター1台
経路選択の基準はなに?
どんなルーターにもあるルーティング・テーブル
まずはルーターが1台あったとき,そのルーターがどんな仕事をするかということを追っていこう。ここを追っていけば,ルーターが適切な経路を選ぶ判断材料にしている「ルーティング・テーブル」がマスターできる。
図2 ルーターはルーティング・テーブルに従って適切なポートへパケットを転送する ルーティング・テーブルには,あて先サブネットと転送先ポートが対になって記述されている。これを基にルーターは適切なポートへパケットを転送する。 |
情報はルーターのメモリーにある
ルーターにはポートが三つあり,それぞれのポートに,A,B,Cという別々のサブネットがつながっている(図2[拡大表示])。サブネットとは,ハブやLANスイッチで構成されるLANのことで,ルーターを経由しないで直接通信できる範囲である。このとき,サブネットAのパソコンがサブネットBのサーバーあてにパケットを送信した。すると,このパケットはルーターのサブネットA側のポート(図ではポート1)に届く。
ルーターは,この受信パケットを適切なサブネット,つまりサーバーがいるサブネットB側のポート2へ転送すれば,パソコンから送出されたパケットがサーバーに届く。でもルーターは,ポート2へ転送すればよいと,どうして判断できるのか——。実は,その判断の材料にしているのが,ルーティング・テーブルである。
ルーティング・テーブルとは,あて先サブネットと出力先ポートの対応表のようなもので,ルーターのメモリーにあらかじめ書き込まれている。どのように情報が書き込まれるかは,後半の実際編で詳しく見ていくので,ここでは単に情報が書き込まれていることとして話を進めよう。
このルーティング・テーブルには,図2[拡大表示]のように「サブネットAあてはポート1,サブネットBあてはポート2…」というように,あて先サブネットに対応する出力ポートが書かれている。ルーターはこのルーティング・テーブルを参照して,適切なポートへ受信パケットを転送するのである。
実際はIPアドレスで表現
図2[拡大表示]ではルーティング・テーブルを簡略化して表したが,実際にルーターが持っているルーティング・テーブルは少し違う。IPアドレスの形で書かれているのだ。そこで,今度は実際のルーティング・テーブルを確認していくことにしよう。
図3 実際のルーティング・テーブルを見てみよう あて先ネットワーク・アドレスとサブネット・マスクで,あて先サブネットがわかるようになっている。また,インタフェースで,パケットの出力先ポートがわかる。 |
このテーブルを見ると,Destinationデスティネーション,Maskマスク,Gatewayゲートウエイ,Interfaceインタフェース,Metricメトリックという文字が1行目に並んでいる。この5項目の情報で一つのサブネットに対する転送先を表している。ルーター1台のときは,このなかのDestination,Mask,Interfaceの三つの項目に着目しよう。
IPアドレスなどが書かれた行は3行あるが,2行目がサブネットBあての情報である。DestinationではサブネットBのネットワーク・アドレスである192.168.2.0,Maskにはそのサブネット・マスクである255.255.255.0が書き込まれている。この二つの情報で,サブネットBにあるパソコンのIPアドレスは192.168.2.0~192.168.2.255までの範囲だとわかる。サブネットの計算方法を理解していないと,ちょっと実感しにくいかもしれないが,その方法まで説明していると話が大きくずれてしまう。ここでは,DestinationとMaskでサブネットの範囲がわかるとだけ理解しておこう。
そして,ルーティング・テーブル中の4項目にあるInterfaceがパケットの出力先ポートの情報である。ルーターのポート2には「eth2」という名前が付いているので,Interfaceの項目にはeth2という文字列が書き込まれている。
これで,あて先サブネットの情報と出力先ポートの情報がそろった。ルーターは,受信したパケットのあて先IPアドレスを見て,そのアドレスとルーティング・テーブルを照合する。すると,あて先はサブネットBだとわかるので,そこへ転送するための出力先であるeth2からパケットを送出する。
ルーティングとフォワーディング
ちなみに,ルーティング技術やルーターを詳しく説明した解説書では,ルーティングという用語以外に,フォワーディングという用語も出てくる。厳密にこれらを区別すると,ルーティングとは「経路を選ぶこと」である。一方のフォワーディングとは,ルーティングによって選んだ適切な経路へ「パケットを転送する」という意味である。つまり,ルーターはルーティングだけでなく,フォワーディングも行う装置というわけだ。