Configuring IP Multipathing

  1. Ensure each network card has a unique MAC address by going to the OBP (or using the eeprom command) and setting local-mac-address?=true

  2. Add entries in /etc/hosts for both the test address and the data address (the test address is used for failure detection and always remains associated with the same card. The data address is used for communication and can failover).

  3. Update /etc/netmasks with the correct netmask for the network.

  4. Plumb in the interfaces, e.g. ifconfig qfe0 plumb; ifconfig qfe4 plumb

  5. Add these to an IPMP group, e.g. ifconfig qfe0 group testgroup; ifconfig qfe4 group testgroup

  6. Now create an address on each interface for the data address:

    ifconfig qfe0 testname netmask + broadcast + failover up ifconfig qfe4 testname-1 netmask + broadcast + failover up

  7. Now configure the test address (they should not be failover but marked as depreciated as they’re not used for comms)

    ifconfig qfe0 addif testname-qfe0 netmask + broadcast + -failover depreciated up ifconfig qfe4 addif testname-qfe4 netmask + broadcast + -failover depreciated up

  8. /etc/hostname.if should be created. e.g. hostname.qfe0 would contain:

    testname netmask + broadcast + failover up \ group testgroup \ addif testname-qfe0 netmask + broadcast + \ depreciated -failover up

    Names testname and testname-qfe0 would be defined in /etc/hosts

NOTE: The network cards can also be setup in standby mode with only one data address between the cards. However, by assigning a data address for each card, the outbound load is spread by IPMP. Also, under Solaris 8, if the card with a single data address fails during boot up, the address may not be failed over, leaving both interfaces inactive.