#! /bin/bash . /usr/lib/network/network IFENSLAVE="/sbin/ifenslave" bond_up() { load_profile "$1" if [ -e /sys/class/net/$INTERFACE ]; then report_fail "Interface $INTERFACE already exists." exit 1 else ip link add dev $INTERFACE type bond fi bring_interface up "$INTERFACE" "$CONN_DIR/ethernet" up "$1" for slave in ${SLAVE_INTERFACES[@]}; do bring_interface up "$INTERFACE" $IFENSLAVE $INTERFACE $slave done return 0 } bond_down() { load_profile "$1" for slave in ${SLAVE_INTERFACES[@]}; do $IFENSLAVE $INTERFACE -d $slave done "$CONN_DIR/ethernet" down "$1" bring_interface down "$INTERFACE" ip link delete $INTERFACE &>/dev/null return 0 } bond_status() { if [ -e /sys/class/net/$INTERFACE ]; then return 0 else return 1 fi } bond_$1 "$2" exit $? # vim: set ts=4 et sw=4: