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

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

[复制链接]

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
IamManho 发表于 2019-10-6 13:00:33 | 显示全部楼层 |阅读模式 IP:–香港 电讯盈科
本帖最后由 IamManho 于 2019-10-6 16:38 编辑 2 O( O: \8 S" K; {3 R

" z% X, G; f% Y0 q- J本方案仅针对 原版猫盘使用USB直刷X3P 有效。如使用一键刷机1.0和TTL等刷机方案不需要尝试,因为原机MAC和SN已经被覆盖。而一键刷机2.0,修改成对应的MAC也有效。
: `. r% Q; R2 B3 v2 g* w" G8 d2 C: Z% B
1、登陆SSH。
' h/ C- s8 M5 j5 |1 a9 v9 G2、输入命令行。4 M) W* ~# O7 @5 W" W
2.1、输入”mount -o remount,rw /
1 C: E4 F' _* U5 y: A/ _& R) h2.2、输入”vi /etc/init.d/S21wire“最下面找到如图修改后保存。        这个步骤需要注意,我的方案是完美恢复原机MAC。2 j- S, E; S5 h4 D* K. R
        也就是原机主板MAC和后盖的MAC是一致的,而不是其他教程修改成其他非原机MAC。$ |9 {2 @' P. J; z5 ]) o% P5 `
        修改MAC为原机前三段(猫盘后盖就是你的原机MAC,通常都是4C:65:A8),不是修改后三段。) l8 {5 |! ]/ G4 c4 h& P1 c' G5 [% j! s
未标题-1.jpg # ^1 A, v- i2 c2 g
2.3、输入”reboot“重启。
4 ~, V: W( J% a* s- F, i7 Z
2 l% P! f0 {- q
3 I, j$ [- _% U
+ ^9 _  e- P8 H顺便给大家科普一下这段代码的意思,与教程无关。setWireMacaddr()
# a4 s; C& k+ S  D* j3 P{
4 Y9 P: E) B, G% w, ]* ~        local face=$1" n0 c' G0 T- p3 `- Q
        MacAddr=`/opt/bin/mac_tool read $2`   //读取主板的MAC,例如原装主板MAC为 4C:65:A8:AA:BB:CC
6 ], S( w$ w& Y9 |4 J        #if [ "ff:ff:ff:ff:ff:ff" != "$MacAddr" ] ; then( u. K; i+ e% g) H
        #        ifconfig ${face} hw ether $MacAddr
7 \1 E  h! ]" w        #fi) E. s! K* F+ d) s

