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

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

[复制链接]

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
发表于 2019-10-6 13:00:33 | 显示全部楼层 |阅读模式
本帖最后由 IamManho 于 2019-10-6 16:38 编辑
: S; w. ~/ S) y9 v5 K& C
- A6 r4 y$ f" U' L. q本方案仅针对 原版猫盘使用USB直刷X3P 有效。如使用一键刷机1.0和TTL等刷机方案不需要尝试,因为原机MAC和SN已经被覆盖。而一键刷机2.0,修改成对应的MAC也有效。
% S' t7 l% G9 T/ T7 t+ S
7 |& o4 ~. a: u8 H1、登陆SSH。
. G" L. Q8 C: O' W/ t/ O- Y' R2、输入命令行。
0 |) x$ z# q( e7 r( w2.1、输入”mount -o remount,rw /6 r2 u7 H6 R. ~5 P0 J6 f# p
2.2、输入”vi /etc/init.d/S21wire“最下面找到如图修改后保存。        这个步骤需要注意,我的方案是完美恢复原机MAC。
4 M6 y( f3 F. |; Z" `        也就是原机主板MAC和后盖的MAC是一致的,而不是其他教程修改成其他非原机MAC。/ r. l3 T. V  {7 p/ A
        修改MAC为原机前三段(猫盘后盖就是你的原机MAC,通常都是4C:65:A8),不是修改后三段。
2 u4 O& n0 M! C8 V% `7 p 未标题-1.jpg
% S* d# z, e% I; X( l8 m8 Q2.3、输入”reboot“重启。; P4 _' Q( l- g. N

) |2 d9 V6 y0 w5 ^9 L6 ~0 ^% V
0 C- m# |2 }& z4 X8 _5 G2 K2 I6 E' [
顺便给大家科普一下这段代码的意思,与教程无关。setWireMacaddr()
  @3 W0 m0 C" \4 {, ^3 n% `3 Y{
- [) C& W- G; ~5 |5 x0 v1 G! v        local face=$1
+ M6 J4 [6 ^: c: f/ p        MacAddr=`/opt/bin/mac_tool read $2`   //读取主板的MAC,例如原装主板MAC为 4C:65:A8:AA:BB:CC) s# r8 n* w' N8 X% S
        #if [ "ff:ff:ff:ff:ff:ff" != "$MacAddr" ] ; then  Z) w1 A8 {' }; }+ z0 V
        #        ifconfig ${face} hw ether $MacAddr
" G0 N9 F8 C, v        #fi: G5 ^+ f6 H& C7 M! z# B

) M( Q4 x$ D/ f% a5 N        MAC_ADDR_PRO="78:C2:C0"  //预设字符串 78:C2:C05 O1 a  S$ W- |" e6 Q" x
        MAC_ADDR_ERR="E0:E0:E0"
$ ^  R. Q, Z0 G. ^% P4 w9 E8 z. I3 d        PRO_TMP=${MacAddr:0:8}  //截取主板的MAC前八位字符4C:65:A87 N% {# v8 B" x5 h$ r" Y% Q
        pool=(A B C D E F 1 2 3 4 5 6 7 8 9 0)
1 K9 {) X3 ~* h( Y, e$ a7 ^        num=${#pool}7 [/ Y% s8 p! P: E& P
        ADDERR="${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}"
0 @* ^" G+ e7 m& b+ b  C2 `/ ~( ~# t1 o2 K; h  o: d
        eth_part=$(echo $PRO_TMP | tr   [a-z]   [A-Z])2 D1 J" ^; L/ G
        pro_tmp=$(echo  $MAC_ADDR_PRO   |   tr   [a-z]   [A-Z])
1 I1 B. w* S, @& r( Y4 i        if [ X"$eth_part" = X"$pro_tmp" ];then  //判断MAC——主板八位MAC(4C:65:A8)与预设字符串(78:C2:C0)# W) o3 v( X8 v# Z9 N7 X
                ifconfig ${face} hw ether $MacAddr  //如果MAC前八位一致,则使用主板MAC   E6 E, i& ?+ b4 ^* H2 {
        else8 `7 F0 w, |4 U: d, x' H3 ?1 Y
                ifconfig ${face} hw ether "$MAC_ADDR_ERR":"$ADDERR"  //不一致,则使用 (E0:E0:E0)+(随机生成的后八位组合),这一句就是为什么每次重启MAC都不一样的原因。4 O4 n% T- T9 `7 R. X
        fi
! j1 H1 q" E. C; g0 J2 p( \: Q}
4 l' |9 b! H5 f5 @% l
$ d" e8 ?) X0 E) T通过分析代码可以得出,如果你的猫盘是原装未经过TTL或者一键刷机,那么主板内置的MAC和SN和你后盖是一致的。9 ]& c7 R5 F% a% b
那么只需要修改预设字符串为主板前三段即可,不需要像其他教程那样乱改。
- ]0 ^) S$ o  h1 E  }, w5 y  R如果你是已经过TTL或一键刷机,原机MAC有可能已经被覆盖,如何在分区内恢复原机SN和MAC,看心情开贴。
+ ?! y! m( i4 }: f1 h

评分

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

查看全部评分

5

主题

86

回帖

528

积分

中级渣柚V2

积分
528
发表于 2019-10-6 13:54:22 | 显示全部楼层
确定不是改后三段?保留前三段?
9 }' U8 W  `3 R" L- H2 E  G$ a我看到的都是改的后三段啊
% P3 o4 q0 d0 ]" P* t5 |2 L7 o自己的机器也是这样改后三段的

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 编辑
; Y% A  G% ?0 c8 x- Z& M. z# o7 i
3 O* B' S+ T* R" t1 g+ H看得不够仔细,理解错了。抱歉。编辑下文字。

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
 楼主| 发表于 2019-10-6 15:54:14 | 显示全部楼层
no2key 发表于 2019-10-6 15:42
: P! @6 u* f" a! a* n6 s楼主的教程是错的,不要误人子弟。不能这样改掉固定的开头,会导致随机MAC,从而每次重启或开机分配不同的I ...

2 N$ t" x' h6 P) r1 {; `看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。
$ X; |1 u7 A) M) x所谓原机MAC就是你的猫盘MAC和你猫盘后盖的MAC一致。

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
 楼主| 发表于 2019-10-6 16:02:36 | 显示全部楼层
