Skip to content

Disabled IPv6 DAD: aligned with SONiC#985

Merged
lguohan merged 1 commit intosonic-net:masterfrom
nazariig:master-no-dad
Jul 3, 2019
Merged

Disabled IPv6 DAD: aligned with SONiC#985
lguohan merged 1 commit intosonic-net:masterfrom
nazariig:master-no-dad

Conversation

@nazariig
Copy link
Contributor

@nazariig nazariig commented Jul 2, 2019

Signed-off-by: Nazarii Hnydyn nazariig@mellanox.com

Description of PR

Aligned IPv6 DAD with SONiC:
https://github.com/Azure/sonic-buildimage/blob/master/build_debian.sh

set /files/etc/sysctl.conf/net.ipv6.conf.default.accept_dad 0
set /files/etc/sysctl.conf/net.ipv6.conf.all.accept_dad 0
set /files/etc/sysctl.conf/net.ipv6.conf.eth0.accept_dad 0

Type of change

  • [] Bug fix
  • Testbed and Framework(new/improvement)
  • [] Test case(new/improvement)

Approach

How did you do it?

  • Added new rc.eos config file

How did you verify/test it?

  1. Checked sysctl settings
bash-4.1# sysctl -q net.ipv6.conf | grep po1
net.ipv6.conf.po1.accept_dad = 0
net.ipv6.conf.po1.accept_ra = 0
net.ipv6.conf.po1.accept_ra_defrtr = 0
net.ipv6.conf.po1.accept_ra_pinfo = 0
net.ipv6.conf.po1.accept_redirects = 0
net.ipv6.conf.po1.accept_source_route = 0
net.ipv6.conf.po1.autoconf = 0
net.ipv6.conf.po1.dad_transmits = 1
net.ipv6.conf.po1.disable_ipv6 = 0
net.ipv6.conf.po1.force_mld_version = 0
net.ipv6.conf.po1.force_tllao = 0
net.ipv6.conf.po1.forwarding = 1
net.ipv6.conf.po1.hop_limit = 64
net.ipv6.conf.po1.max_addresses = 16
net.ipv6.conf.po1.mc_forwarding = 0
net.ipv6.conf.po1.mtu = 1500
net.ipv6.conf.po1.proxy_ndp = 0
net.ipv6.conf.po1.router_solicitation_delay = 1
net.ipv6.conf.po1.router_solicitation_interval = 4
net.ipv6.conf.po1.router_solicitations = 0

Any platform specific information?

  • N/A

Supported testbed topology if it's a new test case?

  • N/A

Documentation

  • N/A

Signed-off-by: Nazarii Hnydyn <nazariig@mellanox.com>
Copy link
Contributor

@pavel-shirshov pavel-shirshov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

But is it possible to disable ipv6 nd dad using command line?
Cisco has ipv6 nd dad attempts. I've found nothing for Arista.

@nazariig
Copy link
Contributor Author

nazariig commented Jul 3, 2019

But is it possible to disable ipv6 nd dad using command line?
Cisco has ipv6 nd dad attempts. I've found nothing for Arista.

@pavel-shirshov Unfortunately i did not find such a way:

ARISTA01T2(config-if-Po1)#ipv6 nd ?
  cache                Cache entry
  managed-config-flag  set the 'managed address configuration flag' in IPv6 router advertisements
  ns-interval          Set advertised NS retransmission interval
  other-config-flag    set the 'other stateful configuration' flag in IPv6 router advertisements
  prefix               configure prefixes to be included in router advertisements on this interface.
  ra                   Router Advertisement commands
  reachable-time       configure reachable time - the amount of time that a remote IPv6 node is considered reachable
  router-preference    configure default router preference for the router on this interface ( Default: medium )

We can only check the feature status:

ARISTA01T2(config-if-Po1)#show ipv6 interface port-Channel 1
Port-Channel1 is up, line protocol is up (connected)
  IPv6 is enabled, link-local is fe80::5054:ff:fe7c:d35a/64
  Global unicast address(es):
    fc00::2, subnet is fc00::/126
  Joined group address(es):
    ff02::1
    ff02::1:ff00:2
    ff02::2
    ff02::1:ff7c:d35a
  ND DAD is enabled, number of DAD attempts: 1
  ND Reachable time is 2147483000 milliseconds
  ND retransmit interval is 1000 milliseconds
  ND advertised reachable time is 1 milliseconds (using 1)
  ND advertised retransmit interval is 0 milliseconds (unspecified)
  ND router advertisements are sent every 200 seconds
  ND router advertisements live for 1800 seconds
  ND advertised default router preference is Medium
  ND advertised maximum hop count limit is 64
  Hosts use stateless autoconfig for addresses.
  ND RAs are suppressed

@lguohan lguohan merged commit e54b29a into sonic-net:master Jul 3, 2019
fraserg-arista pushed a commit to fraserg-arista/sonic-mgmt that referenced this pull request Feb 24, 2026
…net#985)

<!--
Please make sure you've read and understood our contributing guidelines;
https://github.com/sonic-net/SONiC/blob/gh-pages/CONTRIBUTING.md

