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

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

[复制链接]

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
发表于 2019-10-6 13:00:33 | 显示全部楼层 |阅读模式
本帖最后由 IamManho 于 2019-10-6 16:38 编辑
- J+ w9 O: m: ^2 ?" H, o
* \$ z  \- n3 z本方案仅针对 原版猫盘使用USB直刷X3P 有效。如使用一键刷机1.0和TTL等刷机方案不需要尝试,因为原机MAC和SN已经被覆盖。而一键刷机2.0,修改成对应的MAC也有效。  l' y9 E) v. f2 i
7 w7 K% z# v0 M1 q
1、登陆SSH。
; [% l$ B& b4 `* ~, ^2、输入命令行。. i' Q6 S1 W( w- G8 ^
2.1、输入”mount -o remount,rw /" e% V- h# r8 G6 _& m
2.2、输入”vi /etc/init.d/S21wire“最下面找到如图修改后保存。        这个步骤需要注意,我的方案是完美恢复原机MAC。
( K$ `4 D3 p* R- q' G        也就是原机主板MAC和后盖的MAC是一致的,而不是其他教程修改成其他非原机MAC。
# R/ ^- `0 v7 a8 V; }        修改MAC为原机前三段(猫盘后盖就是你的原机MAC,通常都是4C:65:A8),不是修改后三段。
0 W5 g8 B( E4 p& }; Q- A* | 未标题-1.jpg
: L1 t5 t6 u/ Y( N2.3、输入”reboot“重启。$ S; f) D, G; V& ?
% Y9 A2 s( ]* H5 I
8 [% n* I. I+ ~
9 I6 ]6 S3 }$ c& B
顺便给大家科普一下这段代码的意思,与教程无关。setWireMacaddr()
/ V# }' `2 ]( k7 C, d6 B8 }: K{4 a1 l) Q6 Z' ^
        local face=$1. u  \. g* s! b
        MacAddr=`/opt/bin/mac_tool read $2`   //读取主板的MAC,例如原装主板MAC为 4C:65:A8:AA:BB:CC
