ルータの役割

ルータは複数のネットワークを相互接続し、ネットワーク間のデータ転送を行うためのネットワーク機器です。企業の社内ネットワークは、部署ごとなどで複数のネットワークとして構成しています。それら複数のネットワークを相互接続するためにルータを利用しています。企業の社内ネットワークにかぎらず、インターネットにも膨大な数のネットワークがあり、それらがルータによって相互接続されています。

そして、ルータは相互接続したネットワーク間のデータの転送を行います。ルータによるネットワーク間のデータ転送を「ルーティング」と呼びます。また、ルータにとってのデータはIPパケットです。IPはOSI参照モデルではネットワーク層のプロトコルです。IPパケットを転送するネットワーク機器なので、ルータはOSI参照モデルのネットワーク層レベルのネットワーク機器です。

ネットワークの接続はIPアドレスを設定すること

「ネットワークに接続するということはIPアドレスを設定する」ということです。ルータが複数のネットワークを接続するのも、ルータのインタフェースに対してIPアドレスを設定することになります。ルータがネットワークを相互接続するには、ルータのインタフェースの物理的な配線に加えて、インタフェースにIPアドレスを設定します。たとえば、ルータのインタフェース1の物理的な配線を行なってそのインタフェースが有効になり、IPアドレス192.168.1.254/24を設定すると、ルータのインタフェース1は192.168.1.0/24のネットワークに接続していることになります。ルータには複数のインタフェースが備わっていて、それぞれのインタフェースの物理的な配線とIPアドレスの設定を行うことで、ルータは複数のネットワークを相互接続することになります。

ポイント

ルータのインタフェースにIPアドレスを設定すると、ネットワークをつなぐことになる

図のR1には3つのインタフェースがあります。インタフェース1の物理的な配線を行なってIPアドレス192.168.1.254/24を設定すると、ルータ1のインタフェース1はネットワーク1の192.168.1.0/24に接続しています。同様にインタフェース2とインタフェース3にもIPアドレスを設定することで、R1はネットワーク1、ネットワーク2、ネットワーク3を相互接続しています。

ネットワーク3にはR1だけではなくR2も接続されています。R2の3つのインタフェースにもR1と同様に物理的な配線をしてIPアドレスを設定することで、R2はネットワーク3、ネットワーク4、ネットワーク5を相互接続しています。


図 ルータでのネットワークの相互接続

ルーティングの概要

ルータはIPアドレスに基づいてデータ(IPパケット)を適切なネットワークへ転送します。ただし、そのためにはルータにはあらかじめルーティングテーブルに転送先のネットワークの情報が登録されている必要があります。ルーティングするためには、まず、ルータのルーティングテーブルを作成することが大前提です。

ルータにIPパケットがやってくると、IPヘッダに記されている宛先IPアドレスとルーティングテーブルから次に転送するべきルータ(ネクストホップ)を判断して、IPパケットを転送します。ルーティングテーブルに登録されていないネットワーク宛てのIPパケットは転送することができずに破棄されます。ルーティングテーブルにネットワークの情報を登録するということは、ルーティングを考える上でとても重要なことです。この点がレイヤ2スイッチの動作と大きく異なります。レイヤ2スイッチは「わからなければとりあえずフラッディング」という動作です。一方、ルータは「わからなければ破棄する」という動作です。

ルーティングでとても重要なこと

ルータは知らないネットワークにはパケットを転送できない

レイヤ2スイッチとルータのデータ転送の動作の違いは、転送範囲の違いによるものと考えるとよいでしょう。レイヤ2スイッチの転送範囲は同じネットワーク内だけです。とりあえずフラッディングしてもそれほど大きな影響は出ません。一方、ルータはネットワーク間のデータ転送です。もし、ルータが宛先がわからないけどとりあえず転送するようなことをしてしまうと、不要なデータ転送が多発する可能性が大きくなってしまいます。

以下の図のR1とR2はルーティングテーブルにIPパケットを転送したいすべてのネットワークの情報を登録しておく必要があります。この図では、ネットワーク1(192.168.1.0/24)~ネットワーク5(192.168.5.0/24)の5つのネットワークがあります。そして、ホスト(192.168.1.100)からサーバ(192.168.5.100)へデータを転送するときには、宛先IPアドレスは192.168.5.100が指定されます。R1は宛先IPアドレスに一致するルーティングテーブル上のネットワークの情報を検索します。すると、ネクストホップがR2となっているのでR2へIPパケットを転送します。「ホップ」とは多くの場合、ルータを意味していて、ネクストホップは次に転送するべきルータです。

続いて、R2でもIPパケットに記されている宛先IPアドレスとルーティングテーブルを見て、直接接続されているネットワーク5(192.168.5.0/24)上のサーバへとIPパケットを転送します。

図 ルーティングの概要

この図では、一方向の場合しか表していませんが、通信は原則として双方向ということもあらためてきちんと思い出しておいてください。サーバからクライアントPCにリプライを返すためには、経路上のルータで正しくルーティングできるようになっていなければいけません。

関連記事

ルーティングテーブルの詳細について、以下の記事で解説しています。

ルーティングの動作について、以下の記事で解説しています。

IPルーティングのキホン