Common Address Redundancy Protocol

A CARP (Common Address Redundancy Protocol, azaz Közös Cím Redundancia Protokoll) egy olyan protokoll, amelynek a célja, hogy egy LAN-on lévő közös IP-címen több számítógép is osztozhasson, miközben biztosítja bármelyik számítógép kiesése esetén is ennek elérését. A CARP bizonyos esetekben lehetővé teszi a Layer 2 szintű load balancing-ot (terheléskiegyenlítés) is.

A CARP kialakulásának rövid története szerkesztés

A Cisco azt állítja, hogy a saját, HSRP nevű protokolljával kapcsolatos szabadalmait sérti a VRRP nevű, elméletileg szabadon használható megoldás. Ezzel kapcsolatban sok minden elhangzott, de az ügyben nem született megnyugtató végeredmény.

A Cisco álláspontja több forrás szerint is a következő:
"Cisco retains the right to assert patent claims against any party and any subsidiary of a party that asserts a patent it owns or controls, either directly or indirectly, against Cisco or any of its subsidiaries or successors in title, including the right to claim damages for any prior use or sale of VRRP by such a party."

Azaz:
"A Cisco fenntartja magának a jogot, hogy bárkivel szemben fellépjen szabadalmi követeléseivel, ha az saját tulajdonában lévő szabadalom megsértésével vádolja a Ciscot. A Cisco ezen esetekben a VRRP eladásából, vagy annak használatából eredő károkat megtéríttetheti az ügyben részt vevő céggel"


Több VRRP megvalósítás is napvilágot látott a szabad UNIX operációs rendszerekre, de az OpenBSD csapat úgy gondolta, hogy a céljaikkal a Cisco követelései nem összeegyeztethetők, így egy saját, szabadon felhasználható megvalósítást írtak, CARP néven.

A CARP támogatás 2003. október 17-én került bele az OpenBSD-be, így először a 3.5-os kiadásban debütál. A pf-et portoló Max Leier átültette a CARP-ot is FreeBSD-re, illetve Dragonfly BSD-re, a patch 5.x-hez elérhető a http://pf4freebsd.love2party.net/carp.html címen.

A CARP fejlesztői szerkesztés

A CARP Ryan Mc Bride és Theo de Raadt nevéhez fűződik.

CARP technikai adatok szerkesztés

  • pár közös vonás a VRRP-vel
  • változó hirdetési intervallum, a leggyakrabban hirdető válik mesterré
  • a hirdetést SHA1 HMAC védi
  • támogatja a Layer 2 load balancingot
  • IPv4 és IPv6 támogatás
  • aktív fejlesztés

Egy példa szerkesztés

Azt szeretnénk elérni, hogy a 192.168.1.1-es IP-címen két számítógép osztozzon, és az 1-es gép legyen a mester (ha mindkettő elérhető).

Az 1-es gépen a következőt kell beírnunk:

# ifconfig carp0 create
# ifconfig carp0 vhid 1 pass JELSZO 192.168.1.1

A 2-es gépen pedig ezt:

# ifconfig carp0 create
# ifconfig carp0 vhid 1 advskew 100 pass JELSZO 192.168.1.1

Az utóbbin az advskew paraméter biztosítja, hogy az 1-es gép legyen mindig a mester, ha ez lehetséges.

Kapcsolódó oldalak szerkesztés