6 y! C8 ?$ P$ G) }  l        #if [ "ff:ff:ff:ff:ff:ff" != "$MacAddr" ] ; then
, [9 h% i5 i; J& Y* N2 G  y        #        ifconfig ${face} hw ether $MacAddr
1 g6 G. B. a( x        #fi) X, b1 J0 Z3 H* f

6 {1 H3 E' @! S9 }6 ]        MAC_ADDR_PRO="78:C2:C0"  //预设字符串 78:C2:C0
6 @0 L2 T+ y8 U5 e- D        MAC_ADDR_ERR="E0:E0:E0"
9 \5 S: }+ w  X. J$ m2 \        PRO_TMP=${MacAddr:0:8}  //截取主板的MAC前八位字符4C:65:A8  {" `5 h; ~( A- E) @% |; z
        pool=(A B C D E F 1 2 3 4 5 6 7 8 9 0). q- ^- u$ X2 P$ t3 ~( P5 k
        num=${#pool}
# ^( s5 j& r( R; J) X4 G: g% ^        ADDERR="${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}"7 ?9 _$ Q6 Y/ B" A) O

" M+ s/ n5 t- U7 Z7 l) ?* b3 n5 n        eth_part=$(echo $PRO_TMP | tr   [a-z]   [A-Z])  G) m4 T, \% {/ j: V/ I
        pro_tmp=$(echo  $MAC_ADDR_PRO   |   tr   [a-z]   [A-Z])
! U( W6 G+ N- i        if [ X"$eth_part" = X"$pro_tmp" ];then  //判断MAC——主板八位MAC(4C:65:A8)与预设字符串(78:C2:C0)
) ]8 q0 _8 p  u                ifconfig ${face} hw ether $MacAddr  //如果MAC前八位一致,则使用主板MAC
2 a& \7 g7 t9 [6 W! Z* z+ s        else& \# q4 k4 l" c) k( o
                ifconfig ${face} hw ether "$MAC_ADDR_ERR":"$ADDERR"  //不一致,则使用 (E0:E0:E0)+(随机生成的后八位组合),这一句就是为什么每次重启MAC都不一样的原因。6 o" L$ \/ H0 Y
        fi
% |9 j8 c$ e; J9 M* _3 Z$ E" K}
) D5 Z, R. `. u- {: X# M& p  \/ Q5 U7 [
2 L; t1 }  {/ N" Y通过分析代码可以得出,如果你的猫盘是原装未经过TTL或者一键刷机,那么主板内置的MAC和SN和你后盖是一致的。0 m4 t7 O  j' M
那么只需要修改预设字符串为主板前三段即可,不需要像其他教程那样乱改。9 V# t7 x; ^7 Z2 P
如果你是已经过TTL或一键刷机,原机MAC有可能已经被覆盖,如何在分区内恢复原机SN和MAC,看心情开贴。
  M( ~3 }" b! x, R

评分

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

查看全部评分

5

主题

86

回帖

528

积分

中级渣柚V2

积分
528
发表于 2019-10-6 13:54:22 | 显示全部楼层
确定不是改后三段?保留前三段?  n2 ?& _9 A0 X* r7 T
我看到的都是改的后三段啊. o9 r( k. K" ^& Q8 r
自己的机器也是这样改后三段的

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 编辑
" p% t6 n( i4 I' L7 C, R( g+ i, n+ B
看得不够仔细,理解错了。抱歉。编辑下文字。

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
 楼主| 发表于 2019-10-6 15:54:14 | 显示全部楼层
no2key 发表于 2019-10-6 15:42
0 o% o7 v+ W6 q; t楼主的教程是错的,不要误人子弟。不能这样改掉固定的开头,会导致随机MAC,从而每次重启或开机分配不同的I ...

% Z, x! U1 W. N1 g看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。
  L/ l( j' \! D9 P所谓原机MAC就是你的猫盘MAC和你猫盘后盖的MAC一致。

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
 楼主| 发表于 2019-10-6 16:02:36 | 显示全部楼层
fqxxqwy 发表于 2019-10-6 13:548 O) I9 ?( d2 ~/ a- |
确定不是改后三段?保留前三段?
7 U. G3 k$ e/ U& z9 R我看到的都是改的后三段啊" {: i+ j, n7 F  O$ d/ U
自己的机器也是这样改后三段的 ...
$ r2 r# o5 R1 d- T% a
你这种方法只是固定了MAC,而不是原机MAC。

11

主题

216

回帖

5848

积分

管理员

积分
5848
发表于 2019-10-6 19:10:54 来自手机 | 显示全部楼层
IamManho 发表于 2019-10-6 15:548 u( p4 V- m, Y/ @1 {( x3 c0 p. }
看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。
$ V, m0 s0 A) d8 u. Z  R! o所谓原机MAC就是你的猫盘MAC和你猫盘 ...
! n7 C6 r: c1 ~! R# w& U! f
噢,对不住了。刚才误会了。

7

主题

238

回帖

840

积分

中级渣柚V2

积分
840
发表于 2019-10-6 20:01:31 | 显示全部楼层
IamManho 发表于 2019-10-6 15:54& }6 \' |7 y6 r) b: I
看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。5 I  h+ D. R$ C3 d) K
所谓原机MAC就是你的猫盘MAC和你猫盘 ...

& i7 `& x9 b' f5 R' `2 R' l7 C( a你这个思路不错。过去是改mac的前六位跟x3p系统一直,你这是反过来该x3p的验证为猫盘的前六位。& T3 c. q: z  d* N) j" c
不错。

11

主题

216

回帖

5848

积分

管理员

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

本版积分规则

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

GMT+8, 2025-11-3 16:40 , Processed in 0.072575 second(s), 5 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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