找回密码
 立即注册
查看: 9888|回复: 30

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

[复制链接]

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
发表于 2019-10-6 13:00:33 | 显示全部楼层 |阅读模式
本帖最后由 IamManho 于 2019-10-6 16:38 编辑
5 M0 r% K$ g& d- n
: Z& I4 @, D* ?9 U1 G( M本方案仅针对 原版猫盘使用USB直刷X3P 有效。如使用一键刷机1.0和TTL等刷机方案不需要尝试,因为原机MAC和SN已经被覆盖。而一键刷机2.0,修改成对应的MAC也有效。
6 g- n6 n1 W9 b1 Z( m
* h1 q, M3 J* a& S; F/ A- ~3 _1、登陆SSH。
- a4 y) N- l! V  v2、输入命令行。: B- m" Q: }- u
2.1、输入”mount -o remount,rw /
( J5 _% |2 y. J5 Z- c" T1 ?2.2、输入”vi /etc/init.d/S21wire“最下面找到如图修改后保存。        这个步骤需要注意,我的方案是完美恢复原机MAC。% F0 e4 }0 C8 v( G0 o* n9 t
        也就是原机主板MAC和后盖的MAC是一致的,而不是其他教程修改成其他非原机MAC。( X4 z7 |, Z; c4 i, E& ^* E+ C3 I1 Q
        修改MAC为原机前三段(猫盘后盖就是你的原机MAC,通常都是4C:65:A8),不是修改后三段。
1 y. [' m0 R. _6 ^0 e' C$ b 未标题-1.jpg % E8 s5 ^1 q/ X
2.3、输入”reboot“重启。
# x/ k# m( U  T) m1 p% {& M8 ~
9 W( q  C/ F4 U- T+ x
* u8 u7 s4 u' m) {' U0 a, C
( |) L8 C! v, r顺便给大家科普一下这段代码的意思,与教程无关。setWireMacaddr()
! V/ H1 a& Y8 v2 a{
  I% g% w% T7 K# S        local face=$16 `, m* R% h  Y* ?0 E7 n$ l6 r
        MacAddr=`/opt/bin/mac_tool read $2`   //读取主板的MAC,例如原装主板MAC为 4C:65:A8:AA:BB:CC
9 W- E" u- T+ ?- J, [  W. G        #if [ "ff:ff:ff:ff:ff:ff" != "$MacAddr" ] ; then( g/ F0 S/ k8 N2 }+ ^. c% m
        #        ifconfig ${face} hw ether $MacAddr
* \; A; o5 a8 t: [5 }        #fi0 Z8 }& e7 d$ S/ C  G# D
0 V" J. G  n8 \; h: c
        MAC_ADDR_PRO="78:C2:C0"  //预设字符串 78:C2:C0
8 w. S2 n/ _8 @) h6 R8 A% L        MAC_ADDR_ERR="E0:E0:E0"! ~. J6 |. }3 c# G- h3 W' Z
        PRO_TMP=${MacAddr:0:8}  //截取主板的MAC前八位字符4C:65:A8
% Z6 t( B1 q* S  W  z, R        pool=(A B C D E F 1 2 3 4 5 6 7 8 9 0)# i1 C: O0 ~; j) l
        num=${#pool}2 o5 F$ V0 m* J1 n# }4 G$ T. q
        ADDERR="${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}"5 r6 K& {" r; y- P

. f/ r9 J2 G+ W/ S" \- |# e1 r8 E        eth_part=$(echo $PRO_TMP | tr   [a-z]   [A-Z])
- X- `  W" U6 _' k        pro_tmp=$(echo  $MAC_ADDR_PRO   |   tr   [a-z]   [A-Z])5 F. y) U! r# H9 U$ ?* G
        if [ X"$eth_part" = X"$pro_tmp" ];then  //判断MAC——主板八位MAC(4C:65:A8)与预设字符串(78:C2:C0)
9 Q. y) ~1 D0 Q2 H                ifconfig ${face} hw ether $MacAddr  //如果MAC前八位一致,则使用主板MAC 7 |7 e- d, a4 P7 L9 D+ _
        else9 L# V7 @* |4 N. e- o! r: g
                ifconfig ${face} hw ether "$MAC_ADDR_ERR":"$ADDERR"  //不一致,则使用 (E0:E0:E0)+(随机生成的后八位组合),这一句就是为什么每次重启MAC都不一样的原因。
" @# G( q+ o" |; j' M# d% I        fi  Y% ~) d: H# H! x0 p4 l7 j
}2 J7 R! t$ D; h- E/ ?7 X* l3 r- v3 z

: ]: Y/ J2 N& B' D2 h1 [通过分析代码可以得出,如果你的猫盘是原装未经过TTL或者一键刷机,那么主板内置的MAC和SN和你后盖是一致的。, H) F$ Q' q3 ^; O; r% v
那么只需要修改预设字符串为主板前三段即可,不需要像其他教程那样乱改。
% W3 C  V4 y4 M3 v/ _: c( r- d如果你是已经过TTL或一键刷机,原机MAC有可能已经被覆盖,如何在分区内恢复原机SN和MAC,看心情开贴。; ^/ b/ X0 q, y  c( g3 c' B

评分

参与人数 2渣金 +5 经验值 +30 收起 理由
zystbbs + 5 + 5 很给力!
xxx + 25

查看全部评分

5

主题

86

回帖

528

积分

中级渣柚V2

积分
528
发表于 2019-10-6 13:54:22 | 显示全部楼层
确定不是改后三段?保留前三段?( Z* u6 H5 ^. C% I
我看到的都是改的后三段啊
; J% f; x' D3 ^& j自己的机器也是这样改后三段的

0

主题

31

回帖

271

积分

中级渣柚V1

积分
271
发表于 2019-10-6 15:31:06 | 显示全部楼层
改前六位还是后六位?不解!

11

主题

216

回帖

5848

积分

管理员

积分
5848
发表于 2019-10-6 15:42:21 来自手机 | 显示全部楼层
本帖最后由 no2key 于 2019-10-6 19:16 编辑
2 Z% e- h4 v. y' j
3 d3 E& n+ V* Z( r) Z5 g2 }$ ?7 C看得不够仔细,理解错了。抱歉。编辑下文字。

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
 楼主| 发表于 2019-10-6 15:54:14 | 显示全部楼层
no2key 发表于 2019-10-6 15:42" j9 Q- c  n. W8 d2 j
楼主的教程是错的,不要误人子弟。不能这样改掉固定的开头,会导致随机MAC,从而每次重启或开机分配不同的I ...
' Q/ f  X9 W1 O$ K7 T' q
看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。( S( Q: F$ l! I& F
所谓原机MAC就是你的猫盘MAC和你猫盘后盖的MAC一致。

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
 楼主| 发表于 2019-10-6 16:02:36 | 显示全部楼层
fqxxqwy 发表于 2019-10-6 13:54: X. j- ]9 p3 D" P# q1 t" z& [8 v
确定不是改后三段?保留前三段?
4 u7 ?* j' v. Z我看到的都是改的后三段啊0 ]9 y$ M9 n0 q( t& u, o  l
自己的机器也是这样改后三段的 ...

8 B; Z" M7 a, Y1 c; x你这种方法只是固定了MAC,而不是原机MAC。

11

主题

216

回帖

5848

积分

管理员

积分
5848
发表于 2019-10-6 19:10:54 来自手机 | 显示全部楼层
IamManho 发表于 2019-10-6 15:547 v3 c4 l$ e8 W6 b* m4 @& b7 `
看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。. A9 d0 t7 U: f5 M! v) Q9 z0 _2 Q
所谓原机MAC就是你的猫盘MAC和你猫盘 ...

! W5 x# p  ]# V& \% R- l) j6 ]) B噢,对不住了。刚才误会了。

7

主题

238

回帖

840

积分

中级渣柚V2

积分
840
发表于 2019-10-6 20:01:31 | 显示全部楼层
IamManho 发表于 2019-10-6 15:545 X+ u7 h- s, H" Q- G
看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。
$ B$ g9 O9 r( R- t" I2 a. z所谓原机MAC就是你的猫盘MAC和你猫盘 ...

! C+ ?- |' ~( ]- r你这个思路不错。过去是改mac的前六位跟x3p系统一直,你这是反过来该x3p的验证为猫盘的前六位。& j( ^4 I* e8 |  c& l; f; z2 d
不错。

11

主题

216

回帖

5848

积分

管理员

积分
5848
发表于 2019-10-6 20:07:31 | 显示全部楼层
不知道 x3p 有没除了这个脚本之外,其他地方做序列号或者Mac验证的。没心思去查。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|矿渣社区 ( 黔ICP备2024020525号-1 )

GMT+8, 2025-12-6 15:00 , Processed in 0.106612 second(s), 5 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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