Route hooks

Route hooks are run with the “start” argument after a route is added and with the “stop” argument before it is removed.

After a route hook has been added, you must restart the bond from the management server or from the host command line to execute the hook the first time.

Hook locations:

  • /etc/bonding/route.d/all: hooks to be run for all routes

  • /etc/bonding/route.d/<route ID>: hooks for individual routes

  • /etc/bonding/route.d/default: hooks for routes with no individual hook folder

An example route hook is available at /usr/share/doc/bonding/examples/route-hook.

Environment variables

Route hooks are run with the following environment variables:

  • ID: the route ID

  • BOND_ID: the ID of the route’s bond

  • NETWORK: the network address of the route

  • NETMASK: the netmask of the subnet

  • VIA: the next hop for packets destined for the subnet

  • AGG_ROUTING: string describing aggregator routing mode: one of “auto”, “always”, or “never”.