7 h6 q- X/ F8 V  \9 k        MAC_ADDR_PRO="78:C2:C0"  //预设字符串 78:C2:C0
5 o/ A$ K' \$ a( Z" Y2 M/ r" d        MAC_ADDR_ERR="E0:E0:E0"- }5 B# X: N" c6 Z4 S# _8 B
        PRO_TMP=${MacAddr:0:8}  //截取主板的MAC前八位字符4C:65:A8# @' E) h" V5 F" |. X/ `
        pool=(A B C D E F 1 2 3 4 5 6 7 8 9 0): b, P- B8 E0 U3 @4 D
        num=${#pool}
5 c  D* J. ?+ P- |% W2 u- k        ADDERR="${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}"
: A+ Q1 _5 u# u+ C
4 E$ H5 k/ n/ R6 k3 F8 d        eth_part=$(echo $PRO_TMP | tr   [a-z]   [A-Z])$ d# ^3 n+ F" X
        pro_tmp=$(echo  $MAC_ADDR_PRO   |   tr   [a-z]   [A-Z])
1 z2 [' Z, i% A  {: `        if [ X"$eth_part" = X"$pro_tmp" ];then  //判断MAC——主板八位MAC(4C:65:A8)与预设字符串(78:C2:C0)
' ?* v7 J5 y( i/ `3 n- i, N# ~                ifconfig ${face} hw ether $MacAddr  //如果MAC前八位一致,则使用主板MAC 9 @8 d6 j: L! W% j1 J) j1 x& D
        else$ c. {8 i6 E8 W) M2 }
                ifconfig ${face} hw ether "$MAC_ADDR_ERR":"$ADDERR"  //不一致,则使用 (E0:E0:E0)+(随机生成的后八位组合),这一句就是为什么每次重启MAC都不一样的原因。) s0 O$ z" E; t+ a
        fi' r5 `/ M: I7 [& z
}
* U( P) H2 f7 _) q2 _5 i9 F
& v( O2 d5 \1 O2 j; I* b通过分析代码可以得出,如果你的猫盘是原装未经过TTL或者一键刷机,那么主板内置的MAC和SN和你后盖是一致的。0 A3 U7 l0 y, j: @7 d
那么只需要修改预设字符串为主板前三段即可,不需要像其他教程那样乱改。
, f& ?- ^& A( L( ]4 j如果你是已经过TTL或一键刷机,原机MAC有可能已经被覆盖,如何在分区内恢复原机SN和MAC,看心情开贴。
$ P7 S4 M3 W3 V& s: x4 o9 E- P9 F/ S

评分

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

查看全部评分

5

主题

86

回帖

528

积分

中级渣柚V2

积分
528
fqxxqwy 发表于 2019-10-6 13:54:22 | 显示全部楼层 IP:–江苏–无锡 电信
确定不是改后三段?保留前三段?
% y2 I  O4 H  }( r我看到的都是改的后三段啊& \% F& J# d; O0 t4 [3 q
自己的机器也是这样改后三段的

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 编辑
, C3 Q+ n, `: Q; w: h' C
) A# Z! x$ x3 `# Q$ }: C看得不够仔细,理解错了。抱歉。编辑下文字。

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
 楼主| IamManho 发表于 2019-10-6 15:54:14 | 显示全部楼层 IP:–香港 电讯盈科有限公司
no2key 发表于 2019-10-6 15:42  u; _( l% `+ c/ v! {1 [+ z
楼主的教程是错的,不要误人子弟。不能这样改掉固定的开头,会导致随机MAC,从而每次重启或开机分配不同的I ...

, [1 W) B$ J$ C! E6 Q看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。
% q: m. s0 v9 N6 K/ ]; n0 E! J所谓原机MAC就是你的猫盘MAC和你猫盘后盖的MAC一致。

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
 楼主| IamManho 发表于 2019-10-6 16:02:36 | 显示全部楼层 IP:–香港 电讯盈科有限公司
fqxxqwy 发表于 2019-10-6 13:54
4 H, r. s: Y0 L5 i& @  c, ~确定不是改后三段?保留前三段?
2 x2 @! Q( t# b% R, n" H我看到的都是改的后三段啊
3 X. X1 e7 k' G+ p+ `" {! k) o自己的机器也是这样改后三段的 ...
1 n$ C, U$ ]8 \( {- Z, @( F% H2 v
你这种方法只是固定了MAC,而不是原机MAC。

11

主题

216

回帖

5849

积分

管理员

积分
5849
no2key 发表于 2019-10-6 19:10:54 来自手机 | 显示全部楼层 IP:–广东–广州 电信
IamManho 发表于 2019-10-6 15:54% K3 S0 k, P$ l: b$ m" T$ O# D
看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。
2 W, _7 \; H# ^' {+ m所谓原机MAC就是你的猫盘MAC和你猫盘 ...

# s7 M3 i! a4 L# T噢,对不住了。刚才误会了。

7

主题

238

回帖

841

积分

中级渣柚V2

积分
841
无敌棉花糖 发表于 2019-10-6 20:01:31 | 显示全部楼层 IP:–四川–遂宁 电信
IamManho 发表于 2019-10-6 15:547 Y5 u: a3 c& h! _" u  i) w
看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。
! \$ J& _1 d& ?0 |, L1 \所谓原机MAC就是你的猫盘MAC和你猫盘 ...
& r1 k3 i2 o0 ]. |) l: B
你这个思路不错。过去是改mac的前六位跟x3p系统一直,你这是反过来该x3p的验证为猫盘的前六位。1 r+ f% w" {3 F7 w, V: I, t1 _; |! |
不错。

11

主题

216

回帖

5849

积分

管理员

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

本版积分规则

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

GMT+8, 2026-5-10 17:31 , Processed in 0.099748 second(s), 28 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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