首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Linux桥和vlan_filtering

Linux桥和vlan_filtering
EN

Unix & Linux用户
提问于 2019-12-11 03:54:18
回答 1查看 5.9K关注 0票数 3

我使用Linux中的DSA来支持以太网交换机(KSZ9897)。这个开关正在运行,但是我在通过Linux (内核4.19)设置桥接vlan过滤特性时遇到了问题。

我创建了桥接器并添加了如下成员端口:

代码语言:javascript
复制
ip link add name br0 type bridge
ip link set dev lanB master br0
ip link set dev lanA master br0

此时,Linux创建了br0接口,我可以通过这个接口切换到连接到'lanB‘接口的PC。

现在,我想使用VLAN将lanA和lanB分开。启用vlan过滤,并设置PVID:

代码语言:javascript
复制
ip link set dev br0 type bridge vlan_filtering 1
bridge vlan add dev lanB vid 2 pvid untagged master
bridge vlan add dev lanA vid 3 pvid untagged master

通过设置vlan,我可以转储桥vlan状态:

代码语言:javascript
复制
bridge vlan show
port     vlan ids
lanB     2 PVID Egress Untagged

lanA     3 PVID Egress Untagged

br0      1 PVID Egress Untagged

我们来谈谈这个问题。现在,我需要将br0接口设置为2 PVID,这样我就可以在CPU和LANB之间切换。但我收到一个错误:

代码语言:javascript
复制
bridge vlan add dev br0 vid 2 pvid
RTNETLINK answers: Operation not supported

如果我不能更改CPU端口的pvid,我就不知道如何实现这一点。我的最终目标是使用ip link add link br0 name br0.2 type vlan id 2添加一个vlan接口,以便与lanB通信。但是,如果不将br0交换机端口配置为VLAN-2的一部分,这将失败。

我是走错路了还是漏掉了什么?

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2019-12-11 23:26:54

我发现修改桥vlans的命令需要稍微不同的语法。“‘self”必须附加到设备上:

代码语言:javascript
复制
bridge vlan add dev br0 self vid 2 pvid

然后该命令按预期的方式工作。

票数 3
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/556649

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档