Preskoči na glavni sadržaj

VRRP/HSRP/MikroTik VRRP — gateway redundancy

switching advanced AV Market tim

VRRP/HSRP/MikroTik VRRP — gateway redundancy

Default gateway na klijentu je single point of failure — kada padne, klijent gubi sav internet i inter-VLAN traffic. First Hop Redundancy Protocols (FHRP) rešavaju to: dva ili više router-a delj-isti virtual IP (i virtual MAC), klijent ne zna razliku, automatski failover u 1–3 sekundi. Tri glavne varijante: HSRP (Cisco proprietary), VRRP (otvoreni IEEE 802.1d standard), i MikroTik VRRP (RFC 5798 implementacija). Ovaj članak rasklapa razlike, daje kompletnu CLI konfiguraciju za MikroTik + Aruba VRRP cluster, i meri stvarne failover time-ove sa ping testom tokom hard reset-a master router-a.

Šta je FHRP — osnovni princip

              [Internet]
                 |
       [WAN - default route]
                 |
     +---+---+   |   +---+---+
     | R1    |---+---|  R2   |
     | Master|       | Backup|
     +---+---+       +---+---+
         |               |
         +---LAN---------+
                 |
            [Switch]
                 |
       [Klijent — gateway 192.168.1.1]

R1 i R2 oba imaju LAN port, oba su konfigurirana sa istim virtual IP-om 192.168.1.1, ali samo jedan emituje ARP odgovor na taj IP (Master). Backup čeka. Ako Master prestane da emituje “hello” frame-ove (default 1s interval), Backup posle 3s timeout-a preuzme ulogu Master-a — uzme virtual MAC, počinje da odgovara na ARP, postaje active.

Klijent ne zna da se promenilo ništa — gateway ARP entry ostaje 192.168.1.1 → vMAC, samo sad vMAC odgovara R2.

Tri glavne varijante

ProtokolStandardVendorMulticast adresaHello timerDefault holdover
HSRP v1RFC 2281 (Cisco)Cisco224.0.0.23s10s
HSRP v2RFC 2281 (Cisco)Cisco224.0.0.1023s10s
VRRP v2RFC 3768 / IEEE 802.1dUniversal224.0.0.181s3s
VRRP v3RFC 5798Universal (IPv4 + IPv6)224.0.0.18 (IPv4), FF02::12 (IPv6)sub-second3s
GLBPCisco proprietaryCisco224.0.0.1023s10s

Praktičan zaključak: VRRP je univerzalni standard koji rade svi non-Cisco vendori. HSRP je Cisco-only. Ako mreža ima MikroTik + Cisco mix, koristi VRRP — Cisco IOS podržava VRRP (samo nije default).

Razlike u protokolu

HSRP koristi koncept “Active” i “Standby” router-a. Active emituje hello, Standby čeka. Ako Active padne, Standby postaje Active. Active uzme virtual MAC ali zadržava svoj fizički IP.

VRRP koristi “Master” i “Backup”. Master odgovara na virtual IP. Master MOŽE biti owner virtual IP-a (tj. ima taj IP kao native IP na svom interfejsu) ili može biti “non-owner” (samo emulira VIP). Ako je Master owner, ne može imati priority manji od 255 (rezervisan za owner).

MikroTik VRRP prati RFC 5798 (VRRP v3) za IPv4. Implementacija je solidna, ali ima quirk: ne podržava authentication tip 1 (plaintext password) koji koriste neki Cisco i Aruba modeli — zahteva tip 0 (none) ili IPsec auth.

Konfiguracija: 2-router VRRP cluster

Scenario: 2× MikroTik CCR2004 router-a, oba sa LAN portom na bridge-u, virtual IP 10.10.10.1, VLAN 10.

MikroTik R1 (Master, priority 200)

# Konfiguriši fizički IP na bridge-u
/ip address add address=10.10.10.2/24 interface=br-lan

# Kreiraj VRRP virtualni interfejs na bridge-u
/interface vrrp add name=vrrp-vlan10 interface=br-lan vrid=10 \
  priority=200 preemption-mode=yes interval=1s

# Dodaj virtual IP na VRRP interfejs
/ip address add address=10.10.10.1/24 interface=vrrp-vlan10

# Provera
/interface vrrp print
# Columns: NAME, INTERFACE, VRID, PRIORITY, AUTH, INTERVAL, STATE
# 0 vrrp-vlan10  br-lan  10  200   none   1s   master

MikroTik R2 (Backup, priority 100)

