from scapy.layers.inet6 import IPv6
from scapy.volatile import RandMAC, RandIP
+from framework import tag_fixme_vpp_workers
from framework import VppTestCase, VppTestRunner
from vpp_sub_interface import L2_VTR_OP, VppDot1QSubint
from vpp_gre_interface import VppGreInterface
from vpp_papi import VppEnum
+@tag_fixme_vpp_workers
class TestGREInputNodes(VppTestCase):
""" GRE Input Nodes Test Case """
#
for ii in range(1, 4):
route_addr = "4.4.4.%d" % ii
+ tx_e = self.create_stream_ip4(self.pg0, "5.5.5.5", route_addr)
#
# route traffic via the peer
gre_if.sw_if_index)])
route_via_tun.add_vpp_config()
+ # all packets dropped at this point
+ rx = self.send_and_assert_no_replies(self.pg0, tx_e)
+
+ gre_if.admin_down()
+ gre_if.admin_up()
+ rx = self.send_and_assert_no_replies(self.pg0, tx_e)
+
#
# Add a TEIB entry resolves the peer
#
# Send a packet stream that is routed into the tunnel
# - packets are GRE encapped
#
- tx_e = self.create_stream_ip4(self.pg0, "5.5.5.5", route_addr)
rx = self.send_and_expect(self.pg0, tx_e, itf)
self.verify_tunneled_4o4(self.pg0, rx, tx_e,
itf.local_ip4,
rx = self.send_and_expect(self.pg0, tx_i, self.pg0)
self.verify_decapped_4o4(self.pg0, rx, tx_i)
+ #
+ # bounce the interface state and try packets again
+ #
+ gre_if.admin_down()
+ gre_if.admin_up()
+ rx = self.send_and_expect(self.pg0, tx_e, itf)
+ self.verify_tunneled_4o4(self.pg0, rx, tx_e,
+ itf.local_ip4,
+ itf._remote_hosts[ii].ip4)
+ rx = self.send_and_expect(self.pg0, tx_i, self.pg0)
+ self.verify_decapped_4o4(self.pg0, rx, tx_i)
+
gre_if.admin_down()
gre_if.unconfig_ip4()