From 80532e03b9d223407c4b9d2245449dbdc4c03c1b Mon Sep 17 00:00:00 2001 From: Zdeno Olsovsky Date: Tue, 28 Jun 2016 09:22:29 +0200 Subject: CSIT-183: Vpn baseline routed forwarding (VRF) - Setup 2 VRF tables on each DUT - Test traffic - each port accessible within one vrf - Test traffic - ports inaccessible to different vrf Change-Id: I34256a683039734608509a38857dbdcbdd15bcf9 Signed-off-by: Zdeno Olsovsky Signed-off-by: Matej Klotton --- resources/libraries/python/IPv4Setup.py | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'resources/libraries/python/IPv4Setup.py') diff --git a/resources/libraries/python/IPv4Setup.py b/resources/libraries/python/IPv4Setup.py index 0720e730a8..d4be4c602a 100644 --- a/resources/libraries/python/IPv4Setup.py +++ b/resources/libraries/python/IPv4Setup.py @@ -173,19 +173,23 @@ class Dut(IPv4Node): # TODO: check return value VatExecutor.cmd_from_template(self.node_info, script, **args) - def set_arp(self, iface_key, ip_address, mac_address): + def set_arp(self, iface_key, ip_address, mac_address, vrf=None): """Set entry in ARP cache. :param iface_key: Interface key. :param ip_address: IP address. :param mac_address: MAC address. + :param vrf: VRF table ID (Optional). :type iface_key: str :type ip_address: str :type mac_address: str + :type vrf: int """ + vrf = "vrf {}".format(vrf) if vrf else '' self.exec_vat('add_ip_neighbor.vat', sw_if_index=self.get_sw_if_index(iface_key), - ip_address=ip_address, mac_address=mac_address) + ip_address=ip_address, mac_address=mac_address, + vrf=vrf) def set_ip(self, interface, address, prefix_length): self.exec_vat('add_ip_address.vat', @@ -316,16 +320,18 @@ class IPv4Setup(object): get_node(node).set_arp(iface_key, ip_address, mac_address) @staticmethod - def add_arp_on_dut(node, iface_key, ip_address, mac_address): + def add_arp_on_dut(node, iface_key, ip_address, mac_address, vrf=None): """Set ARP cache entree on DUT node. :param node: VPP Node in the topology. :param iface_key: Interface key. :param ip_address: IP address of the interface. :param mac_address: MAC address of the interface. + :param vrf: VRF table ID (Optional). :type node: dict :type iface_key: str :type ip_address: str :type mac_address: str + :type vrf: int """ - get_node(node).set_arp(iface_key, ip_address, mac_address) + get_node(node).set_arp(iface_key, ip_address, mac_address, vrf) -- cgit 1.2.3-korg