Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

bridge: T6125: support 802.1ad (ethertype 0x88a8) VLAN filtering #3158

Merged
merged 1 commit into from Mar 21, 2024

Conversation

c-po
Copy link
Member

@c-po c-po commented Mar 20, 2024

Change Summary

Linux bridge uses EtherType 0x8100 by default. In some scenarios, an EtherType value of 0x88A8 is required.

Reusing CLI command from VIF-S (QinQ) interfaces:
set interfaces bridge br0 protocol 802.1ad

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Code style update (formatting, renaming)
  • Refactoring (no functional changes)
  • Migration from an old Vyatta component to vyos-1x, please link to related PR inside obsoleted component
  • Other (please describe):

Related Task(s)

Related PR(s)

Component(s) name

Bridge

Proposed changes

How to test

Extended smoketests

  • set interfaces bridge br0 protocol 802.1ad

Extended Smoketests test_bridge_vlan_protocol

Smoketest result

cpo@LR1.wue3:~$ TEST_ETH="eth1 eth2" /usr/libexec/vyos/tests/smoke/cli/test_interfaces_bridge.py
test_add_multiple_ip_addresses (__main__.BridgeInterfaceTest.test_add_multiple_ip_addresses) ... ok
test_add_remove_bridge_member (__main__.BridgeInterfaceTest.test_add_remove_bridge_member) ... ok
test_add_single_ip_address (__main__.BridgeInterfaceTest.test_add_single_ip_address) ... ok
test_bridge_tunnel_vxlan_multicast (__main__.BridgeInterfaceTest.test_bridge_tunnel_vxlan_multicast) ... ok
test_bridge_vif_members (__main__.BridgeInterfaceTest.test_bridge_vif_members) ... ok
test_bridge_vif_s_vif_c_members (__main__.BridgeInterfaceTest.test_bridge_vif_s_vif_c_members) ... ok
test_bridge_vlan_filter (__main__.BridgeInterfaceTest.test_bridge_vlan_filter) ... ok
test_bridge_vlan_protocol (__main__.BridgeInterfaceTest.test_bridge_vlan_protocol) ... ok
test_dhcp_client_options (__main__.BridgeInterfaceTest.test_dhcp_client_options) ... ok
test_dhcp_disable_interface (__main__.BridgeInterfaceTest.test_dhcp_disable_interface) ... ok
test_dhcp_vrf (__main__.BridgeInterfaceTest.test_dhcp_vrf) ... ok
test_dhcpv6_client_options (__main__.BridgeInterfaceTest.test_dhcpv6_client_options) ... ok
test_dhcpv6_vrf (__main__.BridgeInterfaceTest.test_dhcpv6_vrf) ... ok
test_dhcpv6pd_auto_sla_id (__main__.BridgeInterfaceTest.test_dhcpv6pd_auto_sla_id) ... ok
test_dhcpv6pd_manual_sla_id (__main__.BridgeInterfaceTest.test_dhcpv6pd_manual_sla_id) ... ok
test_igmp_querier_snooping (__main__.BridgeInterfaceTest.test_igmp_querier_snooping) ... ok
test_interface_description (__main__.BridgeInterfaceTest.test_interface_description) ... ok
test_interface_disable (__main__.BridgeInterfaceTest.test_interface_disable) ... ok
test_interface_ip_options (__main__.BridgeInterfaceTest.test_interface_ip_options) ... ok
test_interface_ipv6_options (__main__.BridgeInterfaceTest.test_interface_ipv6_options) ... ok
test_interface_mtu (__main__.BridgeInterfaceTest.test_interface_mtu) ... ok
test_ipv6_link_local_address (__main__.BridgeInterfaceTest.test_ipv6_link_local_address) ... ok
test_isolated_interfaces (__main__.BridgeInterfaceTest.test_isolated_interfaces) ... ok
test_mtu_1200_no_ipv6_interface (__main__.BridgeInterfaceTest.test_mtu_1200_no_ipv6_interface) ... ok
test_span_mirror (__main__.BridgeInterfaceTest.test_span_mirror) ... ok
test_vif_8021q_interfaces (__main__.BridgeInterfaceTest.test_vif_8021q_interfaces) ... ok
test_vif_8021q_lower_up_down (__main__.BridgeInterfaceTest.test_vif_8021q_lower_up_down) ... ok
test_vif_8021q_mtu_limits (__main__.BridgeInterfaceTest.test_vif_8021q_mtu_limits) ... ok
test_vif_8021q_qos_change (__main__.BridgeInterfaceTest.test_vif_8021q_qos_change) ... ok
test_vif_s_8021ad_vlan_interfaces (__main__.BridgeInterfaceTest.test_vif_s_8021ad_vlan_interfaces) ... ok
test_vif_s_protocol_change (__main__.BridgeInterfaceTest.test_vif_s_protocol_change) ... ok

----------------------------------------------------------------------
Ran 31 tests in 182.092s

OK

Checklist:

  • I have read the CONTRIBUTING document
  • I have linked this PR to one or more Phabricator Task(s)
  • I have run the components SMOKETESTS if applicable
  • My commit headlines contain a valid Task id
  • My change requires a change to the documentation
  • I have updated the documentation accordingly

Linux bridge uses EtherType 0x8100 by default. In some scenarios, an EtherType
value of 0x88A8 is required.

Reusing CLI command from VIF-S (QinQ) interfaces:
  set interfaces bridge br0 protocol 802.1ad
@c-po
Copy link
Member Author

c-po commented Mar 20, 2024

@Mergifyio backport sagitta

Copy link

mergify bot commented Mar 20, 2024

backport sagitta

✅ Backports have been created

@dmbaturin dmbaturin merged commit d03916b into vyos:current Mar 21, 2024
8 checks passed
c-po added a commit that referenced this pull request Mar 21, 2024
bridge: T6125: support 802.1ad (ethertype 0x88a8) VLAN filtering (backport #3158)
@c-po c-po deleted the bridge-T6125 branch March 24, 2024 19:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
2 participants