teaming.txt Driver File Contents (sp33495.exe)

This document and associated shell script, "bonding", are provided as 
an example of how to set up a team and automate its start up.  

Note: the shell script, "bonding" is only necessary for automation with SLES 7
and UL 1.0.  By following the Red Hat instructions below, the user can 
utilize native Red Hat network automation.

This specific example creates a two-port team in "active-backup" mode.  The 
primary adapter, "HP NCx7xx Gigabit Server Adapter", utilizes the bcm5700 
driver.  The back up adapter, "HP NC31xx Fast Ethernet Adapter", utilizes
the e100 driver.  These two server adapters are the only two in the server.  The 
steps below must be adjusted if other server adapters are in the system. 
These instructions are valid only for HP supported Red Hat distributions as well
as SLES 7 and UL 1.0.  Please see the associated bonding-x.x.x-src.txt file 
for HP supported Linux distributions.

First, ensure the latest supported network and bonding drivers are installed from
http://h18000.www1.hp.com/products/servers/linux/softwaredrivers.html.



Red Hat Enterprise Linux Distributions
================================================================================

   1] Remove any lines in /etc/modules.conf (/etc/modprobe.conf on RHEL4) that reference eth0, eth1, or
      bonding, then add the following lines

          alias bond0 bonding
          options bond0 primary=eth0 mode=1 miimon=200
          alias eth0 bcm5700
          alias eth1 e100


   2] Create a file named /etc/sysconfig/network-scripts/ifcfg-bond0 containing
      the following (change the addresses for your particular environment):

          DEVICE=bond0
          IPADDR=192.168.1.1
          NETMASK=255.255.255.0
          NETWORK=192.168.1.0
          BROADCAST=192.168.1.255
          ONBOOT=yes
          BOOTPROTO=none
          USERCTL=no


   3] Create a file named /etc/sysconfig/network-scripts/ifcfg-eth0 containing
      the following:

          DEVICE=eth0
          USERCTL=no
          ONBOOT=yes
          MASTER=bond0
          SLAVE=yes
          BOOTPROTO=none


   4] Create a file named /etc/sysconfig/network-scripts/ifcfg-eth1 containing
      the following:

          DEVICE=eth1
          USERCTL=no
          ONBOOT=yes
          MASTER=bond0
          SLAVE=yes
          BOOTPROTO=none

   5] Reboot the server.

   6] Verify team configuration by viewing /proc/net/bonding/bond0, or running
      "/etc/init.d/bonding status". Monitoring /var/log/messages may be
      helpful in diagnosing teaming configuration problems. On RHEL3, for
      details on configuring a bond (team) refer to
      /usr/share/doc/bonding-x.x.x/bonding.txt (where x.x.x is the version of
      the HP tested and approved bonding driver)


SuSE Distributions
================================================================================

   1] Remove any lines in /etc/modules.conf (/etc/modprobe.conf on SLES 9) that reference eth0, eth1, or
      bonding - no lines need to be added to this file since everything 
      will be done in the startup script.

   2] Copy the bonding script (provided on the Software and Documentation CD 
      at /linux/bonding/bonding to /etc/init.d,
      a listing of the script is provided at the end of this document.

   3] Execute the following command

          chmod +x /etc/init.d/bonding

   4] Execute one of the following commands so the team will start
      after reboots

          insserv bonding
          chkconfig bonding on

   5] Reboot the server.

   6] Verify team configuration by viewing /proc/net/bonding/bond0, or running
      "/etc/init.d/bonding status". Monitoring /var/log/messages may be 
      helpful in diagnosing teaming configuration problems. 




Bonding start/stop script
================================================================================
#! /bin/sh
#
# /etc/init.d/bonding
#
# See "man chkconfig" for information on next two lines
# chkconfig: - 6 1
# description: Linux Bonding driver
#
# comments for insserv
### BEGIN INIT INFO
# Provides:       bonding
# Required-Start: $local_fs $network
# Required-Stop:
# Default-Start:  2 3 5
# Default-Stop:
# Description:    start/stop the bonded interfaces; a simple script to be
#                 used as a template - modify as needed for your setup.
#                 The server for which this script is written contains a single
#                 NC7770 and a single NC3134. The NC3134 (e100) is an active 
#                 backup for the NC7770 (tg3 or bcm5700).
#                 
### END INIT INFO

if [ -f /etc/rc.status ]; then
   . /etc/rc.status
fi

if [ -f /etc/rc.config ]; then
   . /etc/rc.config
fi

# Determine the base and follow a runlevel link name.
base=${0##*/}
link=${base#*[SK][0-9][0-9]}

rc_reset
case "$1" in
    start)
        echo "Starting network teams (bonds): "

        # load the bonding driver, change module parameters as needed
        modprobe bonding primary=eth0 mode=1 miimon=200
        if [ $? -ne 0 ]; then
           echo "ERROR: could not load bonding driver"
           # rc_failed
           # rc_status -v
           # rc_exit
           exit 1
        fi

        # load the tg3 driver first (eth0)
        modprobe tg3
        if [ $? -ne 0 ]; then
           echo "ERROR: could not load tg3 driver"
           # rc_failed
           # rc_status -v
           # rc_exit
           exit 1
        fi

        # load the e100 driver second (eth1 since we have a single tg3
        # device)
        modprobe e100
        if [ $? -ne 0 ]; then
           echo "ERROR: could not load e100 driver"
           # rc_failed
           # rc_status -v
           # rc_exit
           exit 1
        fi

        # configure the network, change as needed for your setup
        ifconfig bond0 192.168.1.1 netmask 255.255.255.0 \
                       broadcast 192.168.1.255 up

        # enslave each interface
        ifenslave bond0 eth0
        ifenslave bond0 eth1
        # rc_status -v
        echo "Network teams started."
	;;

    stop)
        echo "Stopping network teams (bonds): "

        # bring all interfaces down and remove all drivers
        ifconfig eth0  down
        ifconfig eth1  down
        ifconfig bond0 down
        rmmod e100
        rmmod tg3
        rmmod bonding
        # rc_status -v
        echo "Network teams stopped."
	;;

    status)
        if [ -f /proc/net/bond0/info ]; then
           cat /proc/net/bond0/info
        else
           echo "Bonding driver is not loaded"
        fi
        # rc_exit
        exit 1
	;;

    restart|reload)
	$0 stop ${2+"$2"} && $0 start ${2+"$2"}
        # rc_exit
        exit 1
	;;
    *)
        echo "Usage: $0 {start|stop|status|restart|reload}"
        # rc_exit
        exit 1
	;;
esac

Download Driver Pack

How To Update Drivers Manually

After your driver has been downloaded, follow these simple steps to install it.

  • Expand the archive file (if the download file is in zip or rar format).

  • If the expanded file has an .exe extension, double click it and follow the installation instructions.

  • Otherwise, open Device Manager by right-clicking the Start menu and selecting Device Manager.

  • Find the device and model you want to update in the device list.

  • Double-click on it to open the Properties dialog box.

  • From the Properties dialog box, select the Driver tab.

  • Click the Update Driver button, then follow the instructions.

Very important: You must reboot your system to ensure that any driver updates have taken effect.

For more help, visit our Driver Support section for step-by-step videos on how to install drivers for every file type.

server: web1, load: 2.45