Date: Tue, 27 Dec 2005 11:51:18 +0100 From: Meno Abels <meno.abels@adviser.com> To: FreeBSD-gnats-submit@FreeBSD.org Cc: meno.abels@adviser.com Subject: kern/90973: [net] [patch] if_bridge does not handle arp for own addresses Message-ID: <20051227105119.2B39143D53@mx1.FreeBSD.org> Resent-Message-ID: <200512271100.jBRB0CaB029499@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 90973 >Category: kern >Synopsis: [net] [patch] if_bridge does not handle arp for own addresses >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Tue Dec 27 11:00:12 GMT 2005 >Closed-Date: >Last-Modified: >Originator: Meno Abels >Release: FreeBSD 6.0-RELEASE i386 >Organization: Adviser COM >Environment: System: FreeBSD sshd 6.0-RELEASE FreeBSD 6.0-RELEASE #1: Thu Jul 28 23:45:40 MEST 2005 root@tiger.de.20six.net:/jails/tiger/usr/obj/jails/tiger/usr/src_5.4/sys/GENERIC i386 >Description: If you have for example the following config: lnc1: 192.168.100.1 tap1: and these interfaces are bridged: ifconfig bridge0 addm lnc1 addm tap1 up If you now send packets over tap1 to 192.168.100.1 the arp lookup is not answered by bridged host. >How-To-Repeat: ping and arp -d >Fix: In if_ether.c the detection of the bridge works on every bridge interfaces but not for the bridged(if_bridge) interface himself. This dectection is only required if there is a cloned bridge interface. So I added these: --- sys/netinet/if_ether.c 7 Oct 2005 01:51:29 -0000 1.137.2.4 +++ sys/netinet/if_ether.c 27 Dec 2005 10:33:31 -0000 @@ -607,7 +607,7 @@ int carp_match = 0; #endif - if (do_bridge || ifp->if_bridge) + if (do_bridge || ifp->if_bridge || ifp->if_type == IFT_BRIDGE) bridged = 1; req_len = arphdr_len2(ifp->if_addrlen, sizeof(struct in_addr)); >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20051227105119.2B39143D53>