MAC地址规则如下:
wlan0为2.4G,wlan1为 5G
wlan0 产测写
Lan=wlan0
wan=wlan0+1
wlan1=wlan0+4
MTK7620为例
1、MAC地址的修改(跟SDK类似)
查看MAC地址,MAC地址存储在eeprom中,Factory(mtd3)分区;
root@OpenWrt:/# cat /proc/mtd dev: size erasesize name mtd0: 00800000 00010000 "ALL" mtd1: 00030000 00010000 "Bootloader" mtd2: 00010000 00010000 "Config" mtd3: 00010000 00010000 "Factory" mtd4: 007b0000 00010000 "firmware" mtd5: 0068d359 00010000 "rootfs" mtd6: 00270000 00010000 "rootfs_data" 位置 #define LAN_OFFSET 0x28 #define WAN_OFFSET 0x2E #define W24_OFFSET 0x04 #define W58_OFFSET 0x8004 //mt7610/mt7612/ root@OpenWrt:/# iwpriv ra0 e2p ra0 e2p: [0x0000]:7620 [0x0002]:0105 [0x0004]:55B8 [0x0006]:0010 [0x0008]:4000 [0x000A]:FFFF [0x000C]:FFFF [0x000E]:FFFF [0x0010]:FFFF [0x0012]:FFFF [0x0014]:FFFF [0x0016]:FFFF [0x0018]:FFFF [0x001A]:FFFF [0x001C]:FFFF [0x001E]:FFFF [0x0020]:FFFF [0x0022]:FFFF [0x0024]:FFFF [0x0026]:FFFF [0x0028]:0C00 [0x002A]:7643 [0x002C]:7720 [0x002E]:0C00 [0x0030]:7643 [0x0032]:6620 [0x0034]:0C22 [0x0036]:C004 [0x0038]:FFFF [0x003A]:016E [0x003C]:7755 [0x003E]:AAA8 [0x0040]:888C [0x0042]:FFFF [0x0044]:000A [0x0046]:0000 [0x0048]:0000 [0x004A]:0000 [0x004C]:0000 [0x004E]:FFFF [0x0050]:FFFF [0x0052]:0C0C [0x0054]:0C0C [0x0056]:0D0D [0x0058]:0D0D [0x005A]:0E0D [0x005C]:0E0E [0x005E]:0F0F [0x0060]:1414 [0x0062]:1514 [0x0064]:1515 [0x0066]:1616 [0x0068]:1716 [0x006A]:1717 [0x006C]:1818 [0x006E]:FF80 [0x0070]:FFFF [0x0072]:FF80 [0x0074]:FFFF [0x0076]:0000 修改MAC地址 iwpriv ra0 e2p 4=55B8 iwpriv ra0 e2p 6=9010 iwpriv ra0 e2p 8=4010 iwpriv ra0 e2p 28=55B8 iwpriv ra0 e2p 2A=9010 iwpriv ra0 e2p 2C=4010 iwpriv ra0 e2p 2E=55B8 iwpriv ra0 e2p 30=9010 iwpriv ra0 e2p 32=4110
可以直接通过上述命令把需要的MAC地址全部写入,
但是测试部通过QA工具只写入WLAN_2.4的MAC,其他需要我们的程序自动Fix
在target/linux/ramips/base-files/etc/uci-defaults/02_network中对lan_MAC wlan_MAC进行比较,不一样就Fix;(目前代码已做处理)
修改MAC地址方法2(无线还是需要采用上述的方式)
root@OpenWrt:/# eth_mac How to use: read: eth_mac r <lan|wan> write: eth_mac w <lan|wan> <MACADDR[0]> <MACADDR[1]> ... root@OpenWrt:/# eth_mac w lan F4 28 53 FB 8D 29 eth_mac w wan F4 28 53 FB 8D 30
恢复出厂后,LAN,WAN MAC写入network的实现代码:
target/linux/ramips/base-files/etc/uci-defaults/02_network
注意:必须是恢复出厂状态才会执行uci-defaults下的脚本;
2、对eth_mac进行扩展,新增了cs_ethmac工具,默认写入基准wlan MAC地址;
其他MAC按规则自动匹配设置;
恢复出厂后,即可生效;
本站的文章和资源来自互联网或者站长的原创,按照 CC BY -NC -SA 3.0 CN协议发布和共享,转载或引用本站文章应遵循相同协议。如果有侵犯版权的资 源请尽快联系站长,我们会在24h内删除有争议的资源。欢迎大家多多交流,期待共同学习进步。