From 7dfb85810f10410a69bbfcd5f03a54eb06b4907a Mon Sep 17 00:00:00 2001 From: Yaqiang Zhu Date: Wed, 9 Aug 2023 07:08:24 -0400 Subject: [PATCH] [arp_responder] Fix response icmpv6 packet error (#9353) What is the motivation for this PR? Introduced this PR: #8697. Missing specifying interface would causes that ipv6 reply packet is sent by default interface(sendrecv.py), which is incorrect. How did you do it? Specify send interface. How did you verify/test it? Run this script in ptf and ping ipv6 address from DUT, then run show ndp in DUT, address pinged before can be seen in ndp table. Run test_acl.py in m0 testbed, all passed. (This test case in m0 would trigger ndp reply) Signed-off-by: Yaqiang Zhu --- tests/scripts/arp_responder.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/scripts/arp_responder.py b/tests/scripts/arp_responder.py index aa1611e56a..879a6520ff 100644 --- a/tests/scripts/arp_responder.py +++ b/tests/scripts/arp_responder.py @@ -63,7 +63,7 @@ def reply_to_ndp(data): ndp_reply = ARPResponder.generate_neigh_adv(ARPResponder.ip_sets[interface][request_ip], remote_mac, request_ip, remote_ip) - scapy.sendp(ndp_reply) + scapy.sendp(ndp_reply, iface=interface) @staticmethod def generate_arp_reply(local_mac, remote_mac, local_ip, remote_ip, vlan_id):