本記事ではHSRP(インターフェーストラッキング)の設定変更についてご紹介させて頂きます。
本記事はHSRPを理解されている前提の記事になっておりますので、HSRPに関して復習されたい人は以下の記事をご確認下さい。
HSRPのインターフェーストラッキングの必要性から動作仕様・設定コマンド等を図解し分かりやすく解説しております。初心者の方にも分かるように纏めておりますでCCNA・CCNPを目指している方はぜひご覧下さい!
検証前提
設定要件及び検証ネットワークは以下の通りです。
設定要件
以下の要件に基づきHSRPの設定を実装する。
- R1のWANインターフェースがDownした場合、R2がアクティブルータになる事
- R1のWANインターフェースがDownした場合、HSRPのプライオリティ値を10下げる事
ネットワーク図
検証時のネットワーク環境は以下の通りです。
事前確認
検証前時点の各機器の設定内容やログは以下の通りです。
※HSRPに関連するconfigのみを抜粋しております。
R1設定確認
以下の通り、LAN側のIPアドレスとHSRPの基本設定(HSRPグループ,プライオリティ,プリエンプト)は設定済です。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | R1#show running-config interface e0/0 Building configuration... ! interface Ethernet0/0 ip address 192.168.10.252 255.255.255.0 standby 5 ip 192.168.10.254 //←HSRPの仮想IPアドレスは設定済 standby 5 priority 105 //←HSRPのプライオリティ値は設定済 standby 5 preempt //←HSRPのプリエンプトは設定済 end R1#show standby brief P indicates configured to preempt. | Interface Grp Pri P State Active Standby Virtual IP Et0/0 5 105 P Active local 192.168.10.253 192.168.10.254 //↑↑↑ Grp(HSRPグループ)が5、P(プリエンプト)が有効化、StateがActive(アクティブルータ)を意味する |
※補足:WAN側に関するルーティング設定は実装済みです。(configは省略しております)
R2設定確認
以下の通り、LAN側のIPアドレスとHSRPの基本設定(HSRPグループ)は設定済です。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | R2#show running-config interface e0/1 Building configuration... Current configuration : 99 bytes ! interface Ethernet0/1 ip address 192.168.10.253 255.255.255.0 standby 5 ip 192.168.10.254 //←HSRPの仮想IPアドレスは設定済 standby 5 preempt //←HSRPのプリエンプトは設定済 end R2#show standby brief P indicates configured to preempt. | Interface Grp Pri P State Active Standby Virtual IP Et0/1 5 100 P Standby 192.168.10.252 local 192.168.10.254 //↑↑↑ Grp(HSRPグループ)が5、P(プリエンプト)が有効化、StateがStandby(スタンバイルータ)を意味する |
※補足:WAN側に関するルーティング設定は実装済みです。(configは省略しております)
SW1設定確認
以下の通り、SWのポートは全てVLAN1のAccessPortとして設定済です。
1 2 3 4 5 6 7 | SW1#show interfaces status Port Name Status Vlan Duplex Speed Type Et0/0 connected 1 auto auto unknown Et0/1 connected 1 auto auto unknown Et0/2 connected 1 auto auto unknown Et0/3 connected 1 auto auto unknown |
【補足】インターフェーストラッキングを設定していない場合の不具合確認
R1のWANインターフェースに障害が発生した際、R2がスタンバイルータからアクティブルータへ昇格せずにWANへの通信が出来ない事を確認します。
まずは障害が発生していない時はPCからWAN越しのIPアドレス(7.7.7.7)へ通信が出来ている事を確認する。
※本検証環境ではPCの代わりにRouterを利用しております。
1 2 3 4 5 6 | PC#traceroute 8.8.8.8 Type escape sequence to abort. Tracing the route to 8.8.8.8 VRF info: (vrf in name/id, vrf out name/id) 1 192.168.10.252 2 msec 3 msec 2 msec 2 172.16.1.254 5 msec 4 msec * |
次にR1にてWAN向けのポートをshutdownいたします。
1 2 | R1(config)#int e0/2 R1(config-if)#shutdown |
R2がアクティブルータになっていない事、PCからWAN越しのIPアドレス(7.7.7.7)へ通信出来ない事を確認する。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | //以下がR2側のログ R2#show standby brief P indicates configured to preempt. | Interface Grp Pri P State Active Standby Virtual IP Et0/1 5 100 P Standby 192.168.10.252 local 192.168.10.254 //↑↑↑ Standby(スタンバイルータ)のままである事を確認する。 //以下がPC側のログ PC#traceroute 8.8.8.8 Type escape sequence to abort. Tracing the route to 8.8.8.8 VRF info: (vrf in name/id, vrf out name/id) 1 192.168.10.252 3 msec 3 msec 4 msec 2 192.168.10.252 !H !H * // R1で通信が止まっている事を確認する。 |
設定変更作業
では、以下にてインターフェーストラッキングの設定を実装していきます。
- ・R1のWANインターフェース(e0/2)を監視対象(トラッキング対象)として設定する。
- ・R1のHSRPグループ5にHSRPトラッキングを有効化する。
1 | R1(config)# track 1 interface Ethernet0/2 line-protocol |
1 2 | R1(config)# interface e0/0 R1(config-if)# standby 5 track 1 decrement 10 |
正常性確認
要件通り設定変更がされているか確認します。
R1設定確認
・R1でHSRPのインターフェーストラッキングが有効化されている事を確認する。
1 2 3 4 5 6 7 8 9 10 11 | R1#show standby | inc pri|Track Standby router is 192.168.10.253, priority 100 (expires in 9.568 sec) Track object 1 state Up decrement 10 // ←トラッキング設定が実装され、stateがUPになっている事 <h2>障害試験</h2> <p>R1のWANインターフェース(e0/2)に障害が発生した際、R2がスタンバイルータからアクティブルータへ昇格する事を確認します。[br num="1"] まずはR1にてWAN向けのポートをshutdownいたします。</p> <pre class="lang:default decode:true " title="R1 config log" > R1(config)#int e0/2 R1(config-if)#shutdown |
以下にてR1のWAN向けポートが障害時のログを紹介いたします。
期待値通り、R2がアクティブルータへ昇格している事が確認できると思います。
1 2 3 4 5 6 7 8 9 | //以下がR1側のログ *Nov 19 10:07:56.106: %TRACK-6-STATE: 1 interface Et0/2 line-protocol Up -> Down // ←トラッキング対象のe0/2がDownした事を意味する *Nov 19 10:07:56.430: %HSRP-5-STATECHANGE: Ethernet0/0 Grp 5 state Active -> Speak *Nov 19 10:08:07.374: %HSRP-5-STATECHANGE: Ethernet0/0 Grp 5 state Speak -> Standby // ←スタンバイルータへ遷移した事を意味する //以下がR2側のログ(スタンバイ状態からアクティブ状態へ遷移している) *Nov 19 10:07:40.425: %HSRP-5-STATECHANGE: Ethernet0/1 Grp 5 state Active -> Speak *Nov 19 10:07:51.270: %HSRP-5-STATECHANGE: Ethernet0/1 Grp 5 state Speak -> Standby *Nov 19 10:07:56.429: %HSRP-5-STATECHANGE: Ethernet0/1 Grp 5 state Standby -> Active // ←アクティブルータへ遷移した事を意味する |
R1設定確認
・R1はWANインターフェースがDownした事により、スタンバイルータになりHSRPプライオリティ値が105から95へ変わっている事を確認する。
1 2 3 4 5 6 7 8 9 | R1#show standby brief P indicates configured to preempt. | Interface Grp Pri P State Active Standby Virtual IP Et0/0 5 95 P Standby 192.168.10.253 local 192.168.10.254 R1#show standby | inc pri|Track Active router is 192.168.10.253, priority 100 (expires in 9.584 sec) Track object 1 state Down decrement 10 // ←stateがDownになっている事 |
R2設定確認
・R2がスタンバイルータからアクティブルータへ昇格している事を確認する
1 2 3 4 5 | R2#show standby brief P indicates configured to preempt. | Interface Grp Pri P State Active Standby Virtual IP Et0/1 5 100 P Active local 192.168.10.252 192.168.10.254 |
PCからの疎通確認確認
・PCからWAN越しのIPアドレス(7.7.7.7)へ通信する際、元スタンバイルータ(R2)経由で通信している事を確認する。
1 2 3 4 5 6 | PC#traceroute 8.8.8.8 Type escape sequence to abort. Tracing the route to 8.8.8.8 VRF info: (vrf in name/id, vrf out name/id) 1 192.168.10.253 2 msec 2 msec 2 msec //←192.168.10.253(R2 元スタンバイルータ側)を経由 2 172.16.1.254 3 msec 5 msec * |
復旧試験
R1のWANインターフェース(e0/2)が復旧した際、R1がアクティブルータへ戻る事を確認します。
まずはR1にてSW向けのポートをUPいたします。
1 2 | R1(config)#int e0/2 R1(config-if)#no shutdown |
以下にてActiveルータリンクが障害時のログを紹介いたします。
期待値通り、R1がアクティブルータへ戻った事が確認できると思います。
1 2 3 4 5 6 7 | //以下がR1側のログ(アクティブ状態へ遷移) *Nov 19 10:10:57.982: %TRACK-6-STATE: 1 interface Et0/2 line-protocol Down -> Up // ←トラッキング対象のe0/2がUPした事を意味する *Nov 19 10:10:58.576: %HSRP-5-STATECHANGE: Ethernet0/0 Grp 5 state Standby -> Active // ←アクティブルータへ遷移した事を意味する //以下がR2側のログ(アクティブ状態からスタンバイ状態へ遷移している) *Nov 19 10:10:58.582: %HSRP-5-STATECHANGE: Ethernet0/1 Grp 5 state Active -> Speak *Nov 19 10:11:10.220: %HSRP-5-STATECHANGE: Ethernet0/1 Grp 5 state Speak -> Standby // ←スタンバイルータへ遷移した事を意味する |
R1設定確認
・R1がアクティブルータへ戻った事を確認する。
1 2 3 4 5 6 7 8 9 10 11 | R1#show standby brief P indicates configured to preempt. | Interface Grp Pri P State Active Standby Virtual IP Et0/0 5 105 P Active local 192.168.10.253 192.168.10.254 //↑↑↑上記の通り、R1がアクティブルータへ戻っている事を確認できる R1#show standby | inc pri|Track Standby router is 192.168.10.253, priority 100 (expires in 9.568 sec) Track object 1 state Up decrement 10 // ←stateがUPになっている事 |
R2設定確認
・R2がスタンバイルータへ戻った事を確認する。
1 2 3 4 5 6 7 | R2#show standby brief P indicates configured to preempt. | Interface Grp Pri P State Active Standby Virtual IP Et0/1 5 100 P Standby 192.168.10.252 local 192.168.10.254 //↑↑↑上記の通り、R2がスタンバイルータへ戻っている事を確認できる |
PCからの疎通確認確認
・PCからWAN越しのIPアドレス(7.7.7.7)へ通信する際、アクティブルータ(R1)経由で通信している事を確認する。
1 2 3 4 5 6 | PC#traceroute 8.8.8.8 Type escape sequence to abort. Tracing the route to 8.8.8.8 VRF info: (vrf in name/id, vrf out name/id) 1 192.168.10.252 2 msec 3 msec 1 msec //←192.168.10.252(R1 アクティブルータ側)を経由 ※元に戻った事 2 172.16.1.254 3 msec 4 msec * |
まとめ
いかがでしたでしょうか?
HSRPのインターフェーストラッキングの設定変更方法については理解しておきましょう!
Router(config)# track [オブジェクト番号] interface [インターフェース名&番号] line-protocol
Router(config)# interface [インターフェース名&番号]
Router(config-if)# standby [HSRPグループ番号] track [オブジェクト番号] decrement [プライオリティ値を下げる値]