Lesson Contents
Multigroup HSRP (MHSRP) is a form of gateway redundancy that lets two or more HSRP groups run on the same interface, with each router active for a different group. By doing this, both gateway routers on one subnet will forward traffic at the same time, instead of having one router idle in standby.
Within each group, HSRP is still active/standby. There is no per-packet or per-flow balancing going on. MHSRP only achieves load sharing across the subnet because you run two (or more) of these active/standby groups side by side, each with a different router as active.
In this lesson, we’ll configure two HSRP groups for one shared segment, using standby priority and standby preempt so each router is active for a different group. We’ll use some show commands, pings, and traceroute to verify that two gateways can forward traffic within the subnet.
Key Takeaways
- Multigroup HSRP (MHSRP) runs two or more independent HSRP groups on the same physical interface, letting both gateways actively forward traffic on a single shared subnet without VLANs or subinterfaces.
- Configure each host with a different HSRP virtual IP as its default gateway, splitting outbound traffic between the two routers:
- H1 uses group 1’s virtual IP (192.168.12.254), with R1 as Active.
- H2 uses group 2’s virtual IP (192.168.12.253), with R2 as Active.
- Configure a second standby group on the same interface with
standby 2 ip <vip>alongside the existingstandby 1 ip <vip>. - Without differentiated priority, the router with the higher interface IP wins every group’s election, defeating load sharing. Raise each router’s priority (e.g.
standby 1 priority 150) for the group it should own. - Priority alone only affects the outcome of a new election; you must enable
standby preempton each group so the higher-priority router actively takes over (sends a coup) from an already-Active peer. - Each HSRP group gets its own virtual MAC address (e.g. 0000.0c07.ac01 for group 1, 0000.0c07.ac02 for group 2), allowing the switch to learn each group’s MAC on a different port and confirming two distinct forwarding paths.
- Verify the load-sharing state with
show standby briefand per-group detail withshow standby, checking Active/Standby role, configured priority, and preempt status on each router. - Confirm the split in practice via
show mac address-tableon the switch (virtual MACs on different ports) and via traceroute from each host, showing a different first-hop router for H1 versus H2.
Prerequisites
You should be familiar with standard HSRP concepts, including active/standby roles, priority-based election, and the standby preempt command, as covered in the Hot Standby Router Protocol (HSRP) lesson.
Topology
Here is the topology we’ll use:
For this example, I have six devices:
- R1 and R2 are the HSRP routers and connected to the 192.168.12.0/24 subnet.
- R3 is an upstream router, so we have something to ping.
- SW is a plain Layer 2 switch with no VLAN configuration. It forms a single shared broadcast domain for R1, R2, H1, and H2.
- H1 and H2 are hosts (Ubuntu docker containers) connected to SW:
- H1 uses HSRP group 1’s virtual IP as its default gateway.
- H2 uses HSRP group 2’s virtual IP as its default gateway.
Splitting H1 and H2 across the two virtual IPs isn’t something HSRP does for you. In this lab, we configure H1 and H2 with different default gateways directly. In a real deployment, you’d typically achieve the same split with two DHCP scopes: one handing out 192.168.12.254 as the default gateway, the other handing out 192.168.12.253.
Alternatively, you could use static IP configuration on selected hosts, or configure the subnet’s address range into pools tied to each gateway. HSRP itself has no mechanism to distribute hosts across groups. It only decides which router is active.
Configurations
Want to take a look for yourself? Here you will find the startup configuration of each device.
R1
hostname R1
!
ip cef
!
interface GigabitEthernet2
description Shared segment toward SW1/H1/H2
ip address 192.168.12.1 255.255.255.0
!
interface GigabitEthernet3
description Link to R3
ip address 192.168.13.1 255.255.255.0
!
router ospf 1
router-id 1.1.1.1
network 192.168.12.0 0.0.0.255 area 0
network 192.168.13.0 0.0.0.255 area 0
!
end
R2
hostname R2
!
ip cef
!
interface GigabitEthernet2
description Shared segment toward SW1/H1/H2
ip address 192.168.12.2 255.255.255.0
!
interface GigabitEthernet3
description Link to R3
ip address 192.168.23.2 255.255.255.0
!
router ospf 2
router-id 2.2.2.2
network 192.168.12.0 0.0.0.255 area 0
network 192.168.23.0 0.0.0.255 area 0
!
end
R3
hostname R3
!
ip cef
!
interface Loopback0
ip address 3.3.3.3 255.255.255.255
!
interface GigabitEthernet2
description Link to R1
ip address 192.168.13.3 255.255.255.0
!
interface GigabitEthernet3
description Link to R2
ip address 192.168.23.3 255.255.255.0
!
router ospf 3
router-id 3.3.3.3
network 3.3.3.3 0.0.0.0 area 0
network 192.168.13.0 0.0.0.255 area 0
network 192.168.23.0 0.0.0.255 area 0
!
end
Configuration
Let’s configure.
Creating Two HSRP Groups on the Same Interface
Now for the actual MHSRP configuration. We create two HSRP groups on the same physical interface (Gi2) on both R1 and R2. Group 1’s virtual IP will be H1’s default gateway; group 2’s virtual IP will be H2’s default gateway. Here’s how to do it:
R1(config)#interface GigabitEthernet2
R1(config-if)#standby 1 ip 192.168.12.254
R1(config-if)#standby 2 ip 192.168.12.253
R1(config-if)#standby 1 name HSRP-GROUP1
R1(config-if)#standby 2 name HSRP-GROUP2
R1(config-if)#exit
R2(config)#interface GigabitEthernet2
R2(config-if)#standby 1 ip 192.168.12.254
R2(config-if)#standby 2 ip 192.168.12.253
R2(config-if)#standby 1 name HSRP-GROUP1
R2(config-if)#standby 2 name HSRP-GROUP2
R2(config-if)#exit
If we stopped here, with both groups left at the default priority of 100, HSRP would elect an active router using the tie-breaker rule: the router with the higher interface IP wins. R2 (192.168.12.2) has a higher IP than R1 (192.168.12.1), so R2 becomes active for both groups, leaving R1 idle on that interface. Here’s what it looks like now:
R1#show standby brief
P indicates configured to preempt.
|
Interface Grp Pri P State Active Standby Virtual IP
Gi2 1 100 Standby 192.168.12.2 local 192.168.12.254
Gi2 2 100 Standby 192.168.12.2 local 192.168.12.253
R2#show standby brief
P indicates configured to preempt.
|
Interface Grp Pri P State Active Standby Virtual IP
Gi2 1 100 Active local 192.168.12.1 192.168.12.254
Gi2 2 100 Active local 192.168.12.1 192.168.12.253
R2 is now active for both groups. To split the load, we need to configure priority so each router wins a different group.
Setting Priority Per Group
To share the load, we raise R1’s priority for group 1 to 150, and R2’s priority for group 2 to 150. This way, each router “wins” one group and loses the other:
R1(config)#interface GigabitEthernet2
R1(config-if)#standby 1 priority 150
R1(config-if)#exit
R2(config)#interface GigabitEthernet2
R2(config-if)#standby 2 priority 150
R2(config-if)#exit
A higher priority alone doesn’t make a router take over an already-active peer. Priority only decides the election result when an election happens. At startup, or when the current active router fails. R2 already became active for group 1 before this priority change took effect, so R1 just sits in standby for group 1 despite now having the higher priority:
R1#show standby brief
P indicates configured to preempt.
|
Interface Grp Pri P State Active Standby Virtual IP
Gi2 1 150 Standby 192.168.12.2 local 192.168.12.254
Gi2 2 100 Standby 192.168.12.2 local 192.168.12.253
R2#show standby brief
P indicates configured to preempt.
|
Interface Grp Pri P State Active Standby Virtual IP
Gi2 1 100 Active local 192.168.12.1 192.168.12.254
Gi2 2 150 Active local 192.168.12.1 192.168.12.253
Notice R1 shows priority 150 for group 1, but the State column still says standby. Time to fix that.
Enabling Preemption
standby preempt tells the router to take over as Active immediately, the moment its priority becomes higher than the current Active router’s. Without preemption, a higher-priority router just sits in standby forever once another router is already active. For more on this, see HSRP Preemption. Let’s enable it:
R1(config)#interface GigabitEthernet2
R1(config-if)#standby 1 preempt
R1(config-if)#standby 2 preempt
R1(config-if)#exit
R2(config)#interface GigabitEthernet2
R2(config-if)#standby 1 preempt
R2(config-if)#standby 2 preempt
R2(config-if)#exit
As soon as we apply this, R1 sends a coup message and takes over as active for group 1, while R2 stays active for group 2.
Verification
Let’s verify our work.
show standby brief
This is the proof that MHSRP works. With priority and preempt configured, R1 is active for group 1 (H1’s gateway, 192.168.12.254) and standby for group 2. R2 is active for group 2 (H2’s gateway, 192.168.12.253) and standby for group 1. Each router is active for exactly one group. That’s load sharing in action, on the same physical interface:
R1#show standby brief
P indicates configured to preempt.
|
Interface Grp Pri P State Active Standby Virtual IP
Gi2 1 150 P Active local 192.168.12.2 192.168.12.254
Gi2 2 100 P Standby 192.168.12.2 local 192.168.12.253
R2#show standby brief
P indicates configured to preempt.
|
Interface Grp Pri P State Active Standby Virtual IP
Gi2 1 100 P Standby 192.168.12.1 local 192.168.12.254
Gi2 2 150 P Active local 192.168.12.1 192.168.12.253
R1 now serves H1’s default gateway, and R2 serves H2’s default gateway. Both routers actively forward traffic on the same shared subnet. That’s true load sharing without any VLANs or subinterfaces.
show standby
The detailed per-group output confirms the priority, preempt status, virtual MAC address, and group name for both groups on both routers. Let’s start with R1:
R1#show standby
GigabitEthernet2 - Group 1
State is Active
2 state changes, last state change 00:00:38
Virtual IP address is 192.168.12.254
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 2.336 secs
Preemption enabled
Active router is local
Standby router is 192.168.12.2, priority 100 (expires in 10.544 sec)
Priority 150 (configured 150)
Group name is "HSRP-GROUP1" (cfgd)
FLAGS: 1/1
GigabitEthernet2 - Group 2
State is Standby
1 state change, last state change 00:01:32
Virtual IP address is 192.168.12.253
Active virtual MAC address is 0000.0c07.ac02 (MAC Not In Use)
Local virtual MAC address is 0000.0c07.ac02 (v1 default)
Hello time 3 sec, hold time 10 sec
Next hello sent in 2.384 secs
Preemption enabled
Active router is 192.168.12.2, priority 150 (expires in 7.248 sec)
Standby router is local
Priority 100 (default 100)
Group name is "HSRP-GROUP2" (cfgd)
FLAGS: 0/1
Now the same command on R2.:
R2#show standby
GigabitEthernet2 - Group 1
State is Standby
4 state changes, last state change 00:00:27
Virtual IP address is 192.168.12.254
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.584 secs
Preemption enabled
Active router is 192.168.12.1, priority 150 (expires in 11.408 sec)
Standby router is local
Priority 100 (default 100)
Group name is "HSRP-GROUP1" (cfgd)
FLAGS: 0/1
GigabitEthernet2 - Group 2
State is Active
2 state changes, last state change 00:01:41
Virtual IP address is 192.168.12.253
Active virtual MAC address is 0000.0c07.ac02 (MAC In Use)
Local virtual MAC address is 0000.0c07.ac02 (v1 default)
Hello time 3 sec, hold time 10 sec
Next hello sent in 0.304 secs
Preemption enabled
Active router is local
Standby router is 192.168.12.1, priority 100 (expires in 10.608 sec)
Priority 150 (configured 150)
Group name is "HSRP-GROUP2" (cfgd)
FLAGS: 1/1
Notice that the two groups have completely different virtual MAC addresses: 0000.0c07.ac01 for group 1, 0000.0c07.ac02 for group 2, even though they live on the same physical interface. That’s what lets the switch learn each group’s virtual MAC on a different port when a different router is active for it.
You can also look at each individual group. Here is R1:
R1#show standby GigabitEthernet2 1
GigabitEthernet2 - Group 1
State is Active
2 state changes, last state change 00:00:38
Virtual IP address is 192.168.12.254
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 2.560 secs
Preemption enabled
Active router is local
Standby router is 192.168.12.2, priority 100 (expires in 10.768 sec)
Priority 150 (configured 150)
Group name is "HSRP-GROUP1" (cfgd)
FLAGS: 1/1
And here is R2, which is Active for group 2 with priority 150:
R2#show standby GigabitEthernet2 2
GigabitEthernet2 - Group 2
State is Active
2 state changes, last state change 00:01:41
Virtual IP address is 192.168.12.253
Active virtual MAC address is 0000.0c07.ac02 (MAC In Use)
Local virtual MAC address is 0000.0c07.ac02 (v1 default)
Hello time 3 sec, hold time 10 sec
Next hello sent in 0.208 secs
Preemption enabled
Active router is local
Standby router is 192.168.12.1, priority 100 (expires in 10.512 sec)
Priority 150 (configured 150)
Group name is "HSRP-GROUP2" (cfgd)
FLAGS: 1/1
ARP
On R1, the virtual IP for group 1 (192.168.12.254) resolves to virtual MAC 0000.0c07.ac01, since R1 is active for that group. On R2, the virtual IP for group 2 (192.168.12.253) resolves to virtual MAC 0000.0c07.ac02, since R2 is active for that group. Each router only installs an ARP entry for the virtual IP of the group it’s active for. R1 doesn’t show an entry for 192.168.12.253, and R2 doesn’t show one for 192.168.12.254. We can see it on the routers:
R1#show arp
Protocol Address Age (min) Hardware Addr Type Interface
Internet 192.168.12.1 - 0c00.5fbb.5c01 ARPA GigabitEthernet2
Internet 192.168.12.2 9 0c00.17e9.9201 ARPA GigabitEthernet2
Internet 192.168.12.254 - 0000.0c07.ac01 ARPA GigabitEthernet2
Internet 192.168.13.1 - 0c00.19a6.8c02 ARPA GigabitEthernet3
Internet 192.168.13.3 9 0c00.0807.0101 ARPA GigabitEthernet3
R2#show arp
Protocol Address Age (min) Hardware Addr Type Interface
Internet 192.168.12.1 9 0c00.5fbb.5c01 ARPA GigabitEthernet2
Internet 192.168.12.2 - 0c00.17e9.9201 ARPA GigabitEthernet2
Internet 192.168.12.253 - 0000.0c07.ac02 ARPA GigabitEthernet2
Internet 192.168.23.2 - 0c00.b3f9.5902 ARPA GigabitEthernet3
Internet 192.168.23.3 9 0c00.9278.6302 ARPA GigabitEthernet3
MAC Address Table
We can also look at the MAC address table of SW1.
SW1 learns each HSRP virtual MAC on a different port: group 1’s virtual MAC (0000.0c07.ac01) on the port toward R1 (Et0/3), and group 2’s virtual MAC (0000.0c07.ac02) on the port toward R2 (Et1/0). This confirms two independent forwarding paths exist for the two HSRP groups on the same shared segment. Here it is:
SW1#show mac address-table
Mac Address Table
-------------------------------------------
Vlan Mac Address Type Ports
---- ----------- -------- -----
1 0000.0c07.ac01 DYNAMIC Et0/3
1 0000.0c07.ac02 DYNAMIC Et1/0
1 0c00.17e9.9201 DYNAMIC Et1/0
1 0c00.5fbb.5c01 DYNAMIC Et0/3
1 aac1.ab53.44e6 DYNAMIC Et0/2
1 aac1.ab58.9a78 DYNAMIC Et0/3
1 aac1.ab6b.be93 DYNAMIC Et1/0
1 aac1.ab6d.f236 DYNAMIC Et1/0
1 aac1.ab9b.5702 DYNAMIC Et0/1
1 aac1.abb6.7a38 DYNAMIC Et0/2
1 aac1.abc6.1bfb DYNAMIC Et0/3
1 aac1.abf3.24d6 DYNAMIC Et0/1
Total Mac Addresses for this criterion: 12
Ping and Traceroute
The final proof of load sharing comes from the two end hosts. Each host’s default gateway is a different HSRP virtual IP:
- H1 uses 192.168.12.254 (group 1, Active on R1).
- H2 uses 192.168.12.253 (group 2, Active on R2).
A trace from each host toward R3’s loopback should show a different first-hop router, confirming H1’s traffic egresses via R1 and H2’s traffic egresses via R2. First, a simple ping confirms basic reachability from each host:
lab@H1:~$ ping -c 4 3.3.3.3
PING 3.3.3.3 (3.3.3.3) 56(84) bytes of data.
64 bytes from 3.3.3.3: icmp_seq=2 ttl=254 time=0.617 ms
64 bytes from 3.3.3.3: icmp_seq=3 ttl=254 time=0.703 ms
64 bytes from 3.3.3.3: icmp_seq=4 ttl=254 time=0.675 ms
--- 3.3.3.3 ping statistics ---
4 packets transmitted, 3 received, 25% packet loss, time 3075ms
rtt min/avg/max/mdev = 0.617/0.665/0.703/0.035 ms
lab@H2:~$ ping -c 4 3.3.3.3
PING 3.3.3.3 (3.3.3.3) 56(84) bytes of data.
64 bytes from 3.3.3.3: icmp_seq=2 ttl=254 time=0.623 ms
64 bytes from 3.3.3.3: icmp_seq=3 ttl=254 time=0.491 ms
64 bytes from 3.3.3.3: icmp_seq=4 ttl=254 time=0.657 ms
--- 3.3.3.3 ping statistics ---
4 packets transmitted, 3 received, 25% packet loss, time 3075ms
rtt min/avg/max/mdev = 0.491/0.590/0.657/0.071 ms
This works, but ping alone doesn’t tell us which router forwarded the traffic. For that, we need a traceroute. Let’s try this on H1:
lab@H1:~$ nping --icmp --traceroute -c 4 3.3.3.3
Starting Nping 0.7.80 ( https://nmap.org/nping )
SENT (0.0101s) ICMP [192.168.12.10 > 3.3.3.3 Echo request (type=8/code=0) id=55128 seq=1] IP [ttl=1 id=59536 iplen=28 ]
RCVD (0.0257s) ICMP [192.168.12.1 > 192.168.12.10 TTL=0 during transit (type=11/code=0) ] IP [ttl=255 id=0 iplen=56 ]
SENT (1.0107s) ICMP [192.168.12.10 > 3.3.3.3 Echo request (type=8/code=0) id=55128 seq=2] IP [ttl=2 id=59536 iplen=28 ]
RCVD (1.0114s) ICMP [3.3.3.3 > 192.168.12.10 Echo reply (type=0/code=0) id=55128 seq=2] IP [ttl=254 id=59536 iplen=28 ]
SENT (2.0117s) ICMP [192.168.12.10 > 3.3.3.3 Echo request (type=8/code=0) id=55128 seq=3] IP [ttl=3 id=59536 iplen=28 ]
RCVD (2.0126s) ICMP [3.3.3.3 > 192.168.12.10 Echo reply (type=0/code=0) id=55128 seq=3] IP [ttl=254 id=59536 iplen=28 ]
SENT (3.0136s) ICMP [192.168.12.10 > 3.3.3.3 Echo request (type=8/code=0) id=55128 seq=4] IP [ttl=4 id=59536 iplen=28 ]
RCVD (3.0145s) ICMP [3.3.3.3 > 192.168.12.10 Echo reply (type=0/code=0) id=55128 seq=4] IP [ttl=254 id=59536 iplen=28 ]
Max rtt: 15.587ms | Min rtt: 0.675ms | Avg rtt: 4.477ms
Raw packets sent: 4 (112B) | Rcvd: 4 (140B) | Lost: 0 (0.00%)
Nping done: 1 IP address pinged in 3.02 seconds
The first hop reported back to H1 is 192.168.12.1 ,R1, exactly as expected, since R1 is active for HSRP group 1 (H1’s gateway). By TTL 2, the packet already reaches R3’s loopback directly, confirming the OSPF path from R1 onward is just one more hop.
Now the same trace from H2:
lab@H2:~$ nping --icmp --traceroute -c 4 3.3.3.3
Starting Nping 0.7.80 ( https://nmap.org/nping )
SENT (0.0100s) ICMP [192.168.12.20 > 3.3.3.3 Echo request (type=8/code=0) id=20575 seq=1] IP [ttl=1 id=18232 iplen=28 ]
RCVD (0.0238s) ICMP [192.168.12.2 > 192.168.12.20 TTL=0 during transit (type=11/code=0) ] IP [ttl=255 id=0 iplen=56 ]
SENT (1.0108s) ICMP [192.168.12.20 > 3.3.3.3 Echo request (type=8/code=0) id=20575 seq=2] IP [ttl=2 id=18232 iplen=28 ]
RCVD (1.0114s) ICMP [3.3.3.3 > 192.168.12.20 Echo reply (type=0/code=0) id=20575 seq=2] IP [ttl=254 id=18232 iplen=28 ]
SENT (2.0118s) ICMP [192.168.12.20 > 3.3.3.3 Echo request (type=8/code=0) id=20575 seq=3] IP [ttl=3 id=18232 iplen=28 ]
RCVD (2.0127s) ICMP [3.3.3.3 > 192.168.12.20 Echo reply (type=0/code=0) id=20575 seq=3] IP [ttl=254 id=18232 iplen=28 ]
SENT (3.0137s) ICMP [192.168.12.20 > 3.3.3.3 Echo request (type=8/code=0) id=20575 seq=4] IP [ttl=4 id=18232 iplen=28 ]
RCVD (3.0145s) ICMP [3.3.3.3 > 192.168.12.20 Echo reply (type=0/code=0) id=20575 seq=4] IP [ttl=254 id=18232 iplen=28 ]
Max rtt: 13.776ms | Min rtt: 0.575ms | Avg rtt: 3.997ms
Raw packets sent: 4 (112B) | Rcvd: 4 (140B) | Lost: 0 (0.00%)
Nping done: 1 IP address pinged in 3.02 seconds
H2’s first hop is 192.168.12.2 R2, since R2 is active for HSRP group 2 (H2’s gateway). Both hosts sit on the same 192.168.12.0/24 subnet, yet each one’s traffic egresses through a different router: H1 via R1, H2 via R2. This is the whole point of MHSRP load sharing: two gateways actively forwarding traffic on one shared segment, with no VLANs or subinterfaces involved.
Configurations
Want to take a look for yourself? Here you will find the final configuration of each device.
R1
hostname R1
!
ip cef
!
interface GigabitEthernet2
description Shared segment toward SW1/H1/H2
ip address 192.168.12.1 255.255.255.0
standby 1 ip 192.168.12.254
standby 1 priority 150
standby 1 preempt
standby 1 name HSRP-GROUP1
standby 2 ip 192.168.12.253
standby 2 preempt
standby 2 name HSRP-GROUP2
!
interface GigabitEthernet3
description Link to R3
ip address 192.168.13.1 255.255.255.0
!
router ospf 1
router-id 1.1.1.1
network 192.168.12.0 0.0.0.255 area 0
network 192.168.13.0 0.0.0.255 area 0
!
end
R2
hostname R2
!
ip cef
!
interface GigabitEthernet2
description Shared segment toward SW1/H1/H2
ip address 192.168.12.2 255.255.255.0
standby 1 ip 192.168.12.254
standby 1 preempt
standby 1 name HSRP-GROUP1
standby 2 ip 192.168.12.253
standby 2 priority 150
standby 2 preempt
standby 2 name HSRP-GROUP2
!
interface GigabitEthernet3
description Link to R3
ip address 192.168.23.2 255.255.255.0
!
router ospf 2
router-id 2.2.2.2
network 192.168.12.0 0.0.0.255 area 0
network 192.168.23.0 0.0.0.255 area 0
!
end
R3
hostname R3
!
ip cef
!
interface Loopback0
ip address 3.3.3.3 255.255.255.255
!
interface GigabitEthernet2
description Link to R1
ip address 192.168.13.3 255.255.255.0
!
interface GigabitEthernet3
description Link to R2
ip address 192.168.23.3 255.255.255.0
!
router ospf 3
router-id 3.3.3.3
network 3.3.3.3 0.0.0.0 area 0
network 192.168.13.0 0.0.0.255 area 0
network 192.168.23.0 0.0.0.255 area 0
!
end
Conclusion
You have now learned how Multigroup HSRP (MHSRP) lets two independent HSRP groups run on a single physical interface. This lets two routers on the same shared subnet each act as Active gateway for a different group, instead of leaving one router idle.
We configured standby 1 and standby 2 on R1 and R2’s shared interface, tuned priority and standby preempt so each router won one group, and verified the split with show standby briefARP entries, switch MAC tables, and traceroutes from H1 and H2 showing traffic egress through different gateways. I hope you enjoyed this lesson. If you have any questions, please leave a comment!