Browse code

Merge "Use arping when moving an IP address"

Jenkins authored on 2016/05/12 05:46:41
Showing 1 changed files
... ...
@@ -624,6 +624,13 @@ function _move_neutron_addresses_route {
624 624
 
625 625
         IP_BRD=$(ip -f $af a s dev $from_intf scope global primary | grep inet | awk '{ print $2, $3, $4; exit }')
626 626
 
627
+        if [[ "$af" == "inet" ]]; then
628
+            IP=$(echo $IP_BRD | awk '{ print $1; exit }' | grep -o -E '(.*)/' | cut -d "/" -f1)
629
+            ARP_CMD="arping -A -c 3 -w 4.5 -I $to_intf $IP "
630
+        else
631
+            ARP_CMD=""
632
+        fi
633
+
627 634
         if [ "$DEFAULT_ROUTE_GW" != "" ]; then
628 635
             ADD_DEFAULT_ROUTE="sudo ip -f $af r replace default via $DEFAULT_ROUTE_GW dev $to_intf"
629 636
         fi
... ...
@@ -644,7 +651,7 @@ function _move_neutron_addresses_route {
644 644
 
645 645
         # The add/del OVS port calls have to happen either before or
646 646
         # after the address is moved in order to not leave it orphaned.
647
-        $DEL_OVS_PORT; $IP_DEL; $IP_ADD; $IP_UP; $ADD_OVS_PORT; $ADD_DEFAULT_ROUTE
647
+        $DEL_OVS_PORT; $IP_DEL; $IP_ADD; $IP_UP; $ADD_OVS_PORT; $ADD_DEFAULT_ROUTE; $ARP_CMD
648 648
     fi
649 649
 }
650 650