=============================
Recovering an offline bonder
=============================

A bonder needs at least one available leg to connect to the management
server. If a bonder can't bring up even a single leg, then it won't
connect to the management server to download any configuration changes
that might allow it to bring up one or more legs. In this case, the
bonder needs to be recovered by an onsite technician.

The most common reason for a bonder to fail to start any legs is because
it has only PPP or static legs and the PPP credentials or static leg
details were configured incorrectly.

Recovery procedure
-------------------

The following procedure will bring the bonder back online.

#. Fix the incorrect configuration in the management server. For
   example, if the PPP credentials are wrong, enter the correct
   credentials. This will result in a number of queued configuration
   updates that won't be sent to the bonder because it is offline.
#. Start a console session on the bonder using the serial interface,
   the troubleshooting IP, or monitor/keyboard techniques described in
   `Accessing a node <accessing-a-node.html>`__.
#. Log in with the root password.
#. Stop the bonding service with this command:
   ``service bonding stop``
#. Connect a DHCP or statically-configured network to eth1. DHCP is
   strongly preferred. PPP sessions are not supported for recovery.
#. With a DHCP network, run the following command:
   ``dhclient eth1``
   Or with a statically-configured network, run these commands:
   ``ip address add dev eth1 local <ip>/<cidr netmask> broadcast +``
   ``ip route replace default via <gateway IP> dev eth1``
   For example, with a network of 203.0.113.0/30, where 203.0.113.1/30
   is the gateway and 203.0.113.2/30 is the IP to be used by the bonder,
   run:
   ``ip address add dev eth1 local 203.0.113.2/30 broadcast +``
   ``ip route replace default via 203.0.113.1 dev eth1``
#. Run the following command to download the updated configuration from
   the management server. This will include all the changes you made in
   step 1.
   ``nodeconfig``
   If it returns a warning about the server's SSL certificate, run:
   ``nodeconfig -n``
#. Reboot the bonder with this command:
   ``reboot``

The bonder will reboot and start with the updated configuration from the
management server. Verify that it connects to the management server and
aggregator.
