NIC bonding/teaming

Dan Nelson dnelson at
Fri Jan 13 14:14:13 PST 2006

In the last episode (Jan 13), Ian Lord said:
> At 16:47 2006-01-13, Ceri Davies wrote:
> >On 13 Jan 2006, at 20:22, jim feldman wrote:
> >>Does 6.x have a nic bonding/teaming/failover feature like the linux
> >>bond (rnd robin, failover, ld bal, trunking)?  I'm thinking
> >>multiple nics, one server, same lan/vlan.  I've read up on CARP and
> >>one2many, but they don't seem to do what bond does.
> >
> >I think you want ng_one2many(4).
> I did a lot of tests with carp (was not appropriate at all), and
> ng_one2many
> I was able to make two nics appears at one with ng_one2many, but
> after severals days of tests and research, dropped it because it
> caused bad side effects and when I was pulling one nic out, it was
> stopping to transmit/receive for some moment. Also on the switch,
> both nics were registering the same mac address so my cisco was
> sending me warning about it every minute.

That's because you forgot to configure your cisco and tell it those two
ports were trunked together :)

Another alternative to ng_one2many is ng_fec, which despite its name
does not actually negotiate the FEC protocol with the remote end (you
have to hardcode it on the switch), but does do mac/ip port hashing. 
That prevents packet reordering within flows.  Patches to add LACP
negotiation (FEC is obsolete) are welcome though :)

	Dan Nelson
	dnelson at

More information about the freebsd-questions mailing list