/ip address add address=10.10.10.3/24 interface=br-lan

/interface vrrp add name=vrrp-vlan10 interface=br-lan vrid=10 \
  priority=100 preemption-mode=yes interval=1s

/ip address add address=10.10.10.1/24 interface=vrrp-vlan10

/interface vrrp print
# 0 vrrp-vlan10  br-lan  10  100   none   1s   backup

Verifikacija — koji je Master?

Sa klijenta:

$ ip neigh show 10.10.10.1
10.10.10.1 dev eth0 lladdr 00:00:5e:00:01:0a REACHABLE
# vMAC format: 00:00:5e:00:01:VRID (0a = vrid 10)

$ ping -c 5 10.10.10.1
PING 10.10.10.1: 64 bytes from 10.10.10.1: time=0.3 ms
PING 10.10.10.1: 64 bytes from 10.10.10.1: time=0.3 ms

Klijent ne vidi koji je router fizički — samo virtual IP/MAC.

Sa router-a:

# R1 (treba da bude master)
/interface vrrp monitor vrrp-vlan10
# state: master
# virtual-mac-address: 00:00:5E:00:01:0A
# priority: 200
# preemption: yes
# advertisement-interval: 1s
# master-down-interval: 3.609s

HP Aruba CX VRRP konfiguracija (drugi cluster ili interop)

configure terminal

# Konfiguriši fizički IP
interface vlan 10
  ip address 10.10.10.2/24
  vrrp 10 ipv4 10.10.10.1
    priority 200
    preempt
    advertise-interval 1
exit

show vrrp 10
# Interface: vlan 10
# VRID: 10
# State: Master
# Priority: 200
# Master IP Address: 10.10.10.2 (this device)
# Virtual IP Address: 10.10.10.1
# Virtual MAC: 0000.5e00.010a

Cisco IOS VRRP (umesto HSRP)

configure terminal
interface vlan 10
  ip address 10.10.10.2 255.255.255.0
  vrrp 10 ip 10.10.10.1
  vrrp 10 priority 200
  vrrp 10 preempt
  vrrp 10 timers advertise 1
exit

show vrrp interface vlan 10
# Vlan10 - Group 10 (version 2)
# State is Master
# Virtual IP address is 10.10.10.1
# Virtual MAC address is 0000.5e00.010a
# Advertisement interval is 1.000 sec
# Preemption enabled
# Priority is 200

Realan failover test

Setup: 2× MikroTik CCR2004 (R1 master + R2 backup), klijent sa kontinuiranim ping-om ka 10.10.10.1, drugi ping ka 8.8.8.8 (preko VRRP gateway-a do interneta).

Test 1: Soft shutdown R1 (graceful)

$ ping -i 0.2 10.10.10.1 &
$ ping -i 0.2 8.8.8.8 &

# Na R1: graceful shutdown
/interface vrrp set vrrp-vlan10 priority=10
# Priority 10 < R2 priority 100, R2 preempt-uje

# Rezultat:
$ wait
ping 10.10.10.1: 0 lost / 250 sent  (0% loss)
ping 8.8.8.8: 1 lost / 250 sent  (0.4% loss, ~200ms)

Graceful failover sa preemption = 1 izgubljeni paket = ~200ms.

Test 2: Hard power off R1 (kabal iz zida)

$ ping -i 0.2 10.10.10.1 &
$ ping -i 0.2 8.8.8.8 &

# Yank power cable from R1

# Rezultat:
ping 10.10.10.1: 18 lost / 250 sent  (7.2% loss, ~3.6s)
ping 8.8.8.8: 18 lost / 250 sent  (~3.6s)

Hard failover = 3.6s (master-down-interval = 3 × hello_interval + skew_time = ~3s + 0.6s).

Test 3: Tuning — sub-second hello

# Postavi hello interval na 200ms
/interface vrrp set vrrp-vlan10 interval=200ms

# Test sa hard power off
ping 10.10.10.1: 4 lost / 250 sent  (1.6% loss, ~800ms)

200ms hello interval daje ~800ms failover. Trošak: 5x veći broadcast traffic (5 hello/s umesto 1).

Test 4: VRRP authentication

# R1 i R2 oba sa MD5 auth
/interface vrrp set vrrp-vlan10 authentication=ah ah-key=mykey123

MikroTik koristi IPsec AH (authentication header) za VRRP packet integrity. Cisco IOS koristi MD5 plaintext (kompatibilnost različita po vendoru — testiraj pre produkcije).