fqxxqwy 发表于 2019-10-6 13:54. _1 i5 M2 k! e: f
确定不是改后三段?保留前三段?
* N7 G! @2 m# t. ~' d: }# f我看到的都是改的后三段啊
3 t1 z5 }3 i+ L  E+ G  J自己的机器也是这样改后三段的 ...

+ S6 b/ L; D4 R3 x5 S* E$ p你这种方法只是固定了MAC,而不是原机MAC。

11

主题

216

回帖

5848

积分

管理员

积分
5848
发表于 2019-10-6 19:10:54 来自手机 | 显示全部楼层
IamManho 发表于 2019-10-6 15:548 _; N: s% E1 T" g; @
看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。
+ r2 y6 D% e7 f" l+ L所谓原机MAC就是你的猫盘MAC和你猫盘 ...
, r- q) }5 C& a" |4 O
噢,对不住了。刚才误会了。

7

主题

238

回帖

840

积分

中级渣柚V2

积分
840
发表于 2019-10-6 20:01:31 | 显示全部楼层
IamManho 发表于 2019-10-6 15:544 w- i8 I' E" z8 A4 t' z
看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。* O+ Z$ S- U- x* L) M9 Q
所谓原机MAC就是你的猫盘MAC和你猫盘 ...
% ?: C3 Q- b6 U1 I( x- M; e: L% F
你这个思路不错。过去是改mac的前六位跟x3p系统一直,你这是反过来该x3p的验证为猫盘的前六位。" g3 i4 ]9 l- b1 l3 `
不错。

11

主题

216

回帖

5848

积分

管理员

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

本版积分规则

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

GMT+8, 2025-12-6 13:42 , Processed in 0.112591 second(s), 6 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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