Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 30 Jul 1996 15:09:06 -0600 (MDT)
From:      Dave Andersen <angio@aros.net>
To:        jason@pdh.com (Jason Rhoads)
Cc:        questions@freebsd.org
Subject:   Re: Wierd problem with dual ethernet boards
Message-ID:  <199607302109.PAA12460@shell.aros.net>
In-Reply-To: <199607301956.MAA27820@pdh.com> from Jason Rhoads at "Jul 30, 96 12:58:35 pm"

next in thread | previous in thread | raw e-mail | index | archive | help
AFAIK, it's a bug in some revisions of the EtherExpress card.  The fix is 
to down and up the interface using ifconfig -- that'll bring it back to 
life.  Ugly, but it works.

When we were using one of those cards, I wrote a quick perl script that 
ran every minute to see if the world was alive and reset the interface.  
It's at the end of this message.  It worked for me, but YMMV.

 Dave Andersen

Lo and behold, Jason Rhoads once said:
> I am running two Intel EtherExpress 100B boards on a FreeBSD (2.1) machine.   
> The interfaces work great ... at first.  After several hours (usually 10-12  
> hours) of operation packets sent through one of the interfaces are dropped.   
> Any ideas on what is going on? TIA
> 
> - Jason  
> 


-- 
angio@aros.net                Complete virtual hosting and business-oriented
system administration         Internet services.  (WWW, FTP, email)
http://www.aros.net/          http://www.aros.net/about/virtual
  "There are only two industries that refer to their customers as 'users'."

#!/usr/bin/perl

if (!(&checkhost("127.0.0.1"))) {
        die "I am dead!\n";
}

if (!&checkhost("205.164.111.1")) {
        print "World is dead.. I'm resetting the ethernet card.\n";
        system("/sbin/ifconfig fxp0 down");
        system("/sbin/ifconfig fxp0 up");
        print "Ethernet card reset.\n";
}


sub checkhost {
        local($host) = $_[0];

        $ping = 0;
        $ping = `/sbin/ping -n -c 1 $host`;

        if ($ping =~ /100% packet loss/) {
#               print "$host is dead\n";
                0;
        } else {
#               print "$host is alive\n";
                1;
        }
}
        } else {
#               print "$host is alive\n";
                1;
        }
}




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199607302109.PAA12460>