内容

はじめに

前提条件

要件

使用するコンポーネント

表記法

ICMP のリダイレクト メッセージの動作

ICMP リダイレクトはいつ送信されるか

関連情報

はじめに

Internet Control Message Protocol（ICMP）は、送信元にパケット ルーティング中に遭遇したエラーを通知し、トラフィックを制御するために使用されます。このドキュメントでは、ICMP リダイレクトと、リダイレクトがネットワーク内でいつ発生するかについて説明します。

前提条件

要件

IP プロトコル スイートの知識が必要です。

使用するコンポーネント

Cisco ルータおよび Cisco IOS® ソフトウェア リリースの全シリーズでサポートされています。

表記法

表記法の詳細については、『シスコ テクニカル ティップスの表記法』を参照してください。

ICMP のリダイレクト メッセージの動作

ICMP リダイレクト メッセージは、データ リンク上のホストに、特定の送信先へのより優れたルートが存在することを通知するために、ルータによって使用されます。

たとえば、2 台のルータ R1 と R2 はホスト H と同じイーサネット セグメントに接続されています。ホスト H のデフォルト ゲートウェイは、ルータ R1 を使用するように設定されています。ホスト H は、リモート オフィスのホスト 10.1.1.1 を宛先とするパケットをルータ R1 に送信します。ルータ R1 は、ルーティング テーブルを参照した後、ホスト 10.1.1.1 に到達するネクストホップがルータ R2 であることを検出します。ここで、ルータ R1 はパケットを受信したのと同じイーサネット インターフェイスにパケットを転送する必要があります。ルータ R1 はルータ R2 にパケットを転送し、ホスト H に ICMP のリダイレクト メッセージを送信します。このメッセージで、ホスト 10.1.1.1 に到達するための最良ルートがルータ R2 を経由することであることをホストに通知します。これで、ホスト H はホスト 10.1.1.1 宛てのすべての後続パケットをルータ R2 に転送します。

次のデバッグ メッセージは、ネットワーク図に示すように、ルータ R1 が ICMP リダイレクト メッセージをホスト H（172.16.1.1）に送信していることを示しています。

R1#

debug ip icmp

ICMP packet debugging is on

*Mar 18 06:28:54: ICMP:redirect sent to 172.16.1.1 for dest 10.1.1.1, use gw 172.16.1.200

R1#

ルータ R1（172.16.1.100）は、送信先 10.1.1.1 へ到達するためのゲートウェイとしてルータ R2（172.16.200）を使用するように通知するリダイレクトを、ホスト H（172.16.1.1）に送信します。

ICMP リダイレクトはいつ送信されるか

Cisco ルータは、次の条件すべてが満たされると ICMP リダイレクトを送信します。

- パケットがルータに着信するインターフェイスと、パケットが送信されるインターフェイスが同じである。

- 送信元 IP アドレスのサブネット/ネットワークと、ルーティング対象パケットのネクストホップ IP アドレスのサブネット/ネットワークとが同じである。

- データグラムがソース ルートではない。

- カーネルがリダイレクトを送信するように設定されている。（デフォルトでは、Cisco ルータは ICMP リダイレクトを送信します。インターフェイス サブコマンド no ip redirects を使って、ICMP リダイレクトを無効にできます）。

注：インターフェイスにHot Standby Router Protocol(HSRP)が設定されている場合、ICMPリダイレクトはデフォルトで無効になっています。Cisco IOS ソフトウェア リリース 12.1(3) T 以降では、ICMP リダイレクトは HSRP が設定されたインターフェイスでイネーブルにすることができます。詳細については、「ホットスタンバイ ルータ プロトコル（HSRP）の特長と機能」の「ICMP リダイレクトのための HSRP サポート」を参照してください。

ルータの 1 つのインターフェイスに、2 つの IP アドレスが設定されているとします。

interface ethernet 0

ip address 171.68.179.1 255.255.255.0

ip address 171.68.254.1 255.255.255.0 secondary

ルータは、サブネット 171.68.179.0 のホストを発信元として、サブネット 171.68.254.0 のホストを送信先とするパケットを受信した場合、ICMP リダイレクトを送信しません。最初の条件だけで、2 番目の条件が満たされていないからです。

ルータがリダイレクトを送信する元のパケットは、正しい宛先にルーティングされます。

関連情報

- HSRP による ICMP リダイレクトのサポート

- Field Notice:*Expired* FN23074:IOSが誤ったICMPリダイレクトを受け入れる

- IP ルーテッド プロトコル テクノロジーに関するサポート ページ

- テクニカル サポートとドキュメント - Cisco Systems