Please provide following information to help code review process a bit easier:
-->
### Description of PR
<!--
- Please include a summary of the change and which issue is fixed.
- Please also include relevant motivation and context. Where should reviewer start? background context?
- List any dependencies that are required for this change.
-->

Summary:
Skip v4 route checks and add v6 version of commands for v6 topos
Fixes # (issue)

### Type of change

<!--
- Fill x for your type of change.
- e.g.
- [x] Bug fix
-->

- [ ] Bug fix
- [ ] Testbed and Framework(new/improvement)
- [ ] New Test case
 - [ ] Skipped for non-supported platforms
- [x] Test case improvement

### Back port request
- [x] 202412
- [x] 202511

### Approach
#### What is the motivation for this PR?
test_bgp_suppress_fib.py failed on v6 topos

#### How did you do it?
Modify the test to only do v6 checks

#### How did you verify/test it?
The test passed on v6 topos

#### Any platform specific information?

#### Supported testbed topology if it's a new test case?

### Documentation
<!--
(If it's a new feature, new test case)
Did you update documentation/Wiki relevant to your implementation?
Link to the wiki page?
-->
Pterosaur pushed a commit to Pterosaur/sonic-mgmt that referenced this pull request Mar 26, 2026
```
*   d849917 (HEAD -> user/r12f/merge-202412, origin/user/r12f/merge-202412, internal-202412) r12f 260209:0619 - Merge remote-tracking branch 'azure/202412' into internal-202412
|\
| * c4c429c (azure/202412) mssonicbld 260209:0115 - [action] [PR:21843] Fix test_bgp_suppress_fib.py flakiness on scale topos (sonic-net#1011)
| * 46503f1 Mark Xiao 260205:1058 - [202412] Fix test_acl.py [ipv6-ingress-uplink->downlink-*] cases for v6 topo (sonic-net#942)
| * b6c58d4 mssonicbld 260130:1215 - [action] [PR:21772] Fix test_bgp_suppress_fib.py for v6 topos (sonic-net#985)
| * e762451 mssonicbld 260130:1016 - [action] [PR:21762] Fix test_disk_exhaustion.py for v6 topos (sonic-net#983)
| * 02cadbb mssonicbld 260130:1016 - [action] [PR:21771] Fix test_bgp_bounce.py for v6 topos (sonic-net#984)
| * 7eab3e7 Priyansh 260129:1437 - [202412] Fix/nonlinear dataplane downtime (sonic-net#982)
| * de89a46 mssonicbld 260130:0616 - [action] [PR:21143] configlet/test_add_rack.py Add comparison ignore for extra entries added by generic patcher (sonic-net#977)
| * c731442 mssonicbld 260130:0616 - [action] [PR:21647] Remove test_route_flow_counter.py xfail for v6 topos (sonic-net#979)
| * 0ff3ecc mssonicbld 260130:0116 - [action] [PR:21717] [BGP][test_bgp_session.py::test_bgp_session_interface_down] - Increase BGP Session State Timeout Window when restarting SWSS Container (sonic-net#978)
| * e0a408c Mark Xiao 260129:0914 - [202412] Fix fib/test_fib.py test_vxlan_hash [ipv6-*] (sonic-net#971)
| * 51b0525 mssonicbld 260124:0615 - [action] [PR:21523] Feature/route programming data (sonic-net#974)
| * 2bb2a53 mssonicbld 260124:0615 - [action] [PR:21939] Fix/nonlinear high nexthop dataplane downtime (sonic-net#975)
| * 1fe73bc Mark Xiao 260123:1323 - [202412] Fix setup_interfaces fixture and related bgp tests for v6 topo (sonic-net#941)
| * fda4ac2 Chuan Wu 260124:0520 - Enhance PTF function at scale testbed (sonic-net#913)
| * e8edcae gshemesh2 260123:2317 - Manual cherry-pick PR: Adjust test_bgpmon.py to handle running over ipv6 only topologies sonic-net#21377 (sonic-net#888)
| * 24b3dc7 gshemesh2 260123:2313 - Manual cherry-pick of PR: Adjusting test_stress_arp is it can handle cases of ipv6-only topologies . sonic-net#20932 (sonic-net#923)
```

----
#### AI description  (iteration 1)
#### PR Classification
This pull request is a feature enhancement that adds and refines IPv6 compatibility across multiple BGP, ACL, and related test modules.

#### PR Summary
The changes extend the testing framework and helper utilities to support IPv6-only and dual-stack environments by conditionally switching commands, packet generation, and route verifications.
- `tests/bgp/test_bgpmon.py` and `tests/bgp/test_bgp_update_timer.py`: Updated function signatures and logic to construct, verify, and clean up IPv6 routes and packets (e.g., using /64 and /128 prefixes).
- `tests/bgp/test_bgp_suppress_fib.py` and `tests/bgp/test_bgp_peer_shutdown.py`: Modified commands and packet filters to support IPv6 addressing and proper neighbor session handling.
- `tests/common/...` files and generators: Integr...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants