操作系统:CentOS release 5.5 (Final)
故障现象:网卡无故自动down掉,使用service network restart 重启后没多久又会自动down , 连接数大概在200个左右,没有arp攻击;
网卡信息:
[root@~]# cat /var/log/dmesg |grep eth0
eth0: Broadcom NetXtreme II BCM5709 1000Base-T (C0) PCI Express found at mem d6000000, IRQ 90, node addr 842b2bfac367
当前网卡驱动:
[root@~]# ethtool -i eth0
driver: bnx2
version: 2.0.2
firmware-version: 5.2.3 NCSI 2.0.10
bus-info: 0000:01:00.0
安装更新驱动:
[root@~]# unzip linux-7.4.27.zip
Archive: linux-7.4.27.zip
creating: Server/Linux/Driver/
inflating: Server/Linux/Driver/INSTALL.TXT
inflating: Server/Linux/Driver/netxtreme2-7.4.27-1.src.rpm
inflating: Server/Linux/Driver/netxtreme2-7.4.27.tar.gz
inflating: Server/Linux/Driver/netxtreme2_sup-7.4.27-1.ISO.tar.gz
inflating: Server/Linux/Driver/README.bnx2.TXT
inflating: Server/Linux/Driver/README.bnx2fc.TXT
inflating: Server/Linux/Driver/README.bnx2i.TXT
inflating: Server/Linux/Driver/README.bnx2x.TXT
inflating: Server/Linux/Driver/RELEASE.bnx2.TXT
inflating: Server/Linux/Driver/RELEASE.bnx2fc.TXT
inflating: Server/Linux/Driver/RELEASE.bnx2i.TXT
inflating: Server/Linux/Driver/RELEASE.bnx2x.TXT
inflating: Server/Linux/Driver/RELEASE.fclibs.TXT
[root@~]# cd Server/Linux/Driver/
[root@ Driver]# rpm -ivh netxtreme2-7.4.27-1.src.rpm
重建对应系统的rpm包:
[root@ Driver]# cd /usr/src/RedHat/SPECS/
[root@ SPECS]# rpmbuild -bb netxtreme2.spec
安装新的rmp包:
[root@ SPECS]# cd /usr/src/redhat/RPMS/x86_64
[root@ x86_64]# rpm -ivh netxtreme2-7.4.27-1.x86_64.rpm
切换网卡驱动:
[root@~]# cat change_driver.sh
rmmod bnx2
rmmod bnx2x
modprobe bnx2
modprobe bnx2x
[root@~]# chmod u+x change_driver.sh
后台执行脚本:
[root@~]# ./change_driver.sh &
注意:有时候可能需要重启服务器使服务器系统重新完全加载新的驱动:
查看新的网卡驱动信息:
[root@ ~]# ethtool -i eth0
driver: bnx2
version: 2.2.3f
firmware-version: 6.2.12 bc 5.2.3 NCSI 2.0.11
bus-info: 0000:01:00.0
目前已没有出现自动down的情况。
注意:安装前请仔细看INSTALL.TXT
如下:
[root@ Driver]# cat INSTALL.TXT
Installation Notes
Broadcom NetXtremeII Linux Drivers
09/26/2011
Broadcom Corporation
5300 California Avenue,
Irvine, CA 92617
Copyright (c) 2004 - 2011 Broadcom Corporation
All rights reserved
Table of Contents
=================
Introduction
Limitations
Packaging
Installing Source RPM Package
Building Driver From TAR File
Unloading and Removing Driver
Introduction
============
This file describes the installation procedures for the following
Broadcom Linux drivers:
- bnx2 driver for the Broadcom NetXtreme II BCM5706/BCM5708/5709/5716
10/100/1000/2500/10000 Mbps PCIX/PCIE Ethernet Network Controller.
- bnx2x driver for the Broadcom NetXtremeII BCM57710/BCM57711/BCM57711E/BCM57712
10/100/1000/2500/10000 Mbps PCIE Ethernet Network Controller.
- cnic driver that supports additional features required by the bnx2i iSCSI
offload driver, and bnx2fc FCoE offload driver.
Limitations
===========
The current versions of the drivers have been tested on 2.4.x kernels starting
from 2.4.24 and all 2.6.x kernels. The driver may not compile on kernels
older than 2.4.24. Testing is concentrated on i386 and x86_64 architectures.
Only limited testing has been done on some other architectures.
Minor changes to some source files and Makefile may be needed on some
kernels.
Additionally, the Makefile will not compile the cnic driver on kernels
older than 2.6.16. iSCSI offload is only supported on 2.6.16 and newer
kernels. FCoE offload is only supported on 2.6.32 and newer kernels.
Packaging
=========
The driver is released in two packaging formats: source RPM and compressed tar
formats. The file name for the source RPM is:
netxtreme2-<version>.src.rpm
The file name for the tar archive is:
netxtreme2-<version>.tar.gz.
Identical source files to build the drivers are included in both packages.
Following is a list of files included -