add a new eventscript 01.reclock
[metze/ctdb/wip.git] / config / events.d / 11.routing
1 #!/bin/sh
2 # script to add entries to the routing table after we have performed a
3 # take ip event
4 # (when we do a "releaseip" event and remove an ip address from an interface
5 #  the kernel might automatically remove associated entries from
6 #  the routing table. This is where we add them back)
7 #
8 # Routes to add are defined in /etc/ctdb/static-routes.
9 # Syntax is :
10 # IFACE NET/MASK GATEWAY
11 #
12 # Example
13 # bond1 10.3.3.0/24 10.0.0.1
14
15 . $CTDB_BASE/functions
16 loadconfig ctdb
17
18 [ -f $CTDB_BASE/static-routes ] || {
19     exit 0
20 }
21
22 cmd="$1"
23 shift
24 PATH=/usr/bin:/bin:/usr/sbin:/sbin:$PATH
25
26 case $cmd in 
27      takeip|releaseip)
28         iface=$1
29         cat $CTDB_BASE/static-routes | egrep "^$iface " | while read IFACE DEST GW; do
30             ip route add $DEST via $GW dev $IFACE >/dev/null 2>/dev/null
31         done
32
33         ;;
34
35 esac
36
37 exit 0