How to Configure HSRP on a Cisco Router (with GNS3 lab)
On januari 23, 2022 by adminHot Standby Routing Protocol of HSRP, is een door Cisco ontwikkeld protocol waarmee twee of meer routers kunnen samenwerken om één IP-adres voor een bepaald netwerk te vertegenwoordigen. HSRP, evenals Virtual Route Redundancy Protocol (VRRP) worden beschouwd als netwerkdiensten met hoge beschikbaarheid die een bijna onmiddellijke fail over naar een secundaire interface mogelijk maken wanneer de primaire interface onbeschikbaar wordt. De HSRP configuratie kan soms lastig zijn, dus dit artikel zal de fundamentele punten behandelen en ook een GNS3 lab presenteren.
HSRP is een van de zogenaamde FHRP of “First Hop Redundancy Protocols”. U kunt meer over FHRP lezen in dit nieuwe artikel.
HSRP is een vrij eenvoudig concept dat werkt door één router binnen een HSRP-groep als de primaire, of actieve router te laten kiezen. Die primaire router behandelt alle routeringsverzoeken, terwijl de andere routers binnen de HSRP-groep gewoon in een stand-by-status wachten. Deze stand-by routers blijven klaar staan om alle verkeerslast op zich te nemen als de primaire router onbeschikbaar wordt. In dit scenario biedt HSRP een hoge beschikbaarheid van het netwerk, omdat het IP-verkeer routeert zonder afhankelijk te zijn van een enkele router.
Om echt de puntjes op de i van HSRP te zetten, moet RFC 2281 worden geraadpleegd voor alle details over de werking van dit veelgebruikte protocol.
De hosts die het HSRP-adres als gateway gebruiken, kennen nooit het werkelijke fysieke IP- of MAC-adres van de routers in de groep. Alleen het virtuele IP adres dat binnen de HSRP configuratie is gecreëerd samen met een virtueel MAC adres is bekend bij andere hosts op het netwerk.
Basis HSRP Configuratie
Voordat we meer geavanceerde HSRP concepten bespreken, laten we een basis HSRP configuratie maken om een idee te krijgen hoe dit allemaal werkt. Voor dit scenario gebruiken we de onderstaande topologie:
De GNS3 topologie opzet ziet er als volgt uit:
Het bestaat uit slechts twee routers (R1 en R2) die fungeren als de standaard gateway voor het 192.168.1.0/24 netwerk. Slechts één van deze routers zal op een bepaald moment actief zijn met een virtueel IP-adres van 192.168.1.1. Dit betekent dat alle apparaten op het 192.168.1.0/24 segment (b.v. PC1) met dit virtuele IP-adres zullen worden geconfigureerd.
Note: Houd in gedachten dat één of beide van deze routers ook meerlaagse schakelaars kunnen zijn, zoals een Cisco 6509 of 3750. Maar laten we ze voor deze discussie gewoon routers noemen.
Om een basis HSRP configuratie te bereiken, moet u het volgende doen:
- Configureer een normaal IP adres op de interface (kan niet hetzelfde zijn als het HSRP virtuele IP)
- Breng de interface up (geen shutdown)
- Configureer de HSRP groep en het virtuele IP adres met behulp van het standby commando
In dit voorbeeld hebben we een HSRP groep “1” geconfigureerd. Dit groepsnummer kan elk getal tussen 0 en 255 zijn (HSRP versie 1) en de enige vereiste is dat u hetzelfde nummer moet gebruiken voor alle apparaten in dezelfde HSRP-groep.
We kunnen het commando show standby gebruiken om de status van onze HSRP-configuratie te zien.R1#show standby
FastEthernet0/0 - Group 1
State is Active
2 state changes, last state change 00:23:53
Virtual IP address is 192.168.1.1
Active virtual MAC address is 0000.0c07.ac01
Local virtual MAC address is 0000.0c07.ac01 (v1 default)
Hello time 3 sec, hold time 10 sec
Next hello sent in 0.852 secs
Preemption disabled
Active router is local
Standby router is 192.168.1.12, priority 100 (expires in 7.452 sec)
Priority 100 (default 100)
Group name is "hsrp-Fa0/0-1" (default)
R1#R2#show standby
FastEthernet0/0 - Group 1
State is Standby
1 state change, last state change 00:23:59
Virtual IP address is 192.168.1.1
Active virtual MAC address is 0000.0c07.ac01
Local virtual MAC address is 0000.0c07.ac01 (v1 default)
Hello time 3 sec, hold time 10 sec
Next hello sent in 0.340 secs
Preemption disabled
Active router is 192.168.1.11, priority 100 (expires in 7.920 sec)
Standby router is local
Priority 100 (default 100)
Group name is "hsrp-Fa0/0-1" (default)
Merk op dat R1 de actieve router is terwijl R2 standby staat. In het ideale geval wordt, bij gelijke prioriteit, de router met het hoogste IP-adres gekozen als actieve router. Ik heb R1 echter eerst geconfigureerd en deze werd actief voordat R2 aan boord kwam. Aangezien R2 dezelfde prioriteit heeft als R1, zal R2 niet actief worden, ook al heeft deze een hoger IP-adres (192.168.1.12 > 192.168.1.11).
We zullen het later in dit artikel hebben over prioriteit en preemption.
Note: Bij het beantwoorden van traceroute wordt het IP-adres van de fysieke interface gebruikt, niet het virtuele IP-adres. Controleer deze link voor meer informatie.
Merk op hoe het verkeer door R2 (192.168.1.12) stroomt. Als we het show standby commando nogmaals controleren, zien we dat R2 nu de actieve router is:R2#show standby
FastEthernet0/0 - Group 1
State is Active
2 state changes, last state change 00:04:33
Virtual IP address is 192.168.1.1
Active virtual MAC address is 0000.0c07.ac01
Local virtual MAC address is 0000.0c07.ac01 (v1 default)
Hello time 3 sec, hold time 10 sec
Next hello sent in 2.152 secs
Preemption disabled
Active router is local
Standby router is unknown
Priority 100 (default 100)
Group name is "hsrp-Fa0/0-1" (default)
Routing met HSRP
Ik heb besloten om een kleine omweg te nemen om te praten over routing wanneer HSRP is geconfigureerd. Er zijn een paar dingen om op te merken:
- Routes worden niet gerepliceerd tussen HSRP routers. Dit betekent dat R1 en R2 (individueel) moeten weten hoe ze het 8.8.8.8 netwerk kunnen bereiken dat in ons voorbeeld wordt gebruikt. In ons geval bereiken we dit door een standaard route naar 192.0.2.1 (EXT_RTR) op zowel R1 als R2 te configureren.
- Ondanks dat verkeer van PC1 naar 8.8.8.8 door de actieve HSRP-router zal stromen, zal het retourverkeer een probleem zijn. Omdat routeren (standaard) op basis van bestemming gebeurt, zal EXT_RTR zijn routeringstabel raadplegen om te bepalen hoe het antwoord van 8.8.8.8 naar PC1 (192.168.1.100) moet worden doorgestuurd. Afhankelijk van hoe je dit configureert, zal EXT_RTR altijd R1 gebruiken, altijd R2 gebruiken of zowel R1 als R2 gebruiken. Dit kan leiden tot asymmetrische routering en/of blackholing van verkeer. Een manier om dit probleem te omzeilen is door NAT te configureren, maar dat valt buiten het bestek van dit artikel. Voor dit artikel heb ik twee statische routes voor het 192.168.1.0/24 netwerk op EXT_RTR geconfigureerd: één die naar R1 wijst en de andere die naar R2 wijst. Dit betekent dat EXT_RTR load balanceert tussen R1 en R2.
HSRP Prioriteit: Controlling the Active Router
Er zijn meer HSRP waarden die u van tijd tot tijd zult moeten veranderen om volledige controle over uw netwerkverkeer te verzekeren. Wat bijvoorbeeld als we zouden willen dat R1 de Actieve router is in plaats van R2? Om een bepaalde router te dwingen de actieve router in een HSRP-groep te zijn, dien je het commando priority te gebruiken.
De standaard prioriteit is 100. De hogere prioriteit bepaalt welke router actief is. Als beide routers op dezelfde prioriteit zijn ingesteld, wordt de eerste router die opkomt de actieve router.
Note: Hoewel we de prioriteit van R1 hebben verhoogd, blijft deze in de stand-by modus omdat preemption is uitgeschakeld. We zullen het hierna over preemption hebben.
HSRP Preempt: Avoid Fail-Back
In ons scenario hierboven, als R1 faalt, zal R2 actief worden zoals we hebben gezien. Dit is perfect! Maar, als R1 terug opkomt en terug in dienst komt, zal R2 actief blijven. Dit is misschien niet het gedrag dat de voorkeur geniet. Er zijn momenten waarop U zou willen dat R1 altijd in een actieve toestand is in de HSRP groep. Cisco biedt een manier om dit te regelen door het preempt commando te gebruiken. Preempt dwingt een router actief te zijn na herstel van een storing.
Advanced HSRP Configuration – Load Balancing
Dus nu kun je zien hoe geweldig HSRP is en hoe het ons in staat stelt hoge beschikbaarheid te hebben tussen meerdere routers voor een enkel netwerk. Maar onze standby routers doen niets en zitten daar maar! Afhankelijk van het router model dat je gebruikt, kan dit een hoop geld zijn dat gewoon inactief is.
Note: Het is ook belangrijk om in gedachten te houden dat als er iets gebeurt met een van de apparaten in een High Availability paar, dan moet het andere apparaat in staat zijn om de netwerk belasting aan te kunnen.
Om dit probleem op te lossen, kunnen we HSRP configureren om load balanced te zijn tussen routers. Dit helpt ons niet met een enkele HSRP groep, maar voor meerdere HSRP groepen kunnen we de belasting spreiden en elke HSRP groep op verschillende routers actief laten zijn.
Door meerdere HSRP groepen op een enkele interface te configureren, kan HSRP load balancing worden bereikt.
Voor ons voorbeeld, laten we PC2 aan de lab opstelling toevoegen. Voor de uitleg, zullen we HSRP groep 1 “netwerk-één” noemen en HSRP groep 2 “netwerk-twee”. R1 zal actief zijn voor netwerk-één, terwijl R2 actief zal zijn voor netwerk-twee. Dit betekent dat R1 stand-by zal zijn voor netwerk-twee terwijl R2 stand-by zal zijn voor netwerk-één.
De volledige configuratie op R1 is als volgt:interface FastEthernet0/0
ip address 192.168.1.11 255.255.255.0
standby 1 ip 192.168.1.1
standby 1 priority 200
standby 1 preempt
standby 1 name network-one
standby 2 ip 192.168.1.2
standby 2 name network-two
De volledige configuratie op R2 is als volgt:interface FastEthernet0/0
ip address 192.168.1.12 255.255.255.0
standby 1 ip 192.168.1.1
standby 1 name network-one
standby 2 ip 192.168.1.2
standby 2 priority 200
standby 2 preempt
standby 2 name network-two
Met deze configuratie kunnen we elke router voor ons laten werken en pakketten laten doorsturen om onze investering in onze netwerkapparatuur zo goed mogelijk te benutten. We hebben ook het commando HSRP-groepsnaam toegevoegd om elke HSRP-groep beter te kunnen beschrijven. Dit kan een levensredder zijn wanneer u verschillende HSRP-groepen hebt die u moet volgen.
Merk op dat PC1 R1 gebruikt terwijl PC2 R2 gebruikt. Load balancing bereikt!
Een laatste opmerking over HSRP standby groepen. U kunt meerdere interfaces en netwerken configureren met hetzelfde standby groep nummer als het benodigde failover gedrag hetzelfde is.
Maar als u een ander gedrag nodig heeft, dus een andere prioriteit, preempt, etc., (zoals te zien in ons load balanced scenario hierboven) dan is een aparte groep nodig.
Gemeenschappelijke problemen met HSRP
Om dit artikel over HSRP af te ronden, laten we snel een aantal veel voorkomende problemen met HSRP belichten. Dit kan dienen als een soort checklist bij het troubleshooten van HSRP. De problemen omvatten:
- HSRP-routers die zich niet op hetzelfde netwerksegment bevinden.
- HSRP-routers die niet zijn geconfigureerd met IP-adressen uit hetzelfde subnet.
- HSRP-configuratieproblemen zoals standby-groepen en virtuele IP’s die niet overeenkomen op de HSRP-routers.
Conclusie
Er is veel meer mogelijk met HSRP dan in dit artikel is behandeld, waaronder:
- Inzicht in hoe HSRP werkt
- Interface tracking
- Authenticatie
Voor nu hebben we u een goede basis willen geven voor de configuratie van HSRP op een Cisco-router.
Geef een antwoord