CaryStudio

 找回密码
 立即注册
搜索
查看: 1669|回复: 0

【转】openwrt默认mac地址配置(MT7620a)

[复制链接]
发表于 2017-12-7 14:06:31 | 显示全部楼层 |阅读模式

请先登录

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
本帖最后由 yuki 于 2017-12-7 14:06 编辑

openwrt默认mac地址配置(MT7620a)
转载出自:http://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/)中先添加一下项:
  1. wmac@10180000 {
  2.     ralink,mtd-eeprom = <&factory 0>;
  3. };
复制代码
wifi驱动自动从factory分区的偏移为0开始读取参数。wifi的mac地址自动从0x04偏移获取。

二、LAN/WAN mac地址默认情况下ethernet也是从0x04获取的eth地址,网络驱动会从该偏移获取的mac地址作为eth的mac地址:
  1. ethernet@10100000 {
  2.     status = "okay";
  3.     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()函数中:
  2.     *)
  3.     lan_mac=$(cat /sys/class/net/eth0/address)
  4.     wan_mac=$(macaddr_add "$lan_mac" 1)
  5.     ;;
复制代码

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

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





回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|CaryStudio ( 粤ICP备16022806号 )

GMT+8, 2023-6-8 09:56 , Processed in 0.083609 second(s), 12 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表