在开启华硕路由器的访客网络后,将AiMesh主节点的LAN接口接到VLAN可管理交换机的ACCESS口(eg. VLAN 192 UnTagged)、AiMesh子节点的WAN接口接到其他VLAN可管理交换机的ACCESS口(eg. VLAN 192 UnTagged),且两个交换机通过TRUNK口连接(eg. VLAN 192 Tagged)。
进行上述操作后,发现手机连接华硕路由AiMesh子节点的主人网络,能正常获取到DHCP IP,但是连接AiMesh子节点的访客网络,发现虽然有WiFi信号,但是无法正常获取到DHCP IP(无法正常上网)。
通过抓包和查询资料,发现是访客网络也通过VLAN通信,但是我们的上层网络也使用VLAN通信,导致访客网络的无法使用。(多层VLAN嵌套应使用VLAN QinQ协议)
解决方案
通过查询华硕AiMesh主路由的系统日志,我们可以很容易的发现,华硕访客网络使用的VLAN ID为501(2.4G)、502(5G-1)、503(5G-2)
我们只需要在VLAN交换机上配置以下配置即可解决(注:请根据实际网络做出相应修改,示例中仅展示单台交换机的配置,多台交换机如法炮制即可,只需要将交换机的TRUNK口连接即可)
VLAN | 端口1 | 端口2 | 端口3 | 端口4 | 端口5 | 备注 |
---|---|---|---|---|---|---|
192 | Tagged | UnTagged | 未关联 | 未关联 | 未关联 | 用于主人网络的通信 |
193 | Tagged | 未关联 | 未关联 | 未关联 | 未关联 | TRUNK口中的其他VLAN |
501 | Tagged | Tagged | UnTagged | 未关联 | 未关联 | 2.4G访客网络 |
502 | Tagged | Tagged | 未关联 | UnTagged | 未关联 | 5G-1访客网络 |
503 | Tagged | Tagged | 未关联 | 未关联 | UnTagged | 5G-2访客网络(如果主路由器不支持5G-2则没有这个VLAN) |
我们假设有两台5口的VLAN交换机,端口1(TRUNK口)互相连接,以上配置可实现以下功能,如果不需要有线连接到访客网络,可以不配置端口3、4、5
- 端口1作为TRUNK口,多个VLAN交换机互相连接
- 端口2连接华硕路由器,用于华硕路由有线组网互相连接
- 端口3可以直接有线连接到2.4G的访客网络
- 端口4可以直接有线连接到5G-1的访客网络
- 端口5可以直接有线连接到5G-2的访客网络(如果主路由器不支持5G-2则没有这个VLAN)
- 其他端口可以正常配置其他VLAN
经过上述配置后,我们发现,虽然直接连接到VLAN交换机的端口2电脑能获取到主人网络的DHCP服务,但是华硕Mesh子节点却无法正确连接(显示离线),在查阅了外网论坛后,发现似乎是华硕路由器的固件Bug,使用以上方式配置后,将导致路由器无法正确判断使用无线回传还是有线回传,导致路由器丢失连接。分情况,我们可以进行以下配置
全部路由器都使用有线回传
只需要在华硕路由器页面开启以太网回传模式开关即可
部分路由使用有线回传,部分使用无线回传
在Mesh管理页面,为需要通过VLAN交换机连接的AiMesh子节点强制设置1G WAN有线回传为第一优先回传
请注意,最好在AiMesh组网成功后就进行修改,且后续不要修改回传配置,否则路由将会丢失连接,需要将子路由直接连接到主路由LAN口重新同步配置才能恢复
经过上述配置后,华硕AiMesh组网经过VLAN管理交换机后Mesh子节点访客网络就可以正常使用了。希望华硕还是能修复固件问题,修复通过VLAN交换机后判断有线回传或无线回传错误的问题。
在此也呼吁各大国内厂商,重视网络安全,完善访客网络功能(就是因为小米路由器不支持访客网络同步到Mesh子节点才更换到华硕路由器的)