ルータとは、2つ以上の異なるネットワーク間でデータを中継する機器のことです。ネットワーク間で通信を中継する処理のことをルーティングと言います。最初のルータはコンピュータ間を接続し異なる通信プロトコルの相互接続を行うためマルチプロトコルルータと言われていました。インターネットの浸透と発展に伴って通信プロトコルにルーティングにIPが広く使われるようになってからは通信事業者のバックボーンネットワークがルータを用いたIP網によって再構築されるようになり、広範囲に使われるようになりました。現在では、膨大な数のネットワーク セグメントが相互接続することで成り立っているインターネットとって、必要不可欠な要素になっています。
ルータの機能は、7層で構成されるOSI参照モデルの中では第3層であるネットワーク レイヤで動作し、IPパケットの通信経路を決定する重要な役割を担っています。
ルータは最適な経路を決定するため、自分自身が持つルーティング テーブルを参照します。ルーティング テーブルは、ルータが受信したパケットをどこへ転送するべきかを決定するための、宛先ルートの一覧を保持しています。受信したパケットの宛先アドレスが、いずれかの宛先ルートに該当した場合には、ルータはその宛先ルートに対してパケットを送り出します。このような処理を複数のルータが「バケツ リレー」のように実行することで、異なるネットワーク セグメントに接続されたホストにまで、パケットが届くわけです。
パケットの宛先アドレスが、ルーティング テーブル上の宛先ルートのいずれにも該当しない場合には、ルータはそのパケットを破棄し、宛先到達不能メッセージをICMPパケットで送信元へと通知します。該当する宛先ルートが複数存在する場合には、その中から最適と判断される宛先ルートへとパケットを送り出します。
ルーティング テーブルへの宛先ルートの登録方法としては、管理者(人間)が設定を行う「スタティック ルーティング」と、ルータ自身が周囲のルータから情報を収集して動的に登録する「ダイナミック ルーティング」があります。ダイナミック ルーティングでは、ルータ間で情報を交換するために、ルーティング プロトコルと呼ばれるプロトコルが使用されます。