Date: Thu, 24 Jan 2008 10:58:33 -0500 From: Yousif Hassan <yousif@alumni.jmu.edu> To: Brooks Davis <brooks@freebsd.org>, "Bruce M. Simpson" <bms@FreeBSD.org> Cc: freebsd-net@freebsd.org Subject: Re: network interface monitoring? Message-ID: <1201190313.2591.7.camel@localhost> In-Reply-To: <20080123222047.GA14264@lor.one-eyed-alien.net> References: <1201125022.2106.67.camel@localhost> <20080123222047.GA14264@lor.one-eyed-alien.net>
next in thread | previous in thread | raw e-mail | index | archive | help
Thank you to all who responded. The suggestion was made to use devd or ifstated. Both sound like excellent tools, but I'm currently being tripped up by a core problem - both tools rely on the kernel to notify userland of link state changes (which makes complete sense!). This is all well and good - but the current issue I'm seeing is that the link state doesn't get updated without running "ifconfig" again - is this by design? A known "issue?" An example: 1. Unplug network cable from bfe0 2. I run ifconfig 3. I see that interface bfe0's status is "no carrier". Good. 4. I plug the cable into bfe0 5. Wait... wait... look in /var/log/messages... wait more.. NO STATE CHANGE - the longest I've waited was 2 minutes, which is already too long 6. run "ifconfig" again 7. Link state immediately changes, logs to /var/log/messages, devd scripts run Is this a known behavior? It seems like the link state changes should happen automatically, without something to "trigger" them. Isn't there some kind of poll or interrupt sequence? I'm on 6.3 RC2 (will upgrade to 6.3-RELEASE imminently) but can't imagine this code changed? Does this work differently/better in 7.0? Thanks again guys for your time. --Yousif
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1201190313.2591.7.camel>