找回密码
 立即注册
查看: 32740|回复: 29

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

[复制链接]

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
发表于 2019-10-6 13:00:33 | 显示全部楼层 |阅读模式
本帖最后由 IamManho 于 2019-10-6 16:38 编辑
9 [: d% b6 d3 F7 m0 `1 H5 g9 _
9 F* T! O# i7 [: G本方案仅针对 原版猫盘使用USB直刷X3P 有效。如使用一键刷机1.0和TTL等刷机方案不需要尝试,因为原机MAC和SN已经被覆盖。而一键刷机2.0,修改成对应的MAC也有效。! N& ]& x, ]7 i/ b
8 b- J6 j1 b& Q
1、登陆SSH。$ F: Z0 I3 c% y& Q. v6 x' c
2、输入命令行。
! C! }3 H: j5 Q0 k5 ^3 \4 T- E2.1、输入”mount -o remount,rw /
  P: w6 G1 l9 Z  H* e9 o2.2、输入”vi /etc/init.d/S21wire“最下面找到如图修改后保存。        这个步骤需要注意,我的方案是完美恢复原机MAC。+ B- y8 d* F5 ]. y5 P. F& ^
        也就是原机主板MAC和后盖的MAC是一致的,而不是其他教程修改成其他非原机MAC。
3 f' C% ~6 J+ R        修改MAC为原机前三段(猫盘后盖就是你的原机MAC,通常都是4C:65:A8),不是修改后三段。
. o* X# L- ]8 C2 H6 ]7 G" j 未标题-1.jpg
! A; v; k7 o% X; G4 d) J2 k! J2.3、输入”reboot“重启。
9 q# i$ H5 S& s/ W7 K0 }% x* J; e  u. ^/ g
0 V  J$ b2 m9 {5 M" V0 b
! v8 J- ?5 Y( s* S. b
顺便给大家科普一下这段代码的意思,与教程无关。setWireMacaddr()' F; L& g- P4 B1 y" }8 [
{7 l6 ^8 V: K' n/ n: X6 D1 b
        local face=$1
" q- ]4 b4 X" r        MacAddr=`/opt/bin/mac_tool read $2`   //读取主板的MAC,例如原装主板MAC为 4C:65:A8:AA:BB:CC, l' k$ M; N* v2 H, \
        #if [ "ff:ff:ff:ff:ff:ff" != "$MacAddr" ] ; then- @* E; l# P) W/ {' [  X' q
        #        ifconfig ${face} hw ether $MacAddr
- v7 _+ M/ a6 C' _1 Q6 `+ n        #fi
9 i) L% M( s- o6 p; a% `. A5 c* b- a; B# ^7 \3 @
        MAC_ADDR_PRO="78:C2:C0"  //预设字符串 78:C2:C0& s+ m' K. e) B1 u: G. h
        MAC_ADDR_ERR="E0:E0:E0"
: X0 o, B0 C/ r: t- d4 s% c        PRO_TMP=${MacAddr:0:8}  //截取主板的MAC前八位字符4C:65:A8# d: u' u- v$ j5 z  \7 B& l
        pool=(A B C D E F 1 2 3 4 5 6 7 8 9 0)
. l. K" Y& D! u9 ]- w- m& B% N        num=${#pool}
( |9 ~6 s5 _) r( I% e! U        ADDERR="${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}"# k7 y  P6 h3 v

) c. y" A0 K" U! U        eth_part=$(echo $PRO_TMP | tr   [a-z]   [A-Z])0 c8 v; k9 z9 O) r
        pro_tmp=$(echo  $MAC_ADDR_PRO   |   tr   [a-z]   [A-Z])
7 n8 {* B7 I+ m; [1 D! r( G4 L5 ?        if [ X"$eth_part" = X"$pro_tmp" ];then  //判断MAC——主板八位MAC(4C:65:A8)与预设字符串(78:C2:C0)9 f5 I. B' ]( c# C+ o& n# s6 B: T3 P
                ifconfig ${face} hw ether $MacAddr  //如果MAC前八位一致,则使用主板MAC
; {/ T. J2 D+ r! }        else- D3 F0 J9 y' w
                ifconfig ${face} hw ether "$MAC_ADDR_ERR":"$ADDERR"  //不一致,则使用 (E0:E0:E0)+(随机生成的后八位组合),这一句就是为什么每次重启MAC都不一样的原因。
8 q4 N' o  a* u& D: r- k        fi
% J4 D( k" t6 n& a. C}; z1 ^1 }$ c$ a& v8 q

7 H9 R: K" S9 [) l+ T通过分析代码可以得出,如果你的猫盘是原装未经过TTL或者一键刷机,那么主板内置的MAC和SN和你后盖是一致的。% b& b! q) G- a+ j" i" l5 `
那么只需要修改预设字符串为主板前三段即可,不需要像其他教程那样乱改。% W7 s$ |" L; h% e
如果你是已经过TTL或一键刷机,原机MAC有可能已经被覆盖,如何在分区内恢复原机SN和MAC,看心情开贴。7 _, H5 b/ p, h- c% C. e

评分

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

查看全部评分

5

主题

86

回帖

528

积分

中级渣柚V2

积分
528
发表于 2019-10-6 13:54:22 | 显示全部楼层
确定不是改后三段?保留前三段?& ]' n5 q5 q& H. b# ]! W
我看到的都是改的后三段啊
' W- M2 P4 S" l  C自己的机器也是这样改后三段的

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 编辑 % ?# R: o' p  l8 P% `% A
: o: V) F2 L2 L+ E; n% p
看得不够仔细,理解错了。抱歉。编辑下文字。

2

主题

3

回帖

136

积分

初级渣柚V2

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

+ D6 p; E0 N5 u5 c& k看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。
; \. e1 t/ ]( M所谓原机MAC就是你的猫盘MAC和你猫盘后盖的MAC一致。

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
 楼主| 发表于 2019-10-6 16:02:36 | 显示全部楼层
fqxxqwy 发表于 2019-10-6 13:54
! k9 B5 V: N" s  E* E确定不是改后三段?保留前三段?% g0 v3 c- V: X! }+ e
我看到的都是改的后三段啊
  A! [+ @# H% x3 H8 m8 Z自己的机器也是这样改后三段的 ...

0 z9 U2 Z4 x! @9 f8 D9 ^7 ~你这种方法只是固定了MAC,而不是原机MAC。

11

主题

216

回帖

5848

积分

管理员

积分
5848
发表于 2019-10-6 19:10:54 来自手机 | 显示全部楼层
IamManho 发表于 2019-10-6 15:54' F& C' u( J" D/ ~6 C  P' f
看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。
0 }; A& V) @+ H* t所谓原机MAC就是你的猫盘MAC和你猫盘 ...

7 P( b/ E) t3 u& _( {噢,对不住了。刚才误会了。

7

主题

238

回帖

840

积分

中级渣柚V2

积分
840
发表于 2019-10-6 20:01:31 | 显示全部楼层
IamManho 发表于 2019-10-6 15:54
% d) ^5 L8 I$ Y4 I看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。  f9 f( O3 J; S
所谓原机MAC就是你的猫盘MAC和你猫盘 ...
' R# e# Z  U+ l* h/ C0 k, A: I
你这个思路不错。过去是改mac的前六位跟x3p系统一直,你这是反过来该x3p的验证为猫盘的前六位。& y; m+ w0 n' _1 O$ Y- M6 X3 a
不错。

11

主题

216

回帖

5848

积分

管理员

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

本版积分规则

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

GMT+8, 2025-4-5 00:37 , Processed in 0.104643 second(s), 6 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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