-# Copyright (c) 2019 Cisco and/or its affiliates.
+# Copyright (c) 2020 Cisco and/or its affiliates.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at:
"""IPv6 utilities"""
@staticmethod
- def vpp_ra_suppress_link_layer(node, interface):
- """Suppress ICMPv6 router advertisement message for link scope address.
+ def vpp_interface_ra_suppress(node, interface):
+ """Disable sending ICMPv6 router-advertisement messages on
+ an interface on a VPP node.
:param node: VPP node.
:param interface: Interface name.
sw_if_index=InterfaceUtil.get_interface_index(node, interface),
suppress=1
)
- err_msg = f"Failed to suppress ICMPv6 router advertisement message " \
- f"on interface {interface}"
+ err_msg = f"Failed to disable sending ICMPv6 router-advertisement " \
+ f"messages on interface {interface}"
with PapiSocketExecutor(node) as papi_exec:
papi_exec.add(cmd, **args).get_reply(err_msg)
papi_exec.add(cmd, **args).get_reply(err_msg)
@staticmethod
- def vpp_all_ra_suppress_link_layer(nodes):
- """Suppress ICMPv6 router advertisement message for link scope address
- on all VPP nodes in the topology.
+ def vpp_interfaces_ra_suppress_on_all_nodes(nodes):
+ """Disable sending ICMPv6 router-advertisement messages on all
+ IPv6 enabled interfaces on all VPP nodes in the topology.
:param nodes: Nodes of the test topology.
:type nodes: dict
node, port_k, u"ipv6"
)
if ip6_addr_list:
- IPv6Util.vpp_ra_suppress_link_layer(node, port_k)
+ IPv6Util.vpp_interface_ra_suppress(node, port_k)
| | ... | ${dut1} | ${DUT1_${int}1}[0] | ${tg_if1_ip6} | ${TG_pf1_mac}[0]
| | VPP Add IP Neighbor
| | ... | ${dut1} | ${DUT1_${int}2}[0] | ${tg_if2_ip6} | ${TG_pf2_mac}[0]
-| | Vpp All RA Suppress Link Layer | ${nodes}
+| | Vpp Interfaces RA Suppress On All Nodes | ${nodes}
| | Vpp Route Add
| | ... | ${dut1} | ${tg_host_ip6} | ${ip6_plen_rt} | gateway=${tg_if1_ip6}
| | ... | interface=${DUT1_${int}1}[0]
| | VPP Interface Set IP Address
| | ... | ${dut} | ${dut_if2} | 2001:2::1 | 64
| |
-| | Vpp All Ra Suppress Link Layer | ${nodes}
+| | Vpp Interfaces RA Suppress On All Nodes | ${nodes}
| |
| | Run Keyword If | '${dut2_status}' == 'PASS'
| | ... | Vpp Route Add | ${dut1} | 2001:2::0 | 64 | gateway=2001:3::2
| | ... | ELSE | Set Variable | ${DUT1_${int}2}[0]
| | VPP Interface Set IP Address
| | ... | ${dut} | ${dut_if2} | 2001:5::1 | ${prefix}
-| | Vpp All Ra Suppress Link Layer | ${nodes}
+| | Vpp Interfaces RA Suppress On All Nodes | ${nodes}
| | VPP Add IP Neighbor
| | ... | ${dut1} | ${DUT1_${int}1}[0] | 2001:3::2 | ${TG_pf1_mac}[0]
| | Run Keyword If | '${dut2_status}' == 'PASS'
| |
| | [Arguments] | ${nf_nodes}=${1}
| |
-| | Vpp All Ra Suppress Link Layer | ${nodes}
+| | Vpp Interfaces RA Suppress On All Nodes | ${nodes}
| | Set interfaces in path up
| | ${prefix}= | Set Variable | 64
| | ${fib_table_1}= | Set Variable | ${101}
| | ... | VPP Interface Set IP Address | ${dut2} | ${subif_index_2} | 2002:2::2
| | ... | ${prefix}
| | VPP Interface Set IP Address | ${dut} | ${dut_if2} | 2002:3::2 | ${prefix}
-| | Vpp All Ra Suppress Link Layer | ${nodes}
+| | Vpp Interfaces RA Suppress On All Nodes | ${nodes}
| | Vpp Route Add | ${dut1} | ${tg_if1_net} | ${host_prefix}
| | ... | gateway=2002:1::1 | interface=${DUT1_${int}1}[0]
| | Run Keyword If | '${dut2_status}' == 'PASS'
| | ... | ${dut2} | ${DUT2_${int}1}[0] | ${dut2_dut1_address} | ${prefix}
| | VPP Interface Set IP Address
| | ... | ${dut2} | ${DUT2_${int}2}[0] | ${dut2_tg_address} | ${prefix}
-| | Vpp All Ra Suppress Link Layer | ${nodes}
+| | Vpp Interfaces RA Suppress On All Nodes | ${nodes}
| | VPP Add IP Neighbor
| | ... | ${dut1} | ${DUT1_${int}1}[0] | 2001:1::2 | ${TG_pf1_mac}[0]
| | VPP Add IP Neighbor
| | ... | ${dut2} | ${DUT2_${int}1}[0] | ${dut2_dut1_ip6_address} | ${prefix6}
| | VPP Interface Set IP Address
| | ... | ${dut2} | ${DUT2_${int}2}[0] | ${dut2_tg_ip4_address} | ${prefix4}
-| | Vpp All Ra Suppress Link Layer | ${nodes}
+| | Vpp Interfaces RA Suppress On All Nodes | ${nodes}
| | VPP Add IP Neighbor
| | ... | ${dut1} | ${DUT1_${int}1}[0] | 10.10.10.2 | ${TG_pf1_mac}[0]
| | VPP Add IP Neighbor
| | ... | ${dut2} | ${DUT2_${int}1}[0] | ${dut2_dut1_ip4_address} | ${prefix4}
| | VPP Interface Set IP Address
| | ... | ${dut2} | ${DUT2_${int}2}[0] | ${dut2_tg_ip6_address} | ${prefix6}
-| | Vpp All Ra Suppress Link Layer | ${nodes}
+| | Vpp Interfaces RA Suppress On All Nodes | ${nodes}
| | VPP Add IP Neighbor
| | ... | ${dut1} | ${DUT1_${int}1}[0] | 2001:1::2 | ${TG_pf1_mac}[0]
| | VPP Add IP Neighbor
| | Run Keyword If | ${dut2_status}
| | ... | VPP Interface Set IP Address
| | ... | ${dut2} | ${DUT2_${int}2}[0] | ${dut2_if2_ip6} | ${prefix}
-| | Vpp All Ra Suppress Link Layer | ${nodes}
+| | Vpp Interfaces RA Suppress On All Nodes | ${nodes}
| | FOR | ${number} | IN RANGE | 2 | ${dst_addr_nr}+2
| | | ${hexa_nr}= | Convert To Hex | ${number}
| | | VPP Add IP Neighbor
| | Run Keyword If | ${dut2_status}
| | ... | VPP Interface Set IP Address | ${dut2} | ${dut2-memif-1-if2}
| | ... | ${dut2-memif-1-if2_ip6} | ${mem_prefix}
-| | Vpp All Ra Suppress Link Layer | ${nodes}
+| | Vpp Interfaces RA Suppress On All Nodes | ${nodes}
| | Run Keyword If | ${dut2_status}
| | ... | VPP Add IP Neighbor
| | ... | ${dut1} | ${DUT1_${int}2}[0] | ${dut2_if1_ip6}
set interface ip address GigabitEthernet0/6/0 1:1::1/64
+ip6 nd GigabitEthernet0/6/0 ra-suppress
set interface state GigabitEthernet0/6/0 up
set interface ip address GigabitEthernet0/7/0 1:2::1/64
+ip6 nd GigabitEthernet0/7/0 ra-suppress
set interface state GigabitEthernet0/7/0 up
ip route add 2001:1::/64 via 1:1::2 GigabitEthernet0/6/0
create interface virtio 0000:00:06.0
create interface virtio 0000:00:07.0
+ip6 nd virtio-0/0/6/0 ra-suppress
+ip6 nd virtio-0/0/7/0 ra-suppress
+
set interface state virtio-0/0/6/0 up
set interface state virtio-0/0/7/0 up
| | When Initialize layer driver | ${nic_driver}
| | And Initialize layer interface
| | And Configure topology for IPv6 LISPoIP4 testing
-| | And Vpp All RA Suppress Link Layer | ${nodes}
+| | And Vpp Interfaces RA Suppress On All Nodes | ${nodes}
| | And Configure LISP in 2-node circular topology
| | ... | ${dut1} | ${DUT1_${int}2}[0] | ${NONE}
| | ... | ${duts_locator_set} | ${dut1_ip6o4_eid}
| | When Initialize layer driver | ${nic_driver}
| | And Initialize layer interface
| | And Configure topology for IPv4 LISPoIP6 testing
-| | And Vpp All RA Suppress Link Layer | ${nodes}
+| | And Vpp Interfaces RA Suppress On All Nodes | ${nodes}
| | And Configure LISP in 2-node circular topology
| | ... | ${dut1} | ${DUT1_${int}2}[0] | ${NONE}
| | ... | ${duts_locator_set} | ${dut1_ip4o6_eid}