IRDP (ICMP Router Discovery Protocol)はICMPによってデフォルトゲートウェイを通知するプロトコルです。なお、HSRP, VRRPなどを採用するのが一般的であり、実践でIRDPは殆ど登場しません。
概要
IRDPはICMPの拡張機能で、ルーティングが有効ではないホストに対してデフォルトルートを通知する事ができます。
コマンド一覧
このシナリオで重要なコマンド一覧は以下の通りです。
Router(config)# interface <interface> Router(config-if)# ip irdp Router(config-if)# ip irdp multicast Router(config-if)# ip irdp maxadvertinterval <sec> Router(config-if)# ip irdp minadvertinterval <sec> Router(config-if)# ip irdp holdtime <sec> Router(config-if)# ip irdp preference <sec> Switch(config)# ip gdp irdp Switch(config)# interface <interface> Switch(config-if)# ip irdp
構成図
以下の構成で動作確認をします
+--------+ | R1 +----┐ +--------+.1 │ Vlan13 f0/0 │ .7+--------+ ├----+ SW1 | f0/0 │ +--------+ +--------+.3 │ | R3 +----┘ +--------+ 192.168.13.0/24
[R1] interface FastEthernet0/0 ip address 192.168.13.1 255.255.255.0 [R3] interface FastEthernet0/0 ip address 192.168.13.3 255.255.255.0 [SW1] interface range FastEthernet0/1 , FastEthernet0/3 switchport access vlan 13 switchport mode access ! vlan 13
設定全文は下記ファイルです。詳細設定は下記を参照ください。
仕様説明
IRDP Server
IRDPによってデフォルトゲートウェイを通知する最小限の設定は以下のとおりです。以下のコマンドによってIRDPを有効化する事ができます。
Router(config)# interface <interface> Router(config-if)# ip irdp
その他、通知間隔, holdtime, preference等の設定が可能です。また、multicastキーワードを使用すると、IRDP通知をbroadcastからmulticastへ変更する事ができます。
Router(config-if)# ip irdp multicast Router(config-if)# ip irdp maxadvertinterval <sec> Router(config-if)# ip irdp minadvertinterval <sec> Router(config-if)# ip irdp holdtime <sec> Router(config-if)# ip irdp preference <sec>
IRDP Client
IRDPはルーティングが無効になっているホストに対するデフォルトゲートウェイ通知機能です。IRDP Clientはまずルーティングを無効にする必要があります。
Switch(config)# no ip routing
デフォルトでは受信したIRDPは処理されません。以下のコマンドを有効にして、IRDPを処理するようにして下さい。
Switch(config)# interface <interface> Switch(config-if)# ip irdp
これだけの情報ではホストは何を元にgatewayを設定して良いかが分かりません。GDP(gateway discovery protocol)としてIRDPを指定し、IRDPを元にgatewayを設定するようにします。
Switch(config)# ip gdp irdp
IRDP Server
設定投入
R1, R3をIRDP serverとして設定します。
[R1] interface FastEthernet0/0 ip irdp ip irdp multicast ip irdp maxadvertinterval 20 ip irdp minadvertinterval 20 ip irdp holdtime 60 ip irdp preference 100 [R3] interface FastEthernet0/0 ip irdp ip irdp multicast ip irdp maxadvertinterval 20 ip irdp minadvertinterval 20 ip irdp holdtime 60 ip irdp preference 90
動作確認
debug ip icmpを有効にし、IRDPのパケットが送信されている事を確認します。
[R1] R1#debug ip icmp ICMP packet debugging is on R1# Mar 31 00:15:27.316: ICMP: src=192.168.13.1, dst=224.0.0.1, irdp advertisement sent Mar 31 00:15:27.316: IRDP: entries=1, size=2, lifetime=60, bytes=36 Mar 31 00:15:27.316: IRDP: address=192.168.13.1 preference=100 R1# Mar 31 00:15:35.609: ICMP: rdp advert rcvd type 9, code 0, from 192.168.13.3 R1#
IRDP Client – IRDP 有効化
設定投入
SW1をIRDP clientとして設定します。
[SW1] no ip routing ! interface Vlan13 ip address 192.168.13.7 255.255.255.0 ip irdp
動作確認
show ip irdpコマンドよりIRDPが有効になっている事を確認します。また、debug ip icmpより、確かにIRDPパケットが処理(process)されている事を確認します。
[SW1] SW1#show ip irdp Vlan 13 Vlan13 has router discovery enabled Advertisements are valid for 1800 seconds. Default preference will be 0. SW1# SW1# SW1#debug ip icmp ICMP packet debugging is on SW1# *Mar 1 00:45:23.663: ICMP: rdp advert rcvd type 9, code 0, from 192.168.13.1 SW1#
IRDP Client – GDP
設定投入
GDP(gateway discovery protocol)として、IRDPを指定します。
[SW1] ip gdp irdp
動作確認
SW1にdefault gatewayが設定された事を確認します。
[SW1] SW1#show ip route Gateway Using Interval Priority Interface 192.168.13.1 IRDP 30 100 Vlan13 Default gateway is not set Host Gateway Last Use Total Uses Interface ICMP redirect cache is empty SW1#