aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Chernavin <achernavin@netgate.com>2022-03-05 15:51:54 +0000
committerMatthew Smith <mgsmith@netgate.com>2022-03-24 14:26:28 +0000
commite99f762346ae018ce5b76b729a12f0cd091aec43 (patch)
tree582719b5fb9cb11adf1f1d12d65f78dac110c9e7
parentfbc633f5542be4b0b85963f7dcba9ab143c61d62 (diff)
ip6-nd: stop sending RA by default
Type: improvement Currently, RA message sending is enabled by default - both periodic and in response to RS message. However, RFC 4861 section 6.2.1 says the following: Note that AdvSendAdvertisements MUST be FALSE by default so that a node will not accidentally start acting as a router unless it is explicitly configured by system management to send Router Advertisements. With this change, RA message sending is disabled by default and "test_ip6.TestIPv6.test_rs" updated appropriately. Signed-off-by: Alexander Chernavin <achernavin@netgate.com> Change-Id: I2a8865199cb665c59268504aefe2976e5ee96dc2
-rw-r--r--src/vnet/ip6-nd/ip6_ra.c3
-rw-r--r--test/test_ip6.py7
2 files changed, 5 insertions, 5 deletions
diff --git a/src/vnet/ip6-nd/ip6_ra.c b/src/vnet/ip6-nd/ip6_ra.c
index dac5ec09937..2985ac44be2 100644
--- a/src/vnet/ip6-nd/ip6_ra.c
+++ b/src/vnet/ip6-nd/ip6_ra.c
@@ -1391,9 +1391,6 @@ ip6_ra_link_enable (u32 sw_if_index)
radv_info->initial_adverts_sent = radv_info->initial_adverts_count - 1;
radv_info->initial_adverts_interval = MAX_INITIAL_RTR_ADVERT_INTERVAL;
- /* deafult is to send */
- radv_info->send_radv = 1;
-
/* fill in delegate for this interface that will be needed later */
radv_info->adv_link_mtu =
vnet_sw_interface_get_mtu (vnet_get_main (), sw_if_index, VNET_MTU_IP6);
diff --git a/test/test_ip6.py b/test/test_ip6.py
index 3c79496d991..c86cb777aed 100644
--- a/test/test_ip6.py
+++ b/test/test_ip6.py
@@ -676,6 +676,8 @@ class TestIPv6(TestIPv6ND):
Test scenario:
"""
+ self.pg0.ip6_ra_config(no=1, suppress=1)
+
#
# Before we begin change the IPv6 RA responses to use the unicast
# address - that way we will not confuse them with the periodic
@@ -771,7 +773,7 @@ class TestIPv6(TestIPv6ND):
# If we happen to pick up the periodic RA at this point then so be it,
# it's not an error.
#
- self.pg0.ip6_ra_config(send_unicast=1, suppress=0)
+ self.pg0.ip6_ra_config(send_unicast=1)
p = (Ether(dst=dmac, src=self.pg0.remote_mac) /
IPv6(dst="ff02::2", src="::") /
ICMPv6ND_RS())
@@ -979,7 +981,8 @@ class TestIPv6(TestIPv6ND):
#
# Reset the periodic advertisements back to default values
#
- self.pg0.ip6_ra_config(no=1, suppress=1, send_unicast=0)
+ self.pg0.ip6_ra_config(suppress=1)
+ self.pg0.ip6_ra_config(no=1, send_unicast=1)
def test_mld(self):
""" MLD Report """