From owner-freebsd-hackers Fri May 19 01:04:09 1995 Return-Path: hackers-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id BAA15552 for hackers-outgoing; Fri, 19 May 1995 01:04:09 -0700 Received: from Root.COM (implode.Root.COM [198.145.90.1]) by freefall.cdrom.com (8.6.10/8.6.6) with ESMTP id BAA15544 for ; Fri, 19 May 1995 01:04:04 -0700 Received: from corbin.Root.COM (corbin.Root.COM [198.145.90.18]) by Root.COM (8.6.8/8.6.5) with ESMTP id BAA13471; Fri, 19 May 1995 01:07:08 -0700 Received: from localhost (localhost [127.0.0.1]) by corbin.Root.COM (8.6.11/8.6.5) with SMTP id BAA00362; Fri, 19 May 1995 01:04:08 -0700 Message-Id: <199505190804.BAA00362@corbin.Root.COM> To: Peter Wemm cc: hackers@FreeBSD.org Subject: Re: More on "Hmm.. Strange..." In-reply-to: Your message of "Fri, 19 May 95 12:15:18 +0800." From: David Greenman Reply-To: davidg@Root.COM Date: Fri, 19 May 1995 01:04:07 -0700 Sender: hackers-owner@FreeBSD.org Precedence: bulk >The first sendto() always works, and the second sendto() sends the >datagram to the *wrong interface*! > >Just a (yet another) reminder of the config: > >ed0: flags=8963 mtu 1500 > inet 192.203.228.69 netmask 0xfffffff0 broadcast 192.203.228.79 >ppp0: flags=151 mtu 1500 > inet 192.203.228.69 --> 192.203.228.3 netmask 0xfffffff0 > >In this case, in the above program, the first sendto() sends a 5 byte >broadcast to 192.203.228.79 on the ethernet (correct!). The second >sendto(), the 10 byte datagram gets sent to 192.203.228.79 on the PPP >interface!!!!! (of which the remote sends it straight back! after a >game of ping-pong, an icmp timer exceeded message is sent). That is happening because you have both the ethernet and ppp interfaces in the same subnet. FreeBSD doesn't support this - each network interface must be in a unique subnet. As far as I know, it's always been this way in BSD. -DG