From bd348c5264a5f376af4c35e4e4d27084d77260ee Mon Sep 17 00:00:00 2001 From: abdosi <58047199+abdosi@users.noreply.github.com> Date: Mon, 14 Nov 2022 10:15:17 -0800 Subject: [PATCH] [chassis-packet] fix the issue of internal ip arp not getting resolved. (#12127) Fix the issue where arp_update will not ping some of the ip's even though they are in failed state since grep of that ip on ip neigh show command does not do exact word match and can return multiple match. --- files/scripts/arp_update | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/files/scripts/arp_update b/files/scripts/arp_update index 7f9a7e1dac..b686e1a93e 100755 --- a/files/scripts/arp_update +++ b/files/scripts/arp_update @@ -22,10 +22,10 @@ while /bin/true; do fi for nexthop in $STATIC_ROUTE_NEXTHOPS; do if [[ $nexthop == *"."* ]]; then - neigh_state=( $(ip -4 neigh show | grep $nexthop | tr -s ' ' | cut -d ' ' -f 3,4) ) + neigh_state=( $(ip -4 neigh show | grep -w $nexthop | tr -s ' ' | cut -d ' ' -f 3,4) ) ping_prefix=ping elif [[ $nexthop == *":"* ]] ; then - neigh_state=( $(ip -6 neigh show | grep $nexthop | tr -s ' ' | cut -d ' ' -f 3,4) ) + neigh_state=( $(ip -6 neigh show | grep -w $nexthop | tr -s ' ' | cut -d ' ' -f 3,4) ) ping_prefix=ping6 fi