Skip to content

Support running acl tests without any IPv4 management configuration#21155

Merged
bingwang-ms merged 16 commits intosonic-net:masterfrom
wrideout-arista:master-acl_tests_v6
Dec 17, 2025
Merged

Support running acl tests without any IPv4 management configuration#21155
bingwang-ms merged 16 commits intosonic-net:masterfrom
wrideout-arista:master-acl_tests_v6

Conversation

@wrideout-arista
Copy link
Contributor

Description of PR

Summary:
Fixes #18077

Modify the gratuitous arp service such that arp or neighbor-discovery packets are sent based on the L3 configuration of the testbed topology. For testbed topologies which do not configure IPv4 addressing, such as isolated-v6 testbeds, we skip the creation of arp packets and do not send them. In this case, only IPv6 neighbor-discovery packets are created and sent. The inverse is true as well when a testbed topology only specifies the use of IPv4 connections.

Type of change

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

Back port request

  • 202205
  • 202305
  • 202311
  • 202405
  • 202411
  • 202505

Approach

What is the motivation for this PR?

This change was made as a part of the isolated-v6 testbed qualification effort. Running acl tests on isolated-v6 testbeds was previously unsupported, and skipped via conditional mark, as the tests expected to receive IPv4 arp packets when no IPv4 connectivity was established.

How did you verify/test it?

The full suite of acl tests was run against a testbed where IPv4 and IPv6 connectivity was specified in the topology config, and no regressions were seen. The same suite of tests was run against a isolated-v6 testbed, and new test passes were observed: some new failures were also observed for tests which were previously skipped. However @r12f asked that we submit this change, and follow up with the remaining failing tests individually in subsequent changes as this change improves overall test coverage.

Any platform specific information?

None.

Signed-off-by: Will Rideout <wrideout@arista.com>
@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@azure-pipelines
Copy link

Commenter does not have sufficient privileges for PR 21155 in repo sonic-net/sonic-mgmt

@r12f
Copy link
Collaborator

r12f commented Nov 10, 2025

hi @wrideout-arista , looks like this PR has some conflict that causes CI unable to run. do you mind to help resolve it?

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@wrideout-arista
Copy link
Contributor Author

hi @wrideout-arista , looks like this PR has some conflict that causes CI unable to run. do you mind to help resolve it?

This should be good to go

@wrideout-arista
Copy link
Contributor Author

@r12f this looks ready for review

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@r12f
Copy link
Collaborator

r12f commented Nov 24, 2025

adding @bingwang-ms for review.

dst_ipv6 = config['dst_ipv6']
source_ip = str(ip_interface(source_ip_str).ip)
source_ipv6 = str(ip_interface(source_ipv6_str).ip)
source_ip = str(ip_interface(source_ip_str).ip) if source_ip_str else None
Copy link
Collaborator

Choose a reason for hiding this comment

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

Can you remind me why garp_service.py was changed? I remember it's only used in dualtor setup. In single-ToR setup, we are using arp_responder

Copy link
Contributor Author

@wrideout-arista wrideout-arista Nov 25, 2025

Choose a reason for hiding this comment

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

Prior to skipping all v4 cases when run on isolated-v6 testbeds, we found that the garp service was emitting a TypeError when trying to configure and send arp packets using a v4 address which was None. The changes here are meant to prevent this by selectively configuring and sending arp, or nd, or both, all depending on the configuration of the testbed.

Granted, these changes are less impactful due to the fact that the ip_version fixture in test/test_acl.py now skips v4 tests on isolated-v6 testbeds, but the bug still exists without them. With these changes to the service we no longer see a TypeError.

markx-arista added a commit to markx-arista/sonic-mgmt that referenced this pull request Nov 26, 2025
Remove xfail because the test can pass on v6 topos after garp fix:
sonic-net#21155
@wrideout-arista
Copy link
Contributor Author

@bingwang-ms is this good to go?

@bingwang-ms
Copy link
Collaborator

@bingwang-ms is this good to go?

Hi @wrideout-arista, thanks for sharing the rest result. I noticed there are still 4 test failures. Is that related to this change?

@r12f
Copy link
Collaborator

r12f commented Dec 5, 2025

hi @wrideout-arista do you mind to help xfail the 4 failing tests, we can follow them up later. thanks a lot!

@wrideout-arista
Copy link
Contributor Author

