このドキュメントでは、ホットスタンバイルータプロトコル(HSRP)のpreemptコマンドとtrackコマンドの連動のしくみと、その使用方法について説明しています。
Cisco Command Line Interface(CLI;コマンドラインインターフェイス)に関する基本的な知識があることが推奨されます
本書の情報は、次のソフトウェアのバージョンに基づくものです。
このドキュメントで説明する概念は、このソフトウェアリリースに限定されません。HSRPプリエンプションとオブジェクトトラッキングの動作は、サポートされているCisco IOSおよびCisco IOS XEプラットフォーム全体に適用されます。ただし、コマンドの構文と検証出力は、プラットフォームやソフトウェアバージョンによって異なる場合があります。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されたものです。このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
standby preemptコマンドは、HSRP選択処理とプリエンプト遅延が設定されている場合に、現在のアクティブルータよりもプライオリティの高いHSRPルータがアクティブルータの役割を引き継げるようにします。 プライオリティはまず設定済みのプライオリティ値によって決定され、次にプライオリティ値が等しい場合はHSRPインターフェイスのIPアドレスによって決定されます。 いずれの場合も、値が高いほど優先順位が高くなります。優先順位の高いルータは、優先順位の低いルータと交代する際に Coup メッセージを送信します。優先順位の低いアクティブ ルータは、優先順位の高いアクティブ ルータから Coup メッセージまたは Hello メッセージを受け取ると、Speak 状態に移行して Resign メッセージを送信します。
standby track コマンドでは、所定のグループの HSRP 優先順位を変更するために、HSRP プロセスでモニタ可能なルータ上の別のインターフェイスを指定できます。指定されたインターフェイスの回線プロトコルがダウンすると、HSRP 優先順位は減少します。つまり、プライオリティの高い別のHSRPルータでstandby preemptが有効になっている場合は、そのルータがアクティブルータになり得ることを意味します。
次の図は、standby preemptコマンドをstandby trackコマンドとともに使用する例を示しています。
HSRPのプリエンプションおよびトラッキング設定
ネットワーク ダイアグラムでは、HSRP は次のように設定されています。
| 設定手順 | 設定CLI |
| ステップ 1:トラッキングオブジェクトを設定します(オプション)。 トラッキングオブジェクト10を作成して、FortyGigabitEthernet0/2/4のラインプロトコルの状態をモニタします。 ステップ 2LAN側のインターフェイスを設定します。 FortyGigabitEthernet0/2/0にLAN IPアドレスを設定します。このインターフェイスはR1をLANデバイスに接続し、HSRPに参加します。 ステップ 3HSRP仮想IPアドレスを設定します。 HSRPグループ1に仮想IPアドレス172.16.6.100を設定します。LANホストはこのIPアドレスをデフォルトゲートウェイとして使用します。 ステップ 4HSRPプライオリティを設定します。 プライオリティ105でR1を設定します。これにより、トラッキング対象オブジェクトがアップ状態の間、R1が優先アクティブルータになります。 ステップ 5HSRPプリエンプションを有効にします。 プリエンプションを有効にして、トラッキング対象オブジェクトが回復し、そのプライオリティが105に戻った後で、R1がアクティブロールに戻れるようにします。 ステップ 6HSRPでオブジェクトをトラッキングします。 HSRPを設定して、オブジェクト10を減少値10で追跡します。FortyGigabitEthernet0/2/4回線プロトコルがダウンすると、オブジェクト10がダウンし、R1はHSRPプライオリティを105から95に下げます。 ステップ 7サーバ側インターフェイスを設定します。 サーバデバイスに到達するために使用されるIPアドレスを使用して、FortyGigabitEthernet0/2/4を設定します。 |
|
| 設定手順 | 設定CLI |
| ステップ 1:トラッキングオブジェクトを設定します(オプション)。 トラッキングオブジェクト10を作成して、FortyGigabitEthernet0/2/4のラインプロトコルの状態をモニタします。 ステップ 2LAN側のインターフェイスを設定します。 FortyGigabitEthernet0/2/0にLAN IPアドレスを設定します。このインターフェイスはR2をLANデバイスに接続し、R1と同じHSRPグループに属しています。 ステップ 3HSRP仮想IPアドレスを設定します。 R1で使用されているのと同じ仮想IPアドレス(172.16.6.100)を使用してHSRPグループ1を設定します。 ステップ 4デフォルトのHSRPプライオリティを使用します。 R2はデフォルトのHSRPプライオリティである100を使用します。R1のプライオリティは105であるため、R1が正常な間、R2はスタンバイルータのままです。 ステップ 5HSRPプリエンプションを有効にします。 プリエンプションを有効にして、R1のプライオリティが100未満に下がったときにR2がアクティブになるようにします。 ステップ 6HSRPでオブジェクトをトラッキングします。 HSRPを設定して、オブジェクト20を減少値10で追跡します。FortyGigabitEthernet0/2/4回線プロトコルがダウンすると、オブジェクト10がダウンし、R2はHSRPプライオリティを100から90に下げます。 ステップ 7サーバ側インターフェイスを設定します。 サーバデバイスに到達するために使用されるIPアドレスを使用して、FortyGigabitEthernet0/2/4を設定します。 |
|
注:トラッキングオブジェクトはオプションであり、通常のHSRP動作には不要です。HSRPは、仮想IPアドレス、プライオリティ、およびプリエンプション設定のみを使用して、アクティブルータとスタンバイルータを選出できます。トラッキングは、HSRPが別のオブジェクトの状態(インターフェイス回線プロトコルの状態など)に基づいてルータのプライオリティを調整する必要がある場合に使用します。この例では、トラッキングオブジェクトにより、インターフェイスに面したサーバがダウンした場合にルータのHSRPプライオリティを下げることができます。
show standbyコマンドを使用して、サーバ側のインターフェイスが両方のルータでアップ状態のときに初期HSRPステートを確認します。
この状態では、プライオリティ105が高く設定されているため、R1がアクティブなHSRPルータになります。R2はスタンバイルータで、デフォルトプライオリティは100です。
確認すべき重要なポイント:
| チェック |
R1出力 |
R2出力 |
結果 |
|---|---|---|---|
| HSRP状態 |
状態はアクティブです |
状態はスタンバイ |
R1はアクティブ、R2はスタンバイ |
| 仮想IP |
172.16.6.100 |
172.16.6.100 |
両方のルータが同じHSRP仮想IPを使用する |
| アクティブ ルータ |
local |
172.16.6.5, priority 105 |
R1はアクティブルータです |
| スタンバイ ルータ |
172.16.6.6, priority 100 |
local |
R2はスタンバイルータです |
| Priority |
105(設定は105) |
100(デフォルトは100) |
R1のプライオリティの方が高い |
| プリエンプション |
プリエンプション対応 |
プリエンプション対応 |
両方のルータは、プライオリティが高くなるとプリエンプション処理できます |
| トラックオブジェクト |
トラックオブジェクト10ステートのアップデクリメント10 |
トラックオブジェクト20ステートのアップデクリメント10 |
トラッキング対象のサーバ側インターフェイスが両方ともアップの状態です |
| 仮想MACの使用 |
使用中のMAC |
MACが使用されていない |
R1は現在HSRP仮想MACに転送しています |
R1#show standby
FortyGigabitEthernet0/2/0 - Group 1 State is Active 2 state changes, last state change 15:44:50
Virtual IP address is 172.16.6.100
Active virtual MAC address is 0000.0c07.ac01 (MAC In Use)
Local virtual MAC address is 0000.0c07.ac01 (v1 default)
Hello time 3 sec, hold time 10 sec
Next hello sent in 0.352 secs
Preemption enabled Active router is local
Standby router is 172.16.6.6, priority 100 (expires in 10.048 sec) Priority 105 (configured 105) Track object 10 state Up decrement 10
Group name is "hsrp-Fo0/2/0-1" (default)
FLAGS: 1/1
R2#show standby
FortyGigabitEthernet0/2/0 - Group 1 State is Standby 4 state changes, last state change 00:11:06
Virtual IP address is 172.16.6.100 Active virtual MAC address is 0000.0c07.ac01 (MAC Not In Use)
Local virtual MAC address is 0000.0c07.ac01 (v1 default)
Hello time 3 sec, hold time 10 sec
Next hello sent in 1.504 secs
Preemption enabled Active router is 172.16.6.5, priority 105 (expires in 9.136 sec)
Standby router is local
Priority 100 (default 100) Track object 20 state Up decrement 10
Group name is "hsrp-Fo0/2/0-1" (default)
FLAGS: 0/1
R1のFortyGigabitEthernet0/2/4インターフェイスがダウンするとどうなりますか。
FortyGigabitEthernet0/2/4がR1でダウンした後、トラッキングオブジェクト10はダウン状態に変わります。次にHSRPは、設定された減少値10をR1のプライオリティに適用します。その結果、R1のプライオリティが設定値の105から有効値の95に変更されます。
R2のプライオリティは100のままなので、R2のHSRPプライオリティの方が高くなります。プリエンプションが有効になっているため、R2がアクティブロールを引き継ぎます。出力は、この動作を確認します。
この時点で、LANホストは同じデフォルトゲートウェイである172.16.6.100を使用し続けますが、トラフィックはR1ではなくR2経由で転送されます。
show standby コマンドの出力は次のようになります。
R1#show standby
FortyGigabitEthernet0/2/0 - Group 1
State is Standby
4 state changes, last state change 00:00:46
Virtual IP address is 172.16.6.100
Active virtual MAC address is 0000.0c07.ac01 (MAC Not In Use) Local virtual MAC address is 0000.0c07.ac01 (v1 default)
Hello time 3 sec, hold time 10 sec
Next hello sent in 1.200 secs
Preemption enabled
Active router is 172.16.6.6, priority 100 (expires in 8.512 sec)
Standby router is local Priority 95 (configured 105)
Track object 10 state Down decrement 10
Group name is "hsrp-Fo0/2/0-1" (default)
FLAGS: 0/1
R2#show standby
FortyGigabitEthernet0/2/0 - Group 1
State is Active
5 state changes, last state change 00:01:34
Virtual IP address is 172.16.6.100
Active virtual MAC address is 0000.0c07.ac01 (MAC In Use) Local virtual MAC address is 0000.0c07.ac01 (v1 default)
Hello time 3 sec, hold time 10 sec
Next hello sent in 0.592 secs
Preemption enabled
Active router is local Standby router is 172.16.6.5, priority 95 (expires in 11.712 sec) Priority 100 (default 100) Track object 20 state Up decrement 10
Group name is "hsrp-Fo0/2/0-1" (default)
FLAGS: 1/1
注:R2でstandby preemptが設定されていない場合、R2はCoupメッセージをR1に送信しないため、R2がアクティブになることはありません。代わりに R1 がアクティブ ルータのままになります。
次の例は、R2でstandby preemptが設定されていない場合の動作を示しています。 R2でstandby preemptが設定されていない場合、プライオリティ100がR1の有効なプライオリティ95より高くても、R2はアクティブなロールを引き継ぎません。R1は、障害が発生するか、再サインするか、別のHSRPイベントによって新しい選択が行われるまで、アクティブのままです。
R1#show running-config interface FortyGigabitEthernet0/2/0
Building configuration...
Current configuration : 212 bytes
!
interface FortyGigabitEthernet0/2/0
ip address 172.16.6.5 255.255.255.0
no ip redirects
standby 1 ip 172.16.6.100
standby 1 priority 105
standby 1 preempt
standby 1 track 10 decrement 10
cdp enable
end
R1#show standby
FortyGigabitEthernet0/2/0 - Group 1
State is Active
5 state changes, last state change 00:12:27
Virtual IP address is 172.16.6.100
Active virtual MAC address is 0000.0c07.ac01 (MAC In Use)
Local virtual MAC address is 0000.0c07.ac01 (v1 default)
Hello time 3 sec, hold time 10 sec
Next hello sent in 0.256 secs
Preemption enabled Active router is local Standby router is 172.16.6.6, priority 100 (expires in 9.200 sec)
Priority 95 (configured 105)
Track object 10 state Down decrement 10
Group name is "hsrp-Fo0/2/0-1" (default)
FLAGS: 1/1
R1#
R2#show running-config interface FortyGigabitEthernet0/2/0
Building configuration...
Current configuration : 190 bytes
!
interface FortyGigabitEthernet0/2/0
ip address 172.16.6.6 255.255.255.0
no ip redirects
standby 1 ip 172.16.6.100
standby 1 track 20 decrement 10
no negotiation auto
cdp enable
end
R2#show standby
FortyGigabitEthernet0/2/0 - Group 1
State is Standby
7 state changes, last state change 00:11:54
Virtual IP address is 172.16.6.100
Active virtual MAC address is 0000.0c07.ac01 (MAC Not In Use)
Local virtual MAC address is 0000.0c07.ac01 (v1 default)
Hello time 3 sec, hold time 10 sec
Next hello sent in 2.032 secs
Preemption disabled Active router is 172.16.6.5, priority 95 (expires in 9.632 sec) Standby router is local Priority 100 (default 100) Track object 20 state Up decrement 10
Group name is "hsrp-Fo0/2/0-1" (default)
FLAGS: 0/1
R2#
次の例は、同じHSRPグループの下にある複数のオブジェクトをトラッキングしているHSRPを示しています。トラッキング対象の各オブジェクトには独自の減少値が必要であるため、HSRPは、そのオブジェクトがダウンしたときにルータの優先順位をどれだけ下げればよいかを認識できます。この出力では、R1はプライオリティ105で設定されており、トラックオブジェクト10はプライオリティを10減らし、トラックオブジェクト15はプライオリティを20減らします。両方のオブジェクトがダウンしているため、減分合計は30になり、R1の優先順位が105から75に下がります。R2のプライオリティが100のままであるため、R2がアクティブルータになり、R1はスタンバイステートに移行します。
R1#show running-config interface FortyGigabitEthernet0/2/0
Building configuration...
Current configuration : 245 bytes
!
interface FortyGigabitEthernet0/2/0
ip address 172.16.6.5 255.255.255.0
no ip redirects
standby 1 ip 172.16.6.100
standby 1 priority 105
standby 1 preempt
standby 1 track 10 decrement 10 standby 1 track 15 decrement 20
cdp enable
end
R1#show standby
FortyGigabitEthernet0/2/0 - Group 1
State is Standby
7 state changes, last state change 00:03:24
Virtual IP address is 172.16.6.100
Active virtual MAC address is 0000.0c07.ac01 (MAC Not In Use)
Local virtual MAC address is 0000.0c07.ac01 (v1 default)
Hello time 3 sec, hold time 10 sec
Next hello sent in 1.008 secs
Preemption enabled
Active router is 172.16.6.6, priority 100 (expires in 9.856 sec)
Standby router is local
Priority 75 (configured 105) Track object 10 state Down decrement 10 Track object 15 state Down decrement 20
Group name is "hsrp-Fo0/2/0-1" (default)
FLAGS: 0/1
| 改定 | 発行日 | コメント |
|---|---|---|
4.0 |
06-Aug-2026
|
再認定 – 更新された形式。 |
3.0 |
04-Mar-2025
|
コントリビュータリストとフォーマットを更新。 |
1.0 |
10-Dec-2001
|
初版 |