Cisco: Erhöhung der Ausfallsicherheit mit HSRP

HSRP

HSRP ist ein Cisco-eigenes Protokoll, welches eingesetzt wird um die Ausfallsicherheit im Netzwerk zu erhöhen. Es steht für Hot Standby Router Protocol und arbeit nach dem Prinzip, dass eine Layer3-fähige Komponente – Router oder Switch – aktiv ist und der andere wiederrum standby bzw. passiv ist.

Attention: For the english version, click here!

Fällt beispielsweise der erste Switch aus, erfolgt weiterhin eine Kommunikation, da dann der eigentlich passive Switch aktiv wird. Voraussetzung hierbei ist natürlich eine gleiche bzw. sinngemäße Routing- und Schnittstellenkonfiguration.

Konfiguration von HSRP

Bei dem Testaufbau wurden zwei Cisco ISR 4331 verwendet.

Router 1

Wenn wir uns das Netzwerkdiagramm anschauen, dann ist die Schnittstelle GigabitEthernet0/0/1, die getracked werden soll. Das heißt, fällt diese Verbindung oder das Gerät aus, soll der Verkehr über den jeweils anderen Router bzw. L3-Switch gehen. Dies wird über das erste Kommando realisiert. Je nach Gerät wird das Tracking auch auf der Schnittstelle mit standby 1 track GigabitEthernet0/0/1 eingerichtet.

Weiter zur Konfiguration auf dem Interface GigabitEthernet0/0/0. Als Erstes muss die Schnittstelle eine IP-Adresse im entsprechendenn Netz haben.

Über den Befehl standby 1 ip 192.168.1.1 wird HSRP realisiert und ein virtuelles Gateway erzeugt. Die 1 in dem Befehl steht für die HSRP-Gruppe.

Im Anschluss lässt sich eine Priorität festlegen. Der Router mit der höchsten Priorität ist der aktive Router. Das wiederrum wird durch den Befehl standby 1 preempt umgesetzt.

Tritt der Fall ein, dass GigabitEthernet0/0/1 wegbricht, soll die Priorität um 10 reduziert werden. Das heißt von 105 auf 95. Dadurch wird dann die zweite Komponente (Priorität 100) auf aktiv gesetzt.

Nun kann man die default timer etwas anpassen. In diesem Fall werden alle 50msek Hello-Pakete zwischen den Routern ausgetauscht. Sind 150msek vergangen, in den Router 1 unerreichbar ist, übernimmt Router 2 die aktive Rolle.

Hier wird HSRP Version 2 eingesetzt. Die genauen Unterschiede führe ich weiter unten im Artikel auf.

Wie weiter oben schon erwähnt, kann das Tracking auch auf der Schnittstelle eingerichtet werden. Das ist abhängig von Gerät und IOS-Version.

Zum Abschluss muss der Port mittels no shutdown noch hochgefahren werden. Damit wäre Router 1 konfiguriert.

R1(config)#track 100 interface GigabitEthernet0/0/1 ip routing 

R1(config)interface GigabitEthernet0/0/0
R1(config-if)#ip address 192.168.1.2 255.255.255.0
R1(config-if)#standby 1 ip 192.168.1.1 
R1(config-if)#standby 1 priority 105 
R1(config-if)#standby 1 preempt 
R1(config-if)#standby 1 track 100 decrement 10 
R1(config-if)#standby 1 timers msec 50 msec 150 
R1(config-if)#standby version 2
R1(config-if)#standby 1 track GigabitEthernet0/0/1 >> Falls es das IOS zulässt!!!
R1(config-if)#no shutdown

Router 2

Der zweite Router/L3-Switch wird gleichermaßen konfiguriert, außer dass hier die Priorität auf 100 gesetzt ist.

R2(config)#track 100 interface GigabitEthernet0/0/1 ip routing 

R2(config)interface GigabitEthernet0/0/0
R2(config-if)#ip address 192.168.1.2 255.255.255.0
R2(config-if)#standby 1 ip 192.168.1.1 
R2(config-if)#standby 1 priority 100 
R2(config-if)#standby 1 preempt 
R2(config-if)#standby 1 track 100 decrement 10 
R2(config-if)#standby 1 timers msec 50 msec 150
R2(config-if)#standby version 2
R2(config-if)#no shutdown

Unterschiede zwischen HSRP Version 1 und 2

Ein wichtiger Unterschied ist die Einstellung der Timer von Sekunden unter Version 1 auf Millisekunden. So ist natürlich ein schnellerer Austausch zwischen den Komponenten möglich. Auch die Übernahmezeit ist so schneller möglich.

