ifconfig carpdev

Christophe M. freebsd-pf at lessyv.com
Thu Sep 20 15:56:03 PDT 2007

On Wednesday 19 September 2007, Max Laier wrote:
 > On Saturday 15 September 2007, Max Laier wrote:
 > > On Saturday 15 September 2007, Ingo Flaschberger wrote:
 > > > Ingo Flaschberger wrote:
 > > > > I have implemented at FreeBSD 6.2-STABLE.
 > > > >  http://www.nabble.com/file/p12686194/carpdev.diff carpdev.diff
 > > > > Is a working solution, but not 100% failsave.
 > > > > See fixme.
 > > >
 > > > argl.. need some more tweaks.
 > > >
 > > > carp adds only a hostroute, and no network.
 > > > fixed that it add a network, but now kernels cries to receive the 
 > > > at the parent interface and not at the carp interface...
 > >
 > > There is a lot more to this.  Please hold your breath just a few more
 > > days and I'll have a working sollution as promised.  Also, the 
 > > ioctl change is not the preferred way of doing things.  If you pass in
 > > an interface index, there is no way of making sure that the interface
 > > didn't change underneath you - that's why we rather pass the whole
 > > string and do the resolution in the kernel.
 > So here you go ... this is the ***ALPHA*** version of carpdev support.  
 > Note that there are *a lot* of raw edges, untested areas and missing
 > features still, but "it's working"[tm].
 > For the moment that means the IPv4 carpdev case is working. i.e.
 > configuring a carp on an otherwise unused interface:
 >  ifconfig carp create
 >  ifconfig carp0 carpdev rl0 vhid 1 pass foo
 >  ifconfig rl0 up
 > This patch is FYI, not something I'd recommend to use or even test. 
 > do cleanup, testing and polishing over the coming days and let you know
 > when it's in testable shape.
 > This work is generously sponsored by pil.dk.

Hello !

I wanna add CARP IP balancing support on FreeBSD. My work is based on
the OpenBSD ip_carp.c diff of 03/18/2007, when mpf added IP balancing

I already succesfully patch my freebsd to support carpdev, but mostly like
Ingo F. . Mine is just able to show iface xname under ifconfig, forcing it
doesn't work, like you said above.

Goog think is carp_input (not the old one renamed as carp_proto_input
according to OpenBSD) , because my results shown that multicast data
packets (not the CARP advs, the real packets) never appear in ether_input
on every other servers.

Several misunderstanding about the input process let me think to add a right
carp_input (who do an fresh ether_input) but it doesn't work with my code ;)
Packet just appears on one CARP interface, and never on others servers/CARP

I am going to test your patch, thanks for it ! Is there someone who is 
on IP balancing ? I'll reply here for any additional information.

Bye list !

Christophe Malinge contact<at>lessyv.com
SysAdm padawan / Developer
CCC - 'C' Comme Cirque president - jonglez les lundi @ EPiTA

More information about the freebsd-pf mailing list