MT7621基于OpenWrt 21.02使用DSA配置VLAN

本文介绍了OpenWrt 21.02中基于DSA的VLAN配置方法,详细解析了VLAN配置的改变及pvid的确定规则。通过不同配置情况的分析和测试,展示了不同情况下数据包的处理和通信效果,提供了一种理解DSA VLAN配置的关键路径。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

MT7621基于OpenWrt 21.02使用DSA配置VLAN


在openwrt 21.02版本中,swtich/vlan的配置方式发生了变化,不再使用swconfig,而是变更为了DSA,相应的,配置switch/vlan的方式也发生了变化

21.02vlan配置

​ 在openwrt 21.02版本中,swtich架构发生了变化,不再使用swconfig,而是变更为了DSA,相应的,配置switch/vlan的方式也发生了变化

配置出一个vlan,需在/etc/config/network中至少添加3个部分(section)

#1 创建一个设备(一般为桥接设备,包括几个物理口)
config device
	option name 'br-lan'
	option type 'bridge'
	list ports 'lan1'
	list ports 'lan2'
	list ports 'lan3'
	list ports 'lan4'
	
#2 创建一个绑定设备的vlan
config bridge-vlan
	option device 'br-lan'  #需要绑定的桥接设备
	option vlan '1024'      #vlan id
	list ports 'lan1'       #绑定的端口,不带任何后缀意味着不带tag,类似vlan中的access模式
	list ports 'lan2:t'	    #绑定的端口,带t后缀意味着带tag,类似trunk模式
	
#3 创建一个绑定vlan的接口
config interface 'vlan1' #名称
	option device 'br-lan.1024'  #与2部分中的vlan值对应
	option proto 'static'
	option ipaddr '192.168.66.1'
	option netmask '255.255.255.0'

​ 在VLAN处理逻辑中,除了vlan id(简称vid)的属性外,还有一个重要的属性,即pvid(存在几种解释,华为、华三称为“缺省VLAN”、“Port Default VLAN ID”,openwrt中称为Primary VLAN ID),pvid决定了某些情况下tag标签的赋予和剥离,从而影响vlan数据的处理,如下图:

image-20220706092934044

​ 对于pvid的分配,与swconfig中显式指定不同,21.02中是通过 ***** 和 vlan端口配置排列顺序来确定的。network中vlan 端口后缀属性存在以下4中可能:u u* t t*,其中u为默认选项,一般省略,如下:

config bridge-vlan
	option device 'br-lan'
	option vlan '1024'
	list ports 'lan1'  #对应u,一般省略:u
	list ports 'lan2:u*'
	list ports 'lan3:t'
	list ports 'lan4:t*'

其中u u*含义为untag,类似于access模式,t t*含义为tag,类似于trunk模式。根据上面4种后缀,排列组合存在以下几种情况(均通过lan1进行说明,其他端口以此类推):
注:

参考资源链接:[MT7621OpenWRT SDK:MT7603E与MT7612E驱动移植指南](https://wenku.csdn.net/doc/6412b4d4be7fbd1778d40f9a?utm_source=wenku_answer2doc_content) 要在基于MT7621OpenWRT SDK中移植MT7603E和MT7612E的驱动程序,首先需要理解OpenWRT的SDK结构和Linux内核的模块编译机制。以下是详细步骤和关键配置: 一、MT7603E驱动程序移植步骤: 1. 找到适用于MT7621平台的MT7603E驱动源码,并将其解压到OpenWRT SDK的相应目录下。 2. 对驱动目录中的文件名进行重命名以匹配OpenWRT的命名习惯,例如将`rlt_wifi`和`rlt_wifi_ap`分别改为`mt_wifi`和`mt_wifi_ap`。 3. 在驱动源码目录中修改`Kconfig`和`Makefile`文件,以确保它们与OpenWRT配置系统兼容。 4. 更新OpenWRT SDK的内核源码目录下的`Makefile`,添加对MT7603E驱动的编译支持。 二、MT7612E驱动程序移植步骤: 1.MT7612E驱动源码解压到SDK的相应目录。 2. 根据MT7603E的修改经验,对MT7612E的驱动文件进行必要的重命名和配置更新。 三、配置内核和编译驱动: 1.OpenWRT SDK中运行`make menuconfig`,进入内核配置界面。 2. 选择并启用与MT7603E和MT7612E驱动相关的配置选项,如PCI支持、无线驱动支持等。 3. 对于MT7603E和MT7612E驱动,确保其作为模块选项(<M>)被选中。 4. 根据硬件的具体配置,选择合适的WiFi设备配置项。 5. 保存配置并退出`make menuconfig`,然后运行`make`命令开始编译过程。 四、调试和测试: 1. 如果编译过程中遇到问题,使用`make menuconfig`中的`Save a config to file`功能保存当前配置文件。 2. 使用`diff`工具比较配置文件差异,找出可能导致编译错误的配置项。 3. 在必要的时候,可以使用`make clean`清除编译缓存,确保干净的编译环境。 整个移植过程中,关键是要确保驱动程序与OpenWRT的SDK和Linux内核版本兼容。为了深入了解这些步骤,推荐参考《MT7621OpenWRT SDK:MT7603E与MT7612E驱动移植指南》,该文档不仅提供了移植指导,还包含了必要的配置信息和问题解决方案。 参考资源链接:[MT7621OpenWRT SDK:MT7603E与MT7612E驱动移植指南](https://wenku.csdn.net/doc/6412b4d4be7fbd1778d40f9a?utm_source=wenku_answer2doc_content)
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值