summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorStig Thormodsrud <stig@vyatta.com>2011-05-23 14:38:36 -0700
committerStig Thormodsrud <stig@vyatta.com>2011-05-23 16:47:26 -0700
commite01a51a38df7112562a228c3e9acd6dceb2a2fb2 (patch)
tree5da042c2f0112600af3d84f1db5a609604cc966c /scripts
parentd62ab0b93d6dacb6b30bd30a6f13aa1f9fae66c6 (diff)
downloadvyatta-cfg-system-napa-dev.tar.gz
vyatta-cfg-system-napa-dev.zip
Don't run 'arping' on IPv6 addresses.napa-dev
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/keepalived/vyatta-show-vrrp.pl11
-rwxr-xr-xscripts/keepalived/vyatta-vrrp-state.pl4
2 files changed, 11 insertions, 4 deletions
diff --git a/scripts/keepalived/vyatta-show-vrrp.pl b/scripts/keepalived/vyatta-show-vrrp.pl
index 28a9970c..1c15482d 100755
--- a/scripts/keepalived/vyatta-show-vrrp.pl
+++ b/scripts/keepalived/vyatta-show-vrrp.pl
@@ -133,9 +133,14 @@ sub get_master_info {
if ($interface->vif()) {
$arp_intf = $interface->physicalDevice();
}
- my $cmd = "/usr/bin/arping -c1 -f -I $arp_intf -s $source_ip $vip";
- system("$cmd > $arp_file");
- my $arp_mac = parse_arping($arp_file);
+ my $arp_mac = undef;
+ if ($vip !~ /\:/) {
+ # TODO add ndisc6 package for ipv6
+ my $cmd = "/usr/bin/arping -c1 -f -I $arp_intf -s $source_ip $vip";
+ system("$cmd > $arp_file");
+ $arp_mac = parse_arping($arp_file);
+
+ }
if ( ! -f $master_file) {
Vyatta::Keepalived::snoop_for_master($intf, $group, $vip, 2);
diff --git a/scripts/keepalived/vyatta-vrrp-state.pl b/scripts/keepalived/vyatta-vrrp-state.pl
index e4da85eb..23f93c75 100755
--- a/scripts/keepalived/vyatta-vrrp-state.pl
+++ b/scripts/keepalived/vyatta-vrrp-state.pl
@@ -78,7 +78,9 @@ if ($vrrp_state eq 'backup') {
# so here we will send 5 gratuitous arp replies also.
#
foreach my $vip (@vrrp_vips) {
- system("/usr/bin/arping -A -c5 -I $vrrp_intf $vip");
+ if ($vip != /\:/) {
+ system("/usr/bin/arping -A -c5 -I $vrrp_intf $vip");
+ }
}
#