【ネットワーク基礎・入門】VRRP(Virtual Router Redundancy Protocol)をちょこっと深掘りしつつまとめてみた

  • URLをコピーしました!
目次

はじめに

こんにちは。ネットワークエンジニアの「だいまる」です。

今回は、HSRPの記事に関連し、VRRP(Virtual Router Redundancy Protocol)についてまとめていきたいと思います。

VRRP(Virtual Router Redundancy Protocol)とは?

VRRP(Virtual Router Redundancy Protocol)は、HSRPと似たようなプロトコルとなります。

そのため、HSRPと異なる点を以下にまとめたいと思います。

  • マルチベンダ環境で利用可能
  • Active/StandbyではなくMaster/Backup
  • 仮想IPアドレスにMasterルータの物理IPアドレスを利用可能
  • Hello PacketではなくAdvertiseメッセージを利用
    • Masterルータが1秒毎にメッセージを送信
    • Backupルータが1秒×3回、Advertiseメッセージを受信しなかった場合、Expire(Backup→Masterの送信はない)
  • 仮想MACアドレスは「0000.5e00.01XX」※XXはグループ番号
  • マルチキャストアドレスは「224.0.0.18」
  • Preemptがデフォルトで有効

HSRPについては確認したい場合は、先日投稿したネットワーク基礎・入門】HSRP(Hot Standby Router Protocol)の概要を復習のために深掘りしてみた」をご確認いただければと思います。

VRRPの基本設定

まずはじめにVRRPの基本設定についてまとめていきたいと思います。

VRRPの設定は以下のコマンドで行います。

(config)# interface <IF名>
(config-if)# vrrp {Group_No} ip {仮想IPアドレス}
(config-if)# vrrp {Group_No} priority {priority値}

上記コマンドで設定が可能となります。

VRRPはHSRPと異なり、PreemptがデフォルトでONとなっているため、設定が不要となります。

タイマ設定

次にタイマ設定についてです。

VRRPのタイマ設定は、Advertiseメッセージのインターバルのみ設定が可能となります。

理由は、AdvertiseメッセージはMasterルータからBackupルータへのみ送ることしかできないためです。

上記より、「Advertiseメッセージのインターバル×3」の一定時間、メッセージを受け取らなかった場合、自動でExpireする条件となっています。

そのため、インターバルの設定のみとなっているのです。

(config-if)# vrrp {Group_No} timers advertise [msec] {時間}

オプションのmsecをつけることで時間の指定をmsec単位とすることができます。

Preempt Delay

Preempt DelayはHSRPと機能は変わらないため、ここではコマンドの紹介のみとさせていただきます。

(config-if)# vrrp {Group_No} preempt delay minimum {時間}

minimumオプションを利用することで時間(0~36000秒)を指定することができるようになります。

もし、確認した場合は、「【ネットワーク基礎・入門】HSRP(Hot Standby Router Protocol)の概要を復習のために深掘りしてみた」をご確認お願いいたします。

ちょこっと実機確認

この章では、VRRPの基本設定を実機確認してみたので、その際のログや出力結果等を記載していきます。

今回利用した構成はこんな感じです。

ルータ2
ルータ2
ルータ1
ルータ1
ルータ3
ルータ3
VRRPグループ
VRRPグループ
OSPFエリア
OSPFエリア
Lo:10.0.1.1/32
Lo:10.0.1.1/32
Lo:10.0.1.2/32
Lo:10.0.1.2/32
Lo:10.0.1.3/32
Lo:10.0.1.3/32
Vlan10:192.168.1.3
Vlan10:192.168….
Gi0/2: 192.168.1.1
Gi0/2: 192.168.1.1
Gi0/1: 192.168.1.2
Gi0/1: 192.168.1.2
VRRP IP: 192.168.1.5
VRRP IP: 192.168.1.5
Text is not SVG – cannot display

Config投入とその時のログ

まずはRouter3側で設定を追加してみました。

Router3#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
Router3(config)#interface gigabitEthernet 0/1
Router3(config-if)#vrrp 10 ip 192.168.1.5
Router3(config-if)#

この設定を投入した時に出てきたデバッグログが以下の通りです。

*Nov 29 13:24:26: %VRRP-6-STATECHANGE: Gi0/1 Grp 10 state Create -> Disable
*Nov 29 13:24:26.809: VRRP: Grp 10 Event - primary IP configured
*Nov 29 13:24:26: %VRRP-6-STATECHANGE: Gi0/1 Grp 10 state Disable -> Init
*Nov 29 13:24:26.809: VRRP: vrrp_interface_state: Gi0/1 is Up
*Nov 29 13:24:26.810: VRRP: Grp 10 mincfg is met :
*Nov 29 13:24:26.810: VRRP: Grp 10 Event - Interface UP
*Nov 29 13:24:26: %VRRP-6-STATECHANGE: Gi0/1 Grp 10 state Init -> Backup
*Nov 29 13:24:26.812: VRRP: vrrp_interface_state: Gi0/1 is Up
*Nov 29 13:24:26.812: VRRP: Grp 10 mincfg is met :
*Nov 29 13:24:26.812: VRRP: Grp 10 Event - primary IP configured
*Nov 29 13:24:26: %VRRP-6-STATECHANGE: Gi0/1 Grp 10 state Disable -> Init
*Nov 29 13:24:26.812: VRRP: vrrp_interface_state: Gi0/1 is Up
*Nov 29 13:24:26.812: VRRP: Grp 10 mincfg is met :
*Nov 29 13:24:26.812: VRRP: Grp 10 Event - Interface UPvrrp
*Nov 29 13:24:26: %VRRP-6-STATECHANGE: Gi0/1 Grp 10 state Init -> Backup
*Nov 29 13:24:30.421: VRRP: Grp 10 Event - Master down timer expired
*Nov 29 13:24:30: %VRRP-6-STATECHANGE: Gi0/1 Grp 10 state Backup -> Masterq
*Nov 29 13:24:30.422: VRRP: tbridge_smf_update failed
*Nov 29 13:24:30.423: VRRP: Grp 10 sending Advertisement checksum B945