Außerdem sind wesentlich mehr HSRP-Gruppen möglich. Unter Version ging der Bereich nur von 1 bis 255. Mit HSRPv2 ist es möglich HSRP-Gruppen von 1 bis 4095 zu vergeben.

Zum Versenden der Hello-Pakete wurde bisher die Multicast-Adresse 224.0.0.2 verwendet, welche zu Probleme mit dem Cisco Group Management Protocol (CGMP) führen konnte. Unter Version 2 wird die Adresse 224.0.0.102 verwendet.

In Version 2 wurde auch das Management/Troubleshooting vereinfacht. In Version 1 konnte man anhand der Hello-Pakete nicht den Sender identifizieren. Mit Version 2 ist das möglich, um bei eventuellen Fehlern leichter sich zwischen all den Gruppen und Hello-Pakete zurechtfinden zu können.

Viel Spaß beim Ausprobieren!


Cisco: Enhancing Fault Tolerance with HSRP

Hot Standby Router Protocol (HSRP) is a Cisco proprietary protocol designed to provide high availability and fault tolerance in network environments. HSRP enables a group of routers to work together in a virtual router redundancy group, with one router acting as the active router and others as standby routers.

Configuration of HSRP

The test setup used two Cisco ISR 4331 routers.

Router 1

Looking at the network diagram, the interface GigabitEthernet0/0/1 needs to be tracked. This means that if this connection or device fails, traffic should be redirected to the other router or L3 switch. This is achieved using the first command. Depending on the device, tracking can also be configured on the interface with „standby 1 track GigabitEthernet0/0/1“.

Moving on to the configuration on interface GigabitEthernet0/0/0. First, the interface needs to have an IP address in the corresponding network.

The command „standby 1 ip 192.168.1.1“ implements HSRP and creates a virtual gateway. The number „1“ in the command represents the HSRP group.

Next, a priority can be set. The router with the highest priority becomes the active router. This is achieved using the command „standby 1 preempt“.

If GigabitEthernet0/0/1 fails, the priority should be reduced by 10. That means it goes from 105 to 95. This action will activate the second component (priority 100).

Now, the default timers can be adjusted slightly. In this case, hello packets are exchanged between the routers every 50 milliseconds. If 150 milliseconds pass without reaching Router 1, Router 2 takes on the active role.

HSRP Version 2 is being used here. The exact differences will be explained later in the article.

As mentioned earlier, tracking can also be configured on the interface. This depends on the device and IOS version.

Finally, the port needs to be brought up using the „no shutdown“ command. With that, Router 1 is configured.

R1(config)#track 100 interface GigabitEthernet0/0/1 ip routing 

R1(config)interface GigabitEthernet0/0/0
R1(config-if)#ip address 192.168.1.2 255.255.255.0
R1(config-if)#standby 1 ip 192.168.1.1 
R1(config-if)#standby 1 priority 105 
R1(config-if)#standby 1 preempt 
R1(config-if)#standby 1 track 100 decrement 10 
R1(config-if)#standby 1 timers msec 50 msec 150 
R1(config-if)#standby version 2
R1(config-if)#standby 1 track GigabitEthernet0/0/1 >> If the IOS allows it!!!
R1(config-if)#no shutdown

Router 2

The second router/L3 switch is configured in a similar manner, except that the priority is set to 100.

R2(config)#track 100 interface GigabitEthernet0/0/1 ip routing 

R2(config)interface GigabitEthernet0/0/0
R2(config-if)#ip address 192.168.1.2 255.255.255.0
R2(config-if)#standby 1 ip 192.168.1.1 
R2(config-if)#standby 1 priority 100 
R2(config-if)#standby 1 preempt 
R2(config-if)#standby 1 track 100 decrement 10 
R2(config-if)#standby 1 timers msec 50 msec 150
R2(config-if)#standby version 2
R2(config-if)#no shutdown

Differences between HSRP Version 1 and 2

One important difference is the setting of timers from seconds in Version 1 to milliseconds in Version 2. This allows for faster exchange between the components and enables quicker takeover time.

Additionally, HSRP Version 2 allows for a significantly larger number of HSRP groups. In Version 1, the range was limited from 1 to 255. With HSRPv2, it is possible to assign HSRP groups from 1 to 4095.

In Version 1, the multicast address 224.0.0.2 was used for sending Hello packets, which could cause issues with the Cisco Group Management Protocol (CGMP). In Version 2, the address 224.0.0.102 is used instead.

Version 2 also introduced simplified management and troubleshooting. In Version 1, it was not possible to identify the sender based on the Hello packets. With Version 2, this is now possible, making it easier to navigate between the various groups and Hello packets in case of any errors.

Enjoy!

Start the discussion

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert