diff options
author | Alexander Chernavin <achernavin@netgate.com> | 2022-03-05 15:51:54 +0000 |
---|---|---|
committer | Matthew Smith <mgsmith@netgate.com> | 2022-03-24 14:26:28 +0000 |
commit | e99f762346ae018ce5b76b729a12f0cd091aec43 (patch) | |
tree | 582719b5fb9cb11adf1f1d12d65f78dac110c9e7 | |
parent | fbc633f5542be4b0b85963f7dcba9ab143c61d62 (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.c | 3 | ||||
-rw-r--r-- | test/test_ip6.py | 7 |
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 """ |