上記からもわかるようにVRRPが起動し始めたことがわかります。

では、Router2にVRRPの設定を入れてみます。

こちらをActiveにしたいのでPriorityの値を「150」で設定しています。

Router2#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
Router2(config)#interface gigabitEthernet 0/2
Router2(config-if)#vrrp 10 ip 192.168.1.5
Router2(config-if)#vrrp 10 priority 150

その時に出たログが以下の通りとなります。

*Nov 29 13:29:17: %VRRP-6-STATECHANGE: Gi0/2 Grp 10 state Create -> Disable
*Nov 29 13:29:17.386: VRRP: Grp 10 Event - primary IP configured
*Nov 29 13:29:17: %VRRP-6-STATECHANGE: Gi0/2 Grp 10 state Disable -> Init
*Nov 29 13:29:17.386: VRRP: vrrp_interface_state: Gi0/2 is Up
*Nov 29 13:29:17.386: VRRP: Grp 10 mincfg is met :
*Nov 29 13:29:17.386: VRRP: Grp 10 Event - Interface UP
*Nov 29 13:29:17: %VRRP-6-STATECHANGE: Gi0/2 Grp 10 state Init -> Backup
*Nov 29 13:29:17.389: VRRP: vrrp_interface_state: Gi0/2 is Up
*Nov 29 13:29:17.389: VRRP: Grp 10 mincfg is met :
*Nov 29 13:29:17.389: VRRP: Grp 10 Event - primary IP configured
*Nov 29 13:29:17: %VRRP-6-STATECHANGE: Gi0/2 Grp 10 state Disable -> Init
*Nov 29 13:29:17.389: VRRP: vrrp_interface_state: Gi0/2 is Up
*Nov 29 13:29:17.389: VRRP: Grp 10 mincfg is met :
*Nov 29 13:29:17.389: VRRP: Grp 10 Event - Interface UP
*Nov 29 13:29:17: %VRRP-6-STATECHANGE: Gi0/2 Grp 10 state Init -> Backuprp 10 p
*Nov 29 13:29:17.705: VRRP: Grp 10 Advertisement priority 100, ipaddr 192.168.1.2
*Nov 29 13:29:17.705: VRRP: Grp 10 Event - Advert higher or equal priority
*Nov 29 13:29:18.626: VRRP: Grp 10 Advertisement priority 100, ipaddr 192.168.1.2
*Nov 29 13:29:18.626: VRRP: Grp 10 Event - Advert higher or equal prioritpri

#ここでPriorityを投入
Router2(config-if)#vrrp 10 priority 150

*Nov 29 13:29:19.506: VRRP: Grp 10 Advertisement priority 100, ipaddr 192.168.1.2
*Nov 29 13:29:19.506: VRRP: Grp 10 Event - Advert higher or equal priority
*Nov 29 13:29:20.421: VRRP: Grp 10 Advertisement priority 100, ipaddr 192.168.1.2
*Nov 29 13:29:20.421: VRRP: Grp 10 Event - Advert higher or equal priorityend
Router2#
Router2#
*Nov 29 13:29:21.357: VRRP: Grp 10 Advertisement priority 100, ipaddr 192.168.1.2
Router2#
Router2#
*Nov 29 13:29:21: %SYS-5-CONFIG_I: Configured from console by cisco on vty1 (192.168.11.20)
Router2#
Router2#
Router2#
*Nov 29 13:29:22.245: VRRP: Grp 10 Advertisement priority 100, ipaddr 192.168.1.2
*Nov 29 13:29:23.239: VRRP: Grp 10 Advertisement priority 100, ipaddr 192.168.1.2
*Nov 29 13:29:24.030: VRRP: Grp 10 Event - Master down timer expired
*Nov 29 13:29:24: %VRRP-6-STATECHANGE: Gi0/2 Grp 10 state Backup -> Master
*Nov 29 13:29:24.030: VRRP: tbridge_smf_update failed
*Nov 29 13:29:24.031: VRRP: Grp 10 sending Advertisement checksum 8745
*Nov 29 13:29:24.968: VRRP: Grp 10 sending Advertisement checksum 8745

上記デバッグログよりもPriorityの設定投入前は、Backupルータとして識別されていることがわかると思います。

そして、Priorityの設定を追加するとPreemptが働き、Masterルータになりました。

show vrrp allコマンドでもそのことがわかります。

Router2# show vrrp all
GigabitEthernet0/2 - Group 10
  State is Master
  Virtual IP address is 192.168.1.5
  Virtual MAC address is 0000.5e00.010a
  Advertisement interval is 1.000 sec
  Preemption enabled
  Priority is 150
  Master Router is 192.168.1.1 (local), priority is 150
  Master Advertisement interval is 1.000 sec
  Master Down interval is 3.414 sec

Router2#

パケットキャプチャ

最後に切り替わり時のパケットの中身をみていきたいと思います。

上記より切り替わっていることがわかると思います。

また、中身を見てもPriorityが150になっていることがわかると思います。

最後に

VRRPは、HSRPとあまり変わらないため、概要編としてまとめました。

CCNPやCCNAを勉強している方やネットワークの世界に入ってきて経験が浅い方の力に少しでもなれたら嬉しいです。

  • URLをコピーしました!

この記事を書いた人

目次