梅林固件设置多SSID并绑定vlan

in Like with 0 comment

家里安装了IPTV,机顶盒和光猫之间没有网线,只能通过wifi连接机顶盒,而机顶盒通过wifi方式连接又没有办法进行PPPoE拨号,于是在ESXi上虚拟了两个LEDE,一个用于上网PPPoE拨号,一个用于IPTV PPPoE拨号,两个都开启DHCP,其中IPTV需打上vlan ID2,然后接到刷了梅林固件的EA6900上的WAN口,将EA6900设置为AP Mode,并在访客网络中设置用于IPTV的SSID,通过下面的脚本实现了SSID和vlan的绑定。

将下面的命令保存为vlan.sh,并保存在/jffs/scripts目录下。

robocfg vlans reset vlan 1 ports "0 1 2 3 4 5t" vlan 2 ports "0t 5t"
brctl delif br0 wl0.1
brctl delif br0 wl1.1
brctl addbr br1
brctl addif br1 wl0.1
brctl addif br1 wl1.1
brctl addif br1 vlan2
ifconfig br1 up
ifconfig vlan2 up
nvram set lan_ifnames="vlan1 eth1 eth2"
nvram set lan_ifname="br0"
nvram set lan1_ifnames="vlan2 wl0.1 wl1.1"
nvram set lan1_ifname="br1"
killall eapd
eapd

修改/jffs/scripts下面的init-start文件,加入下面的内容。

#!/bin/sh
sleep 3
/jffs/scripts/vlan.sh

正常的话,重启后应就可以正常使用了,客户端连接到不同的SSID会加入到对应的vlan,可以通过下面的命令确认设置是否成功。

brctl show
bridge name    bridge id       STP enabled   interfaces
br0        8000.b4750ef78f71   no       vlan1
                              eth1
                              eth2
br1        8000.b4750ef78f71   no       wl0.1
                              wl1.1
                              vlan2

可以看到br0和br1分别属于vlan1和vlan2,并分别绑定了eth1,eth2和wl0.1,wl1.1两个频段的无线网卡。

robocfg show
Switch: enabled
Port 0: 1000FD enabled stp: none vlan: 1 jumbo: off mac: 00:0c:29:d8:f9:ec
Port 1: DOWN enabled stp: none vlan: 1 jumbo: off mac: 00:00:00:00:00:00
Port 2: DOWN enabled stp: none vlan: 1 jumbo: off mac: 00:00:00:00:00:00
Port 3: DOWN enabled stp: none vlan: 1 jumbo: off mac: 00:00:00:00:00:00
Port 4: DOWN enabled stp: none vlan: 1 jumbo: off mac: 00:00:00:00:00:00
Port 5: 1000FD enabled stp: none vlan: 1 jumbo: off mac: b4:75:0e:f7:8f:71
Port 7: DOWN enabled stp: none vlan: 1 jumbo: off mac: 00:00:00:00:00:00
Port 8: DOWN enabled stp: none vlan: 1 jumbo: off mac: 00:00:00:00:00:00
VLANs: BCM5301x enabled mac_check mac_hash
1: vlan1: 0 1 2 3 4 5t
2: vlan2: 0t 5t

这里显示switch的设置情况,其中0为CPU口,5为WAN口,1 2 3 4为LAN口,7 8忽略就好
vlan1下面有0 1 2 3 4 5,5口类型为trunk
vlan2下面有0 5,两个类型都为trunk

Comments are closed.