From owner-freebsd-net@FreeBSD.ORG Wed Jun 11 21:19:36 2003 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id F044837B401 for ; Wed, 11 Jun 2003 21:19:35 -0700 (PDT) Received: from mail.cs.ait.ac.th (mail.cs.ait.ac.th [192.41.170.16]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3EC9F43FB1 for ; Wed, 11 Jun 2003 21:19:34 -0700 (PDT) (envelope-from Olivier.Nicole@ait.ac.th) Received: from bazooka.cs.ait.ac.th (on@bazooka.cs.ait.ac.th [192.41.170.2]) by mail.cs.ait.ac.th (8.12.3/8.9.3) with ESMTP id h5C4IF7F048979 for ; Thu, 12 Jun 2003 11:19:31 +0700 (ICT) From: Olivier Nicole Received: (from on@localhost) by bazooka.cs.ait.ac.th (8.8.5/8.8.5) id LAA23920; Thu, 12 Jun 2003 11:18:14 +0700 (ICT) Date: Thu, 12 Jun 2003 11:18:14 +0700 (ICT) Message-Id: <200306120418.LAA23920@bazooka.cs.ait.ac.th> To: freebsd-net@freebsd.org X-Virus-Scanned: by amavisd-milter (http://amavis.org/) Subject: arp: is using my IP address X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 12 Jun 2003 04:19:36 -0000 Hi, I know the problem is not new, but... I am using 4.8-RELEASE, 2 interfaces 3com 905b (xl0 and xl1), and one RealTeck, no IP on the 3 com, one fixed IP on the rl0. I bridge between xl0 and xl1. Interface rl0 and xl1 are connected to the same switched ethernet network. Sometime, the interface Xl1 answers to arp requests and mess up the communication between that machine and others. And then I get the above mentionned message. I tried to configure the 3com interfaces with -arp but it does not help. Looking at teh source of sys/netinet/if_ether.c, I see: /* * No match, use the first inet address on the receive interface * as a dummy address for the rest of the function. */ TAILQ_FOREACH(ifa, &ifp->if_addrhead, ifa_link) if (ifa->ifa_addr && ifa->ifa_addr->sa_family == AF_INET) { ia = ifatoia(ifa); goto match; } /* * If bridging, fall back to using any inet address. * This is probably incorrect, the right way being try to match * addresses for interfaces in the same cluster, so if we * get here we should always drop the packet. */ The first part was corrected apparently back in 2001, but it seems that when ding bridge, we are still left with some dirty situation. Is there any way to correct that behaviour? (except than forcing static ARP in every single host that would have to talk to that guy) Best regards, Olivier