Gotchas i česte greške

  • Owner vs non-owner master — ako R1 ima 10.10.10.1 kao native IP i kao virtual IP, R1 je “owner”. Owner ne može imati priority manji od 255 (uvek je master kad je up). Ako želiš graceful priority manipulation, koristi non-owner mode (virtual IP različit od fizičkog).
  • Preempt mode i flapping — ako preempt=yes i master link flapuje (1s up, 1s down), VRRP ide kroz state transitions svakih 1s. Klijent gubi gateway svaki put. Solution: preempt=no (R2 ostaje master kad preuzme, R1 mora ručno da povrati ako želiš).
  • Same priority — MAC tie-breaker — ako 2 router-a imaju isti priority (npr. 100), router sa višim MAC-om postaje master. To je nedeterministički — eksplicitno postavi priority.
  • Multi-VLAN VRRP groups — svaki VLAN ima svoju VRRP group sa svojim VRID. NE koristi isti VRID na različitim VLAN-ovima — virtual MAC se konflikta. Praksa: VRID = VLAN ID (npr. VLAN 10 → VRID 10).
  • Gateway tracking — VRRP samo prati hello frame-ove između router-a. Ako WAN link na master-u padne ali LAN link ostane, master nastavlja da emituje hello, klijenti i dalje šalju paketu njemu, ali on nema gde da ih pošalje. Solution: track WAN status sa “VRRP tracking” (Cisco) ili “Netwatch + script” (MikroTik).
  • VRRP + bonded LAG — VRRP virtual MAC mora se naučiti na switch-u. Ako je LAN port LAG, switch mora da pravilno hash-uje virtual MAC. Test: ARP scan posle failover-a — proveri da li switch zna gde je vMAC.

Vendor-specific quirk

MikroTik (RouterOS 7.x na CCR2004 i sličnim): dobra VRRP v3 podrška, ali bez hardware offload — VRRP packet handling ide kroz CPU. Skoro nikad nije bottleneck (1 hello/s je minoran), ali u extreme HFT scenarijima, sub-50ms failover nije dostupan na MikroTik-u.

HP Aruba CX 6300/6400: najnaprednija VRRP implementacija — podržava VRRP tracking (gateway up/down detekcija), preempt delay (default 60s da se izbegne flapping), i load balancing (active-active sa različitim VRRP groups).

# Aruba VRRP tracking
configure terminal
interface vlan 10
  vrrp 10 ipv4 10.10.10.1
    priority 200
    track interface 1/1/24 decrement 100
    # Ako WAN port 1/1/24 padne, priority pada na 100, R2 (priority 150) preuzima
exit

Cisco IOS: podržava VRRP, HSRP, GLBP. HSRP je default kod Cisco mreža — ako migrirate na VRRP, eksplicitno disable HSRP. GLBP je interesting — multiple gateways aktivni istovremeno, klijenti dobijaju različite virtual MAC-ove (round-robin), efektivno load balancing.

UniFi (USW-Pro / UDM-Pro): ne podržava VRRP ni HSRP. UDM-Pro može biti single point of failure ako padne. Workaround: 2× UDM-Pro u failover mode (UniFi Network Application 8.x je dodao “WAN failover” ali ne LAN gateway redundancy).

Naša preporuka po veličini projekta

SOHO: ne treba ti VRRP — single router je OK. Ako MUST imati redundancy, kupi 2× MikroTik hEX i radi VRRP, ali troškovi nadmašuju benefit za kućnu mrežu.

Mali biznis (1 lokacija, 10–30 korisnika): VRRP nije obavezan. Single CCR2004 sa 24/7 monitoring + spare router u ormaru je jeftinija opcija. Failover je manuelan (5 minuta downtime kad padne).

Srednji projekat (multi-VLAN, 50+ korisnika, 24/7 critical): VRRP cluster sa 2× MikroTik CCR2004 ili 2× HP Aruba CX 6300. Track WAN port, sub-second hello za <1s failover. Investicija: ~3000-5000 EUR za 2 router-a.

Enterprise (multi-site, 100+ korisnika): 2× HP Aruba CX 6300 ili Cisco Catalyst 9300 sa VRRP + tracking + preempt delay. Plus: BFD (Bidirectional Forwarding Detection) za sub-50ms link failure detection. Combined sa OSPF/BGP routing redundancy za multi-path.

Šta dalje?

Kontaktiraj nas za network audit → — analiza tvoje mreže, plan za gateway redundancy.

Povezani članci

Pojmovnik