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

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

[复制链接]

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
发表于 2019-10-6 13:00:33 | 显示全部楼层 |阅读模式
本帖最后由 IamManho 于 2019-10-6 16:38 编辑
; M$ q- i- l' b2 n& O) o
6 \9 ?  n1 G0 L本方案仅针对 原版猫盘使用USB直刷X3P 有效。如使用一键刷机1.0和TTL等刷机方案不需要尝试,因为原机MAC和SN已经被覆盖。而一键刷机2.0,修改成对应的MAC也有效。
6 F: P6 `7 [) C% [& m( k5 H% Q1 y# O8 q  y3 Y6 e# L+ ~+ U
1、登陆SSH。! Y5 \/ s6 ?9 k& g$ u! F
2、输入命令行。
8 N  \+ [8 o+ y8 \& Z" O5 f2.1、输入”mount -o remount,rw /! G; U5 W- Y* D( B
2.2、输入”vi /etc/init.d/S21wire“最下面找到如图修改后保存。        这个步骤需要注意,我的方案是完美恢复原机MAC。8 ~% n( F+ O8 S+ p
        也就是原机主板MAC和后盖的MAC是一致的,而不是其他教程修改成其他非原机MAC。' R) \# p, C# \1 a
        修改MAC为原机前三段(猫盘后盖就是你的原机MAC,通常都是4C:65:A8),不是修改后三段。; c  e" c4 |7 x
未标题-1.jpg
' K+ w) \! s6 }* V  P2.3、输入”reboot“重启。; r. {. u$ o( n' t  H

9 U* q0 l4 h# x* ?% n$ d3 w% d2 `: x& e0 ^( M

2 A. e; s3 Y# n- K顺便给大家科普一下这段代码的意思,与教程无关。setWireMacaddr()6 A+ R2 r  ?8 N( n- \% z8 r7 A5 F
{. E+ {& D+ a, o9 D: G2 }
        local face=$1
6 Y  e( u1 b5 ?% D( m        MacAddr=`/opt/bin/mac_tool read $2`   //读取主板的MAC,例如原装主板MAC为 4C:65:A8:AA:BB:CC  n) M* p" Q0 z! }& q! Y
        #if [ "ff:ff:ff:ff:ff:ff" != "$MacAddr" ] ; then
# V1 u. E, j3 z: \. Q        #        ifconfig ${face} hw ether $MacAddr
5 p& W4 y5 g; b& I3 _        #fi
: Y7 D1 m$ o* i" W5 |2 y0 q" F- @, X6 t  D! K' w. `
        MAC_ADDR_PRO="78:C2:C0"  //预设字符串 78:C2:C0
5 }% O+ K- l0 v$ z" S        MAC_ADDR_ERR="E0:E0:E0"
2 a5 H+ n6 T  ^, @        PRO_TMP=${MacAddr:0:8}  //截取主板的MAC前八位字符4C:65:A8
  E. a9 ~: o3 r  X5 V        pool=(A B C D E F 1 2 3 4 5 6 7 8 9 0)
& ?* x% B6 w8 x5 M; a        num=${#pool}' b" C2 r( Q- I) F* U) ]+ N: _
        ADDERR="${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}"
) e4 L) x; X0 b6 Z+ y( _
- h8 m1 t! C- D7 G9 `/ G        eth_part=$(echo $PRO_TMP | tr   [a-z]   [A-Z])
& r, C3 M" r" N/ v; p        pro_tmp=$(echo  $MAC_ADDR_PRO   |   tr   [a-z]   [A-Z])
: l7 a4 Q) f1 T; d% C        if [ X"$eth_part" = X"$pro_tmp" ];then  //判断MAC——主板八位MAC(4C:65:A8)与预设字符串(78:C2:C0): E2 t2 O8 C; C4 k; @
                ifconfig ${face} hw ether $MacAddr  //如果MAC前八位一致,则使用主板MAC ) G* t9 J4 q' q  D5 [
        else& |4 t# ]6 }# l  l
                ifconfig ${face} hw ether "$MAC_ADDR_ERR":"$ADDERR"  //不一致,则使用 (E0:E0:E0)+(随机生成的后八位组合),这一句就是为什么每次重启MAC都不一样的原因。( z& l# _! l+ B# s7 ~& H6 R3 h
        fi
( i8 C6 q/ Q! z/ @9 X7 ?" A# H+ {% p}
, ]4 P& d8 ~* v, S0 R. \& K
! S- [2 w2 u* ]2 v% Y% U- B$ L( r通过分析代码可以得出,如果你的猫盘是原装未经过TTL或者一键刷机,那么主板内置的MAC和SN和你后盖是一致的。
1 V/ q7 T. W" i: u6 i那么只需要修改预设字符串为主板前三段即可,不需要像其他教程那样乱改。
0 A$ q; ~5 I0 q. f; ]+ f  D如果你是已经过TTL或一键刷机,原机MAC有可能已经被覆盖,如何在分区内恢复原机SN和MAC,看心情开贴。
7 x# }- N; Z9 ]( `/ q- ]: @  E) x

评分

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

查看全部评分

5

主题

86

回帖

528

积分

中级渣柚V2

积分
528
发表于 2019-10-6 13:54:22 | 显示全部楼层
确定不是改后三段?保留前三段?
. {$ c4 A; E' `6 w/ }我看到的都是改的后三段啊
) ~/ g4 @5 \' z自己的机器也是这样改后三段的

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 编辑
! i: C, H, k3 s; ^- O
6 ^  s  W8 T* s看得不够仔细,理解错了。抱歉。编辑下文字。

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
 楼主| 发表于 2019-10-6 15:54:14 | 显示全部楼层
no2key 发表于 2019-10-6 15:42! q2 m6 m5 C. g+ x  y' ~
楼主的教程是错的,不要误人子弟。不能这样改掉固定的开头,会导致随机MAC,从而每次重启或开机分配不同的I ...
3 p4 |* m# o2 U- V
看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。
/ s: c7 [9 r( V: \$ ^所谓原机MAC就是你的猫盘MAC和你猫盘后盖的MAC一致。

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
 楼主| 发表于 2019-10-6 16:02:36 | 显示全部楼层
fqxxqwy 发表于 2019-10-6 13:549 w- K' Q. b2 W
确定不是改后三段?保留前三段?: C5 @2 o& `0 P, I
我看到的都是改的后三段啊
( G4 F0 _7 Z. |1 F* `自己的机器也是这样改后三段的 ...
7 I  B/ I7 e0 F! ?
你这种方法只是固定了MAC,而不是原机MAC。

11

主题

216

回帖

5848

积分

管理员

积分
5848
发表于 2019-10-6 19:10:54 来自手机 | 显示全部楼层
IamManho 发表于 2019-10-6 15:54
* K1 g1 o: d& y7 J7 z看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。
3 L0 ]; H: Z" a- h  ~所谓原机MAC就是你的猫盘MAC和你猫盘 ...

. L3 z4 t- H5 B5 p噢,对不住了。刚才误会了。

7

主题

238

回帖

840

积分

中级渣柚V2

积分
840
发表于 2019-10-6 20:01:31 | 显示全部楼层
IamManho 发表于 2019-10-6 15:54
" u/ W, \7 {4 \& H- p& M6 N看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。
& N% I( ?7 e/ B7 q; ?- X3 K所谓原机MAC就是你的猫盘MAC和你猫盘 ...

; N% Q2 P* q, f: i5 u; n你这个思路不错。过去是改mac的前六位跟x3p系统一直,你这是反过来该x3p的验证为猫盘的前六位。
1 ^, t! T/ q4 K/ A1 e; w* |不错。

11

主题

216

回帖

5848

积分

管理员

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

本版积分规则

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

GMT+8, 2025-6-1 20:09 , Processed in 0.084163 second(s), 7 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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