PR

那須野 洋一 富士通ネットワークインテグレーション統括部テクニカルセンター長
坂本 誠 富士通ネットワークインテグレーション統括部テクニカルセンター

ルーターの役割はIPパケットの中継

 さて,いよいよ本題に入ってルーターの働きを見ていこう。

 ルーターの基本的な役割は,あるネットワーク(例えばLANポート)からデータ(IPパケット)を受け取り,そのデータを適切なネットワーク(例えば別のLANポート)へ転送する「パケット中継」である。ではルーターは,実際はどのような仕組みでデータを中継しているのだろうか。

図2 IPパケットの中継がルーターの役割
ルーターの具体的な動作は,(1)入ってきたIPパケットを読み込む,(2)IPパケット・ヘッダーの中のネットワーク番号を算出する,(3)ルーティング・テーブルを照合してIPパケットの出力先を決める,(4)目的のポートにIPパケットを送出する--の四つである。
 ルーターの中継処理は次のような流れで進められる。(1)IPパケットを受信する,(2)IPパケットに書き込まれている「あて先IPアドレス」を読みとり,それを基に「あて先ネットワーク番号」を算出する,(3)「ルーティング・テーブル」と呼ぶ対照表にあて先ネットワーク番号を照らし合わせて,パケットを送出するネットワーク・ポートを見つける,(4)見つけたネットワーク・ポートにIPパケットを送出する--という流れである(図2[拡大表示])。

 まずルーターは受信したデータ列の中からIPパケットを取り出す。たとえば,イーサネットと接続している場合は,イーサネット・フレームに格納されているIPパケットを取り出す。IPパケットは,「ヘッダー」と呼ばれる制御情報部と「ペイロード」と呼ばれるデータ部で構成されている。ルーターが中継処理で必要とする「あて先IPアドレス」はヘッダー部の中に書き込まれている。ネットワーク番号はIPアドレスの一部として表現されているが,どうやってIPアドレスからネットワーク番号を求めるかは,少し後で説明する。

 ネットワーク番号を照らし合わせるルーティング・テーブルは,ルーターが中継処理を実行するためになくてはならない対照表である。ルーティング・テーブルには,あるネットワーク番号あてのパケットを中継するには,どのネットワーク・ポートへそのパケットを送出すればいいのかが書かれてある。このルーティング・テーブルにより,ルーターは,受け取ったパケットを適切なネットワーク・ポートに送り出すことができるのだ。

ルーティング・テーブルで行き先を判断する

 ではここから,実際にルーターでネットワークを接続する操作を疑似体験しながら学習していこう。ルーターをお持ちの読者は少ないと思うが,ご心配なく。設定方法を説明するのは,ルーターを身近に感じてもらうためである。Windows98/NTでTCP/IPを使えるようにする作業のように簡単なものばかりなので,しばらくお付き合い願いたい。

図3 ルーティング・テーブルを設定してネットワークをつなげる
ルーティング・テーブルは,ネットワーク番号と出力先ポートの対応表。この二つを設定してはじめてルーターは正しくパケットを中継できる。
 まず,ルーターで二つのネットワークをつなぐケースで考えてみよう(図3[拡大表示])。紹介してきたように,ルーターは,ネットワーク番号から出力先ポートを判断する。この場合は,「ポート0にネットワークA」が,「ポート1にネットワークB」が接続されている。さっそく,この情報をルーターに入力し,ルーティング・テーブルを作ってみる。ここでは,ネットワークAのネットワーク番号を「192.168.1.0」,ネットワークBのネットワーク番号を「192.168.1.32」とする。米シスコ・システムズのルーター「Ciscoシリーズ」で用いられる入力コマンドを使えば,

interface ethernet 0
ip address 192.168.1.1 255.255.255.224
interface ethernet 1
ip address 192.168.1.33 255.255.255.224

という4行を入力すればよい。これでルーティング・テーブルが作成された。

 簡単にコマンドの意味を解説しておこう。1行目の「interface ethernet 0」は,0番のイーサネット・ポートに対して操作するという意味。次の「ip address 192.168.1.1 255.255.255.224」は,そのイーサネット・ポートに「193.168.1.1」というIPアドレスを設定し,そのうちネットワーク番号がどの部分なのかを表す情報が「255.255.255.224」であることを意味する。このネットワーク番号の部分を表す情報を「サブネット・マスク」と呼ぶ。Windows98/NTでIPアドレスを設定するときにも必要とされるので,見たことがある読者は多いだろう。サブネット・マスクは,「ネット・マスク」や「アドレス・マスク」と呼ばれる場合もある。