network interface monitoring?

Yousif Hassan yousif at alumni.jmu.edu
Thu Jan 24 07:58:02 PST 2008


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



More information about the freebsd-net mailing list