Looks like #18077 already exists to track those failures, so I will reference that in some new xfails.

@github-actions github-actions bot requested a review from bingwang-ms December 5, 2025 21:52
mssonicbld pushed a commit to mssonicbld/sonic-mgmt that referenced this pull request Jan 20, 2026
…onic-net#21155)

* Support running acl tests without any IPv4 management configuration.

Signed-off-by: Will Rideout <wrideout@arista.com>
@mssonicbld
Copy link
Collaborator

Cherry-pick PR to 202511: #22006

markx-arista added a commit to markx-arista/sonic-mgmt that referenced this pull request Jan 21, 2026
Remove xfail because the test can pass on v6 topos after garp fix:
sonic-net#21155
markx-arista added a commit to markx-arista/sonic-mgmt that referenced this pull request Jan 21, 2026
Remove xfail because the test can pass on v6 topos after garp fix:
sonic-net#21155

Signed-off-by: markxiao <markxiao@arista.com>
PriyanshTratiya pushed a commit to PriyanshTratiya/sonic-mgmt that referenced this pull request Jan 21, 2026
…onic-net#21155)

* Support running acl tests without any IPv4 management configuration.

Signed-off-by: Will Rideout <wrideout@arista.com>
Signed-off-by: Priyansh Tratiya <ptratiya@microsoft.com>
ytzur1 pushed a commit to ytzur1/sonic-mgmt that referenced this pull request Feb 2, 2026
…onic-net#21155)

* Support running acl tests without any IPv4 management configuration.

Signed-off-by: Will Rideout <wrideout@arista.com>
Signed-off-by: Yael Tzur <ytzur@nvidia.com>
abhishek-nexthop pushed a commit to nexthop-ai/sonic-mgmt that referenced this pull request Feb 6, 2026
…onic-net#21155)

* Support running acl tests without any IPv4 management configuration.

Signed-off-by: Will Rideout <wrideout@arista.com>
nnelluri-cisco pushed a commit to nnelluri-cisco/sonic-mgmt that referenced this pull request Feb 12, 2026
…onic-net#21155)

* Support running acl tests without any IPv4 management configuration.

Signed-off-by: Will Rideout <wrideout@arista.com>
Signed-off-by: nnelluri-cisco <nnelluri@cisco.com>
rraghav-cisco pushed a commit to rraghav-cisco/sonic-mgmt that referenced this pull request Feb 13, 2026
…onic-net#21155)

* Support running acl tests without any IPv4 management configuration.

Signed-off-by: Will Rideout <wrideout@arista.com>
Signed-off-by: Raghavendran Ramanathan <rraghav@cisco.com>
anilal-amd pushed a commit to anilal-amd/anilal-forked-sonic-mgmt that referenced this pull request Feb 19, 2026
…onic-net#21155)

* Support running acl tests without any IPv4 management configuration.

Signed-off-by: Will Rideout <wrideout@arista.com>
Signed-off-by: Zhuohui Tan <zhuohui.tan@amd.com>
StormLiangMS pushed a commit that referenced this pull request Mar 6, 2026
Remove xfail because the test can pass on v6 topos after garp fix:
#21155

Signed-off-by: markxiao <markxiao@arista.com>
markx-arista added a commit to markx-arista/sonic-mgmt that referenced this pull request Mar 10, 2026
Remove xfail because the test can pass on v6 topos after garp fix:
sonic-net#21155

Signed-off-by: markxiao <markxiao@arista.com>
ksravani-hcl pushed a commit to ksravani-hcl/sonic-mgmt that referenced this pull request Mar 10, 2026
Remove xfail because the test can pass on v6 topos after garp fix:
sonic-net#21155

Signed-off-by: markxiao <markxiao@arista.com>
ksravani-hcl pushed a commit to ksravani-hcl/sonic-mgmt that referenced this pull request Mar 10, 2026
Remove xfail because the test can pass on v6 topos after garp fix:
sonic-net#21155

Signed-off-by: markxiao <markxiao@arista.com>
markx-arista added a commit to markx-arista/sonic-mgmt that referenced this pull request Mar 10, 2026
Remove xfail because the test can pass on v6 topos after garp fix:
sonic-net#21155

