|
本帖最后由 zeng362424 于 2017-6-22 18:35 编辑
最近弄qsdk的9531,发现wifi的mac地址不对,我直接修改art文件里面对应的mac地址位置,起来以后5g的mac不是我修改的,2g的mac地址是我修改的。
art文件里面默认的mac地址是。2g: 00:11:22:33:44:55
5g: 00:11:22:33:44:66
dev: size erasesize name
mtd0: 00040000 00010000 "u-boot"
mtd1: 00010000 00010000 "u-boot-env"
mtd2: 00db0000 00010000 "rootfs"
mtd3: 00380000 00010000 "rootfs_data"
mtd4: 00160000 00010000 "kernel"
mtd5: 00080000 00010000 "config_data"
mtd6: 00010000 00010000 "mac"
mtd7: 00010000 00010000 "art"
mtd8: 00fa0000 00010000 "firmware"
root@:/# hexdump /dev/mtd7 | grep 0001000
0001000 0202 0011 2233 4455 0000 0000 0000 0000
root@:/# hexdump /dev/mtd7 | grep 0005000
0005000 202f 318a 0101 0011 2233 4466 0000 2000
一开始我通过修改/lib/wifi/qcawifi.sh 文件,把生成wireless配置文件的脚本里面生成mac地址的改成我自己的脚本。
原来的通过/sys/class/net/ath1/address这个文件来获取的mac地址的。
wireless配置文件里面的mac地址是对了。
但是我wifi down一下,再wifi up以后,mac地址就不对了,成了00:11:22:33:44:66.
iwconfig显示
- wifi0 no wireless extensions.
- lo no wireless extensions.
- eth1 no wireless extensions.
- ath1 IEEE 802.11ac ESSID:"5g_OpenWrt"
- Mode:Master Frequency:5.18 GHz Access Point: 00:11:22:33:44:66
- Bit Rate:866.7 Mb/s Tx-Power=23 dBm
- RTS thr:off Fragment thr:off
- Encryption key:off
- Power Management:off
- Link Quality=94/94 Signal level=-97 dBm Noise level=-95 dBm
- Rx invalid nwid:73 Rx invalid crypt:0 Rx invalid frag:0
- Tx excessive retries:0 Invalid misc:0 Missed beacon:0
- eth0 no wireless extensions.
- ath0 IEEE 802.11ng ESSID:"2g_OpenWrt"
- Mode:Master Frequency:2.437 GHz Access Point: B8:FD:32:00:00:67
- Bit Rate:144.4 Mb/s Tx-Power=20 dBm
- RTS thr:off Fragment thr:off
- Encryption key:off
- Power Management:off
- Link Quality=0/94 Signal level=-95 dBm Noise level=-95 dBm
- Rx invalid nwid:915 Rx invalid crypt:0 Rx invalid frag:0
- Tx excessive retries:0 Invalid misc:0 Missed beacon:0
- br-lan no wireless extensions.
- wifi1 no wireless extensions.
- bond0 no wireless extensions.
复制代码
wireless配置文件显示
- config wifi-device wifi0
- option type qcawifi
- option channel auto
- option macaddr b8:fd:32:00:00:67
- option hwmode 11ng
- option htmode HT20
- option country CN
- option txpower 26
- option disabled 0
- config wifi-iface
- option device wifi0
- option network lan
- option mode ap
- option ssid 2g_OpenWrt
- option encryption none
- config wifi-device wifi1
- option type qcawifi
- option channel auto
- option macaddr b8:fd:32:00:00:68
- option hwmode 11ac
- option htmode HT80
- option country CN
- option txpower 26
- option disabled 0
- config wifi-iface
- option device wifi1
- option network lan
- option mode ap
- option ssid 5g_OpenWrt
- option encryption none
复制代码
1.现在有两个方法,一个是直接修改驱动,在生成mac地址的时候(/sys/class/net/ath1/address)就生成正确的。
这个我不知道怎么修改。
2.第二个就是wifi down以后再wifi up的,这个mac地址是从哪里获取的呢?因为wifi down 以后删除了/sys/class/net/ath1/address
wifi up 又重新生成了/sys/class/net/ath1/address。
现在主要是这个/sys/class/net/ath1/address 文件怎么生成的?
|
|