Received: with ECARTIS (v1.0.0; list netdev); Mon, 17 Jan 2005 19:28:33 -0800 (PST) Received: from www.lanforge.com (ns1.lanforge.com [66.165.47.210]) by oss.sgi.com (8.13.0/8.13.0) with ESMTP id j0I3SRtH015880 for ; Mon, 17 Jan 2005 19:28:27 -0800 Received: from [4.33.45.22] (evrtwa1-ar2-4-33-045-022.evrtwa1.dsl-verizon.net [4.33.45.22]) (authenticated bits=0) by www.lanforge.com (8.12.8/8.12.8) with ESMTP id j0I3jeLH009112 for ; Mon, 17 Jan 2005 19:45:40 -0800 Message-ID: <41EC825B.4030603@candelatech.com> Date: Mon, 17 Jan 2005 19:28:27 -0800 From: Ben Greear Organization: Candela Technologies User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.7.3) Gecko/20041020 X-Accept-Language: en-us, en MIME-Version: 1.0 To: "'netdev@oss.sgi.com'" Subject: An interface goes away while a socket is bound to it..what happens? Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Scanned: ClamAV 0.80/650/Sun Jan 2 19:00:02 2005 clamav-milter version 0.80j on 127.0.0.1 X-Virus-Status: Clean X-archive-position: 416 X-ecartis-version: Ecartis v1.0.0 Sender: netdev-bounce@oss.sgi.com Errors-to: netdev-bounce@oss.sgi.com X-original-sender: greearb@candelatech.com Precedence: bulk X-list: netdev I've been playing around with multi-link PPP interfaces, and have noticed something strange (kernel 2.6.9+hacks, pppd 2.4.1b2 ). My application binds tight to the local IP address and the interface. In the instance tested, I was using UDP traffic but TCP seems to behave the same. Suppose I am pulling the T1 interfaces to cause a failover: If I pull both at once for a few seconds and then replace them, ppp0 will dissappear, and then quickly be rebuilt. My application discovers interfaces based on their name, by parsing /proc/net/dev every 30 seconds or so. Often, it does not detect that the interface ever went away (and came back), so it cannot take any evasive action. The interesting part to me is that I do not appearantly see any errors while continuing to send UDP packets on the socket that was bound to the original ppp0 interface, and yet no packets are ever routed over the new ppp0 interface. I would expect it to either fail the write, or to just magically keep working. So first: Is this happily-write-down-a-black-hole issue a bug? and: What is a good way to discover the coming and going of interfaces as it happens? (I looked around Netlink, but it does not appear to do notifications.) Thanks, Ben -- Ben Greear Candela Technologies Inc http://www.candelatech.com