Date: Tue, 07 Mar 2006 13:11:42 +1100 From: Nik Lam <freebsdnik@j2d.lam.net.au> To: freebsd-net@freebsd.org Subject: if_bridge steals IP address of non-member interface Message-ID: <440CEBDE.5090602@j2d.lam.net.au>
next in thread | raw e-mail | index | archive | help
I'm not sure if what I'm seeing is an artefact of me doing something unusual with my design or if there is a bug in if_bridge. I'm dividing my LAN into two parts using a pair of intel pro 1000 (em) interfaces in an if_bridge bridge. I've configured this bridge with STP (802.1d) although I don't think this should be the cause of the problem. On the same host which is doing the bridging, I've got another interface (fxp0) which is configured "normally", i.e. it has an IP address on the subnet which the bridge divides. Generally this setup works fine, however every now and then I find that the bridge is answering ARP who-has queries for the IP address assigned to fxp0. Here's a simplified example: My LAN is 192.168.0.0/24. The bridge host has 3 interfaces, fxp0, em0 and em1. em0 and em1 are members of the bridge fxp0 is configured with 192.168.0.10 netmask 255.255.255.0 for managing the host. em0 is plugged into switch A em1 is plugged into switch B fxp0 is plugged into switch A There are other hosts plugged into both switches and the bridge behaves as expected in transiting traffic between switch A and switch B. However, sometimes when a host on switch A tries to contact the bridge host itself using 192.168.0.10, rather than getting the mac address for fxp0, it gets the mac address for em0. I've tried putting arp -S statements to permanently fix the fxp0 MAC address to its IP address in my rc.local of the bridge host in case that is taken notice of, but this doesn't seem to affect things in any positive way. Regards, Nik
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?440CEBDE.5090602>