openwrt默认mac地址配置(MT7620a)

转载自:https://blog.csdn.net/wwx0715/article/details/53338948

对于MT7620a,默认的mac地址都是保存在factory分区,具体为:
    1.offset 0x04    WIIF MAC
    2.offset 0x28    LAN MAC
    3.offset 0x2E    WAN MAC
factory分区不仅保存这mac,还包括wifi的校准参数。
以dts使用MT7620a.dts为例,openwrt使用15.05版本。

一、wifi mac地址
要是wifi能够起来,首先配置dts使wifi驱动能够找到正确的参数,在MT7620a.dts(target/linux/ramips/dts/)中先添加一下项:

wmac@10180000 {
    ralink,mtd-eeprom = <&factory 0>;
};

wifi驱动自动从factory分区的偏移为0开始读取参数。wifi的mac地址自动从0x04偏移获取。
二、LAN/WAN mac地址
默认情况下ethernet也是从0x04获取的eth地址,网络驱动会从该偏移获取的mac地址作为eth的mac地址:

ethernet@10100000 {
    status = "okay";
    mtd-mac-address = <&factory 0x4>;

并且默认情况下lan mac取eth mac地址,wan mac在lan mac之上加1,从02_network(target/linux/ramips/base-files/etc/board.d)可以看出:
1
ramips_setup_macs()函数中:
    *)
    lan_mac=$(cat /sys/class/net/eth0/address)
    wan_mac=$(macaddr_add "$lan_mac" 1)
    ;;

要想改变lan/wan的mac地址修改本脚本即可,参考其他model获取mac地址的方式,定义如下mac的获取格式:
    lan_mac=$(mtd_get_mac_binary factory 40)
    wan_mac=$(mtd_get_mac_binary factory 46)

40和46对应的十六进制数就是lan和wan的偏移量0x28和0x2E。
 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值