IamManho 发表于 2019-10-6 13:00:33

猫盘刷X3P,完美恢复原机MAC和SN的方法,附上代码分析。

本帖最后由 IamManho 于 2019-10-6 16:38 编辑

本方案仅针对 原版猫盘使用USB直刷X3P 有效。如使用一键刷机1.0和TTL等刷机方案不需要尝试,因为原机MAC和SN已经被覆盖。而一键刷机2.0,修改成对应的MAC也有效。

1、登陆SSH。
2、输入命令行。
2.1、输入”mount -o remount,rw /“
2.2、输入”vi /etc/init.d/S21wire“最下面找到如图修改后保存。      这个步骤需要注意,我的方案是完美恢复原机MAC。
      也就是原机主板MAC和后盖的MAC是一致的,而不是其他教程修改成其他非原机MAC。
      修改MAC为原机前三段(猫盘后盖就是你的原机MAC,通常都是4C:65:A8),不是修改后三段。

2.3、输入”reboot“重启。



顺便给大家科普一下这段代码的意思,与教程无关。setWireMacaddr()
{
      local face=$1
      MacAddr=`/opt/bin/mac_tool read $2`   //读取主板的MAC,例如原装主板MAC为 4C:65:A8:AA:BB:CC
      #if [ "ff:ff:ff:ff:ff:ff" != "$MacAddr" ] ; then
      #      ifconfig ${face} hw ether $MacAddr
      #fi

      MAC_ADDR_PRO="78:C2:C0"//预设字符串 78:C2:C0
      MAC_ADDR_ERR="E0:E0:E0"
      PRO_TMP=${MacAddr:0:8}//截取主板的MAC前八位字符为4C:65:A8
      pool=(A B C D E F 1 2 3 4 5 6 7 8 9 0)
      num=${#pool}
      ADDERR="${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}"

      eth_part=$(echo $PRO_TMP | tr      )
      pro_tmp=$(echo$MAC_ADDR_PRO   |   tr      )
      if [ X"$eth_part" = X"$pro_tmp" ];then//判断MAC——主板八位MAC(4C:65:A8)与预设字符串(78:C2:C0)
                ifconfig ${face} hw ether $MacAddr//如果MAC前八位一致,则使用主板MAC
      else
                ifconfig ${face} hw ether "$MAC_ADDR_ERR":"$ADDERR"//不一致,则使用 (E0:E0:E0)+(随机生成的后八位组合),这一句就是为什么每次重启MAC都不一样的原因。
      fi
}

通过分析代码可以得出,如果你的猫盘是原装未经过TTL或者一键刷机,那么主板内置的MAC和SN和你后盖是一致的。
那么只需要修改预设字符串为主板前三段即可,不需要像其他教程那样乱改。
如果你是已经过TTL或一键刷机,原机MAC有可能已经被覆盖,如何在分区内恢复原机SN和MAC,看心情开贴。

fqxxqwy 发表于 2019-10-6 13:54:22

确定不是改后三段?保留前三段?
我看到的都是改的后三段啊
自己的机器也是这样改后三段的

mao3pan 发表于 2019-10-6 15:31:06

改前六位还是后六位?不解!

no2key 发表于 2019-10-6 15:42:21

本帖最后由 no2key 于 2019-10-6 19:16 编辑

看得不够仔细,理解错了。抱歉。编辑下文字。

IamManho 发表于 2019-10-6 15:54:14

no2key 发表于 2019-10-6 15:42
楼主的教程是错的,不要误人子弟。不能这样改掉固定的开头,会导致随机MAC,从而每次重启或开机分配不同的I ...

看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。
所谓原机MAC就是你的猫盘MAC和你猫盘后盖的MAC一致。

IamManho 发表于 2019-10-6 16:02:36

fqxxqwy 发表于 2019-10-6 13:54
确定不是改后三段?保留前三段?
我看到的都是改的后三段啊
自己的机器也是这样改后三段的 ...

你这种方法只是固定了MAC,而不是原机MAC。

no2key 发表于 2019-10-6 19:10:54

IamManho 发表于 2019-10-6 15:54
看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。
所谓原机MAC就是你的猫盘MAC和你猫盘 ...

噢,对不住了。刚才误会了。

无敌棉花糖 发表于 2019-10-6 20:01:31

IamManho 发表于 2019-10-6 15:54
看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。
所谓原机MAC就是你的猫盘MAC和你猫盘 ...

你这个思路不错。过去是改mac的前六位跟x3p系统一直,你这是反过来该x3p的验证为猫盘的前六位。
不错。:handshake

no2key 发表于 2019-10-6 20:07:31

不知道 x3p 有没除了这个脚本之外,其他地方做序列号或者Mac验证的。没心思去查。
页: [1] 2 3 4
查看完整版本: 猫盘刷X3P,完美恢复原机MAC和SN的方法,附上代码分析。