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

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

[复制链接]

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
IamManho 发表于 2019-10-6 13:00:33 | 显示全部楼层 |阅读模式 IP:–香港 电讯盈科
本帖最后由 IamManho 于 2019-10-6 16:38 编辑
9 k7 ^- X* E3 T% s- S! U" i! `) i# J% |! Z# M, z' W
本方案仅针对 原版猫盘使用USB直刷X3P 有效。如使用一键刷机1.0和TTL等刷机方案不需要尝试,因为原机MAC和SN已经被覆盖。而一键刷机2.0,修改成对应的MAC也有效。
7 q. R* k  A8 e: @5 q1 l
3 Q3 b; t: O+ f% V" K& u; Y8 p1、登陆SSH。
3 H8 a  C5 m/ I/ A% Z2、输入命令行。+ r" q# J$ b  a/ H0 x0 n! W
2.1、输入”mount -o remount,rw /0 @8 Y2 t9 k3 C7 t+ b
2.2、输入”vi /etc/init.d/S21wire“最下面找到如图修改后保存。        这个步骤需要注意,我的方案是完美恢复原机MAC。% n% `- L0 S7 q. i: h" `) g
        也就是原机主板MAC和后盖的MAC是一致的,而不是其他教程修改成其他非原机MAC。1 u1 Q/ m5 u$ F6 R6 }
        修改MAC为原机前三段(猫盘后盖就是你的原机MAC,通常都是4C:65:A8),不是修改后三段。( R, G- J8 U, S
未标题-1.jpg ; r6 t1 R, T- R  q, }
2.3、输入”reboot“重启。5 |, [* p" b' B8 T" g1 F4 Y1 ^4 k
& @6 Z* a! Q# r6 U4 _* z+ S; S" o
: e" d5 B9 d( t0 l, S$ V$ Q
! d/ S& q0 a7 N, T( K  d5 n
顺便给大家科普一下这段代码的意思,与教程无关。setWireMacaddr()& X# L0 I; Y, b; `  W
{9 d% Y& T+ G. B1 B4 D% ~
        local face=$1
6 W: z6 b8 P* L) i, l        MacAddr=`/opt/bin/mac_tool read $2`   //读取主板的MAC,例如原装主板MAC为 4C:65:A8:AA:BB:CC
4 z4 {7 r8 t1 R        #if [ "ff:ff:ff:ff:ff:ff" != "$MacAddr" ] ; then
. e9 _! }. {: a( c  W3 N        #        ifconfig ${face} hw ether $MacAddr" ?" V( z4 U- P$ ^
        #fi
! K" \+ z- C3 X8 @* Y: z" a+ g1 n4 d
* Z: \$ M. b* i9 S' U: ~        MAC_ADDR_PRO="78:C2:C0"  //预设字符串 78:C2:C0
- H! W- M0 O9 B% ]& {$ W8 r        MAC_ADDR_ERR="E0:E0:E0"1 g4 _$ m( l) d9 ~9 M
        PRO_TMP=${MacAddr:0:8}  //截取主板的MAC前八位字符4C:65:A8
0 `& O! p& h$ Y, i: Z* V; Y6 z        pool=(A B C D E F 1 2 3 4 5 6 7 8 9 0)
% z9 l  w/ B- g" a, K. Q        num=${#pool}: m# Z; W: p0 U4 a( O$ A) B
        ADDERR="${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}"  a* q8 P5 j, M' z  D

$ H( D( l; i& A! Y! [5 }+ ?        eth_part=$(echo $PRO_TMP | tr   [a-z]   [A-Z])$ ]( T) _% ~( ]; O( d  L+ i
        pro_tmp=$(echo  $MAC_ADDR_PRO   |   tr   [a-z]   [A-Z])! O2 w- I- p8 y! {
        if [ X"$eth_part" = X"$pro_tmp" ];then  //判断MAC——主板八位MAC(4C:65:A8)与预设字符串(78:C2:C0)' E) ?' Z# R( G: @" u+ k  x" O4 D1 e
                ifconfig ${face} hw ether $MacAddr  //如果MAC前八位一致,则使用主板MAC
( g( J1 h! W* h& d& {6 W        else5 k2 ~0 `, L; R( ?$ i
                ifconfig ${face} hw ether "$MAC_ADDR_ERR":"$ADDERR"  //不一致,则使用 (E0:E0:E0)+(随机生成的后八位组合),这一句就是为什么每次重启MAC都不一样的原因。
5 d; x; o9 i7 u$ [# e$ Q+ X5 V        fi( k% s$ I: W7 ?, f3 {) D# \) m
}
4 D, B+ B* ?- g
/ Z+ Q" C! _: K% M3 Z% k通过分析代码可以得出,如果你的猫盘是原装未经过TTL或者一键刷机,那么主板内置的MAC和SN和你后盖是一致的。3 B9 @3 J& ]9 s) Y( Q8 n
那么只需要修改预设字符串为主板前三段即可,不需要像其他教程那样乱改。
( k; D- c* ?  b1 j( V8 V如果你是已经过TTL或一键刷机,原机MAC有可能已经被覆盖,如何在分区内恢复原机SN和MAC,看心情开贴。
; X  [  R2 V; S/ x7 K& B0 @8 J

评分

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

查看全部评分

5

主题

86

回帖

528

积分

中级渣柚V2

积分
528
fqxxqwy 发表于 2019-10-6 13:54:22 | 显示全部楼层 IP:–江苏–无锡 电信
确定不是改后三段?保留前三段?
; w6 w8 W$ J. N% V我看到的都是改的后三段啊
! o/ ]  U' o! ^6 @, X! z自己的机器也是这样改后三段的

0

主题

31

回帖

271

积分

中级渣柚V1

积分
271
mao3pan 发表于 2019-10-6 15:31:06 | 显示全部楼层 IP:–广东–汕头–潮阳区 联通
改前六位还是后六位?不解!

11

主题

216

回帖

5849

积分

管理员

积分
5849
no2key 发表于 2019-10-6 15:42:21 来自手机 | 显示全部楼层 IP:–广东–广州 电信
本帖最后由 no2key 于 2019-10-6 19:16 编辑 7 J4 T9 c# L& S1 Z+ ?' ?
6 m/ ~% ]" p0 ?1 y6 T% l+ M# U6 {
看得不够仔细,理解错了。抱歉。编辑下文字。

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
 楼主| IamManho 发表于 2019-10-6 15:54:14 | 显示全部楼层 IP:–香港 电讯盈科有限公司
no2key 发表于 2019-10-6 15:42
7 d) r; q0 T8 E& V" M' ~楼主的教程是错的,不要误人子弟。不能这样改掉固定的开头,会导致随机MAC,从而每次重启或开机分配不同的I ...

6 G# [0 x' A4 `& t! w; U9 A看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。: }4 a6 f+ S( U5 `1 g/ x1 Z
所谓原机MAC就是你的猫盘MAC和你猫盘后盖的MAC一致。

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
 楼主| IamManho 发表于 2019-10-6 16:02:36 | 显示全部楼层 IP:–香港 电讯盈科有限公司
fqxxqwy 发表于 2019-10-6 13:54
7 H2 q" J$ b, ]+ E2 k( Y6 N确定不是改后三段?保留前三段?2 _  k9 S& D' V6 z9 B; `; h
我看到的都是改的后三段啊  W4 [% l3 Q: F0 D" U
自己的机器也是这样改后三段的 ...

/ \( [: S: |# G% B0 ?) P) J* X7 Q你这种方法只是固定了MAC,而不是原机MAC。

11

主题

216

回帖

5849

积分

管理员

积分
5849
no2key 发表于 2019-10-6 19:10:54 来自手机 | 显示全部楼层 IP:–广东–广州 电信
IamManho 发表于 2019-10-6 15:54
3 j/ C2 b( K4 y9 X0 F看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。4 [+ L! j. }2 r4 |6 `4 u% v2 G4 z8 m! K. z
所谓原机MAC就是你的猫盘MAC和你猫盘 ...

4 Z5 H, x2 p0 F0 J" k噢,对不住了。刚才误会了。

7

主题

238

回帖

841

积分

中级渣柚V2

积分
841
无敌棉花糖 发表于 2019-10-6 20:01:31 | 显示全部楼层 IP:–四川–遂宁 电信
IamManho 发表于 2019-10-6 15:54
2 |& G; h, W* H0 s6 x8 r  k9 V看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。$ Z- P- b  q$ W1 f
所谓原机MAC就是你的猫盘MAC和你猫盘 ...

- ~: M: L1 F8 w1 R: B: y你这个思路不错。过去是改mac的前六位跟x3p系统一直,你这是反过来该x3p的验证为猫盘的前六位。% Y# G6 R. q, G. @: i5 u
不错。

11

主题

216

回帖

5849

积分

管理员

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

本版积分规则

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

GMT+8, 2026-5-22 22:39 , Processed in 0.080726 second(s), 28 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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