new CARP implementation

Freddie Cash fjwcash at gmail.com
Wed Aug 10 17:04:13 UTC 2011


2011/8/10 Gleb Smirnoff <glebius at freebsd.org>

>   I'd like to present for review and early testing (for brave ones)
> a new CARP implementation. The reason for this rewrite was that CARP
> protocol actually doesn't bring a new interface, but is a property of
> interface address. Rewriting it in this way helps to remove several
> hacks from incoming packet processing[1], simplifies some code, makes
> CARP addresses more sane from viewpoint of routing daemons such as
> quagga/zebra. It also brings support for a single redundant address
> on the subnet, the thing that is called "carpdev feature" in OpenBSD,
> long awaited in FreeBSD.
>
> More info and the patch itself is available here:
>
> http://people.freebsd.org/~glebius/newcarp/README
>
> I'm glad to here comments.
>
> Whoohoo!  Thanks for working on this!  :)

I really like that you no longer need to "waste" IPs in order to share a
virtual IP.  This is the reason I've been experimenting with freevrrpd on
FreeBSD, which isn't anywhere near as elegant as carp(4).

However, I'm not sure I understand the reasoning for removing the carpX
pseudo-interface.  It's really nice having the symmetry between carpX,
vlanX, brX, and other pseudo-interfaces, and keeping the configuration
details separate from the underlying physical interface.

This now makes creating/configuring CARP different from creating/configuring
vLANs.  :(

-- 
Freddie Cash
fjwcash at gmail.com


More information about the freebsd-net mailing list