TITLE : How to configure a bonding interface on SLES8 OS LEVEL : SuSE Linux Enterprise Server ver 8 DATE : 09/06/03 VERSION : 1.0 AUTHOR : Hubertus A. Haniel (hubba@unixcook.com) ---------------------------------------------------------------------------- This document describes the steps taken to configure a bonding interface across eth0 and eth1 to provide network redundancy in case of a network failure. It is assumed that eth0 and eth1 are already configured in modules.conf with the correct aliases so that they are visible usable with ifconfig. In this example the system is currently configured on eth0 with the IP address of 10.128.49.1 and a netmask of 255.255.254.0 The default router is on 10.128.49.250. 1) If you dont have SP3 you will need to compile and install user space tool which can be found in the kernel_source rpm, with SP3 this is already in place: cd /usr/src/linux/Documentation/networking gcc -Wall -Wstrict-prototypes -O -I/usr/src/linux/include ifenslave.c -o ifenslave cp ifenslave /sbin/ifenslave 2) Configure modules.conf to load the bonding driver with the right options when bond0 gets configured: alias bond0 bonding options bond0 arp_interval=1000 arp_ip_target=10.128.49.250,10.128.49.251 The options line configures the bonding driver to do an arp ping against the given routers every 1000 ms. If these options are not given the bonding driver will only monitor the link status of the network card. 3) Create /etc/sysconfig/network/ifcfg-bond0 to configure bond0: BOOTPROTO='static' BROADCAST='10.128.49.255' IPADDR='10.128.49.1' NETMASK='255.255.254.0' STARTMODE='onboot' WIRELESS='no' device='bond0' USERCTL=no 4) Create /etc/sysconfig/network/ifcfg-eth0 to attach eth0 to bond0: device=eth0 USERCTL=no MASTER=bond0 SLAVE=yes STARTMODE=onboot WIRELESS=no POST_UP_SCRIPT=bond0-slave0 5) Create /etc/sysconfig/network/ifcfg-eth1 to attach eth1 to bond0: device=eth1 USERCTL=no MASTER=bond0 SLAVE=yes STARTMODE=onboot WIRELESS=no POST_UP_SCRIPT=bond0-slave1 6) Create the two executable scripts referred as POST_UP_SCRIPTS in /etc/sysconfig/network/scripts: bond0-slave0: #!/bin/sh ifenslave bond0 eth0 bond0-slave1: #!/bin/sh ifenslave bond0 eth1 Now you should be able to reboot your box and see the interface being configured. More information about the bonding driver can be found in /usr/src/linux/Documentation/networking/bonding.txt.