Signed-off-by: markxiao <markxiao@arista.com>
aronovic pushed a commit to aronovic/sonic-mgmt that referenced this pull request Mar 10, 2026
Remove xfail because the test can pass on v6 topos after garp fix:
sonic-net#21155

Signed-off-by: markxiao <markxiao@arista.com>
Signed-off-by: Mihut Aronovici <aronovic@cisco.com>
markx-arista added a commit to markx-arista/sonic-mgmt that referenced this pull request Mar 11, 2026
Remove xfail because the test can pass on v6 topos after garp fix:
sonic-net#21155

Signed-off-by: markxiao <markxiao@arista.com>
markx-arista added a commit to markx-arista/sonic-mgmt that referenced this pull request Mar 11, 2026
Remove xfail because the test can pass on v6 topos after garp fix:
sonic-net#21155

Signed-off-by: markxiao <markxiao@arista.com>
mssonicbld added a commit to mssonicbld/sonic-mgmt.msft that referenced this pull request Mar 12, 2026
<!--
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
Remove xfail because the test can pass on v6 topos after garp fix:
sonic-net/sonic-mgmt#21155
<!--
- 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:
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] 202505

### Approach
#### What is the motivation for this PR?
The test case can pass with the fix from sonic-net/sonic-mgmt#21155

#### How did you do it?
Remove xfail in tests_mark_conditions.yaml

#### How did you verify/test it?
The test passed on v6 topo after removing xfail

#### Any platform specific information?

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

### Documentation
<!--
(If it's a new feature, new test case)
Did you update documentation/Wiki relevant to your implementation?
Link to the wiki page?
-->

Signed-off-by: Sonic Build Admin <sonicbld@microsoft.com>
StormLiangMS pushed a commit that referenced this pull request Mar 12, 2026
Remove xfail because the test can pass on v6 topos after garp fix:
#21155

Signed-off-by: markxiao <markxiao@arista.com>
mssonicbld added a commit to Azure/sonic-mgmt.msft that referenced this pull request Mar 12, 2026
…1064)

<!--
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
Remove xfail because the test can pass on v6 topos after garp fix:
sonic-net/sonic-mgmt#21155
<!--
- 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:
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] 202505

### Approach
#### What is the motivation for this PR?
The test case can pass with the fix from sonic-net/sonic-mgmt#21155

#### How did you do it?
Remove xfail in tests_mark_conditions.yaml

#### How did you verify/test it?
The test passed on v6 topo after removing xfail

#### Any platform specific information?

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

### Documentation
<!--
(If it's a new feature, new test case)
Did you update documentation/Wiki relevant to your implementation?
Link to the wiki page?
-->

Signed-off-by: Sonic Build Admin <sonicbld@microsoft.com>
selldinesh pushed a commit to selldinesh/sonic-mgmt that referenced this pull request Mar 16, 2026
Remove xfail because the test can pass on v6 topos after garp fix:
sonic-net#21155

Signed-off-by: markxiao <markxiao@arista.com>
Signed-off-by: selldinesh <dinesh.sellappan@keysight.com>
abhishek-nexthop pushed a commit to nexthop-ai/sonic-mgmt that referenced this pull request Mar 17, 2026
…onic-net#21155)

* Support running acl tests without any IPv4 management configuration.

Signed-off-by: Will Rideout <wrideout@arista.com>
Signed-off-by: Abhishek <abhishek@nexthop.ai>
abhishek-nexthop pushed a commit to nexthop-ai/sonic-mgmt that referenced this pull request Mar 17, 2026
Remove xfail because the test can pass on v6 topos after garp fix:
sonic-net#21155

Signed-off-by: markxiao <markxiao@arista.com>
Signed-off-by: Abhishek <abhishek@nexthop.ai>
vrajeshe pushed a commit to vrajeshe/sonic-mgmt that referenced this pull request Mar 23, 2026
Remove xfail because the test can pass on v6 topos after garp fix:
sonic-net#21155

Signed-off-by: markxiao <markxiao@arista.com>
Signed-off-by: Venkata Gouri Rajesh Etla <vrajeshe@cisco.com>
ravaliyel pushed a commit to ravaliyel/sonic-mgmt that referenced this pull request Mar 27, 2026
Remove xfail because the test can pass on v6 topos after garp fix:
sonic-net#21155

Signed-off-by: markxiao <markxiao@arista.com>
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.

Bug: test_acl failed on isolated-v6 topology

7 participants