summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Southworth <john.southworth@vyatta.com>2011-12-01 13:12:35 -0800
committerJohn Southworth <john.southworth@vyatta.com>2011-12-01 16:50:54 -0800
commitc822ae10d02835479d31f3955b378816aa91bb0d (patch)
treee8ce584a5b0d9f2f124804ca6e189e7d5ee6456b
parent496526b572ca83308a858b2ec4771d2f05f4970c (diff)
downloadvyatta-cfg-quagga-c822ae10d02835479d31f3955b378816aa91bb0d.tar.gz
vyatta-cfg-quagga-c822ae10d02835479d31f3955b378816aa91bb0d.zip
Adjust the sysctl values of vrrp interfaces on master/backup transitions
-rwxr-xr-xscripts/keepalived/vyatta-vrrp-state.pl2
1 files changed, 2 insertions, 0 deletions
diff --git a/scripts/keepalived/vyatta-vrrp-state.pl b/scripts/keepalived/vyatta-vrrp-state.pl
index e4da85eb..eab717bf 100755
--- a/scripts/keepalived/vyatta-vrrp-state.pl
+++ b/scripts/keepalived/vyatta-vrrp-state.pl
@@ -70,6 +70,7 @@ if ($vrrp_state eq 'backup') {
# comment out for now, too expensive with lots of vrrp's at boot
# Vyatta::Keepalived::snoop_for_master($vrrp_intf, $vrrp_group,
# $vrrp_vips[0], 60);
+ system("sysctl -w net.ipv4.conf.".$vrrp_intf."v".$vrrp_group.".arp_filter=1");
} elsif ($vrrp_state eq 'master') {
#
# keepalived will send gratuitous arp requests on master transition
@@ -77,6 +78,7 @@ if ($vrrp_state eq 'backup') {
# requests. Some of those host do respond to gratuitous arp replies
# so here we will send 5 gratuitous arp replies also.
#
+ system("sysctl -w net.ipv4.conf.".$vrrp_intf."v".$vrrp_group.".arp_filter=0");
foreach my $vip (@vrrp_vips) {
system("/usr/bin/arping -A -c5 -I $vrrp_intf $vip");
}