diff options
Diffstat (limited to 'ctdb/tests/eventscripts/13.per_ip_routing.011.sh')
-rwxr-xr-x | ctdb/tests/eventscripts/13.per_ip_routing.011.sh | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/ctdb/tests/eventscripts/13.per_ip_routing.011.sh b/ctdb/tests/eventscripts/13.per_ip_routing.011.sh new file mode 100755 index 00000000000..65adbb5d5a5 --- /dev/null +++ b/ctdb/tests/eventscripts/13.per_ip_routing.011.sh @@ -0,0 +1,41 @@ +#!/bin/sh + +. "${TEST_SCRIPTS_DIR}/unit.sh" + +define_test "__auto_link_local__, takeip all on node" + +setup_ctdb +setup_ctdb_policy_routing +# Override to do link local fu +CTDB_PER_IP_ROUTING_CONF="__auto_link_local__" + +# Do a takeip for each IP on the "current" node +ctdb_get_my_public_addresses | +{ + policy_rules="" + policy_routes="" + while read dev ip bits ; do + + net=$(ipv4_host_addr_to_net "$ip" "$bits") + gw="${net%.*}.1" # a dumb, calculated default + + ok_null + + simple_test_event "takeip" $dev $ip $bits + + policy_rules="${policy_rules} +${CTDB_PER_IP_ROUTING_RULE_PREF}: from $ip lookup ctdb.$ip " + policy_routes="${policy_routes} +# ip route show table ctdb.$ip +$net dev $dev scope link " + done + + ok <<EOF +# ip rule show +0: from all lookup local ${policy_rules} +32766: from all lookup main +32767: from all lookup default ${policy_routes} +EOF + + simple_test_command dump_routes +} |