Bug 24720

Summary: Bridging code does not always check activation (w/patch)
Product: Base System Reporter: Rogier R. Mulhuijzen <drwilco>
Component: kernAssignee: freebsd-bugs (Nobody) <bugs>
Status: Closed FIXED    
Severity: Affects Only Me    
Priority: Normal    
Version: 4.2-STABLE   
Hardware: Any   
OS: Any   
Attachments:
Description Flags
file.diff none

Description Rogier R. Mulhuijzen 2001-01-29 16:20:01 UTC
	When the kernel is compiled with BRIDGE certain checks are skipped. Even when the bridging has been disabled with the net.link.ether.bridge sysctl. This has the effect that when 2 interfaces are plugged into the same switch/bridge (but are on a different subnet) ARP requests are answered on both interfaces for the same IP with different MAC addresses.

Fix: in sys/netinet/if_ether.c there are 2 places where an #ifdef BRIDGE assumes the bridging code is actually activated. Patch applies cleanly to both STABLE and CURRENT (both not more than a few days old)

How-To-Repeat: 
	configure 2 NICs, plug both into the same hub/switch/bridge, start 'tcpdump -i <interface> arp' on both interfaces, ping 1 IP from a 2nd host and watch the sparks fly.
Comment 1 Luigi Rizzo freebsd_committer freebsd_triage 2001-02-11 23:16:10 UTC
State Changed
From-To: open->closed

slightly modified patch applied -- thanks