Comments (6)
Please provide the exact configuration you used.
Also be aware that while we do support using 802.1AD tags instead of 802.1Q tags / ethertype, we currently do not support stacked VLANs (so no actual Q-in-Q).
from basebox.
Also be aware that while we do support using 802.1AD tags instead of 802.1Q tags / ethertype, we currently do not support stacked VLANs (so no actual Q-in-Q).
I think it's better to mention this on the doc. The doc clearly says about "qinq and multiple VLAN tags". Also, could you confirm when you plan to implement the actual QinQ?
from basebox.
After a bit more investigation, it partially works, but not fully as expected.
Here are the results with a bridge in 802.1AD mode:
Input | port vlan config | result |
---|---|---|
untagged | PVID | 802.1AD tag added with VID according to PVID, then forwarded |
untagged | no PVID | dropped |
802.1AD single-tagged | PVID | forwarded according to VID in tag |
802.1AD single-tagged | no PVID | forwarded according to VID in tag |
802.1Q single-tagged | PVID | dropped |
802.1Q single-tagged | no PVID | dropped |
802.1AD S-TAG + any C-TAG | PVID | forwarded according to VID in S-TAG |
802.1AD S-TAG + any C-TAG | no PVID | forwarded according to VID in S-TAG |
All learning happens according to the S-TAG / 802.1AD tag.
My first guess would be you stumbled upon the case where PVID does not add the 802.1AD tag to an already 802.1Q tagged frame.
If my guess is wrong, then please share your configuration (or a minimal example) and I can try to figure out where it breaks, and if there is any workaround.
from basebox.
Configs as follow:
ip link del dev swbridge
ip addr flush dev port1
ip addr flush dev port2
ip link add name swbridge type bridge vlan_filtering 1 vlan_protocol 802.1ad vlan_default_pvid 0
ip link set dev port1 master swbridge up
ip link set dev port2 master swbridge up
bridge vlan add vid 11 dev port1 pvid untagged
bridge vlan add vid 11 dev port2
ip link set dev swbridge up
with this scenario:
We test the setup with running a ping on Client.port1
We plan to tag the ingress packets that are already tagged from MySwitch.port1. Then, we expect that any packet that egresses from port2 will be a 802.1ad doubly tagged (vlan 11 as s-tag) packet.
I can see ingress packets on MySwitch.port1 (802.1q arps), but no packets captured on swbridge nor port2. Is there any configurations needed in order to 802.1ad on swbridge works? Required kernel modules is already present and active (8021q).
from basebox.
We plan to tag the ingress packets that are already tagged from MySwitch.port1. Then, we expect that any packet that egresses from port2 will be a 802.1ad doubly tagged (vlan 11 as s-tag) packet.
Unfortunately this is exactly the scenario that does not currently work, i.e. converting single tagged to double tagged and vice versa. Only converting untagged to single tagged works.
I can see ingress packets on MySwitch.port1 (802.1q arps), but no packets captured on swbridge nor port2. Is there any configurations needed in order to 802.1ad on swbridge works? Required kernel modules is already present and active (8021q).
By default you won't see any packets that get forwarded by the ASIC. You can force all packets recieved on a port to be copied to the switch by using the switch_tcpdump
utility, which dynamically installs an appropriate ACL flow.
from basebox.
Unfortunately this is exactly the scenario that does not currently work, i.e. converting single tagged to double tagged and vice versa. Only converting untagged to single tagged works.
Could you share more info about the future plan? Is it on the road map?
from basebox.
Related Issues (20)
- Untagged packets on port without a PVID should be handled HOT 1
- Incorrect ipv6 Termination MAC entries when enslaving port to bridge HOT 4
- baseboxd: properly drop termination mac entry reference when removing l3 addresses from vlan interfaces
- Termination MAC entries not being removed after changing SVI MAC address HOT 2
- ip neighbors are assumed and made routable regardless of actually having a route
- Termination MAC cleanup on bonds may sometimes fail HOT 1
- DHCP packets are not received by port interfaces HOT 1
- BGP routes are not getting cleared in the ASIC tables under stress tests HOT 2
- Assigned MACs are not used on data ports
- Question: Using keepalived with option use_vmac HOT 1
- carrier state may get out of sync if ports are set up during start up
- generic glog configuration options are undocumented
- baseboxd should properly cleanup behind itself on shutdown
- VxLAN tunneled packets are always untagged
- received VxLAN tunneled packets are copied to controller HOT 1
- VxLAN packets are encapsulated with an outer VLAN tag with VID 1 on Trident3
- Bridge Ageing Time Configuration
- OFDPA fielad for Usage (STG) HOT 1
- How set autoneg for interfaces HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from basebox.