Tsutomu Fujii <[EMAIL PROTECTED]> wrote: [...] >The network structure is the following. > >+-------------------------------+ >| virtual I/F(eth0) | <- have IP address. >+-------------------------------+ >| virtual bridge(xenbr0) | >+-------------------------------+ >| bonding(bond0) | <- don't have IP address >+--------------+-+--------------+ >|phy I/F(peth0)| |phy I/F(peth1)| >+--------------+ +--------------+ [...] >How about removing bond_has_ip() from the condition for calling >bond_arp_send_all() to use bonding with xen? >When I removed bond_has_ip(), the resulting kernel worked fine and >active-backup mode works with arp monitoring.
I looked at this a bit. I believe that when you remove the bond_has_ip() test, the ARP probes sent out will be of the form "ARP who-has A.B.C.D tell 0.0.0.0", which the linux kernel will interpret as IPv4 Duplicate Address Detection probes (as a special case in arp_process()), and generate some type of reply. That reply appears to be enough to keep the ARP monitor happy. I'm not sure if this is a solution that will work for any peer (some peers may not reply to an ARP with an IP source of all zeros). At first glance, there doesn't seem to be much of a downside, but I'll have to experiment with it a bit to see if the check should be optional or simply removed entirely. -J --- -Jay Vosburgh, IBM Linux Technology Center, [EMAIL PROTECTED] - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html