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

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

[复制链接]

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
发表于 2019-10-6 13:00:33 | 显示全部楼层 |阅读模式
本帖最后由 IamManho 于 2019-10-6 16:38 编辑
6 M. q( R( T- c  V9 c, W
: H+ z. x% G7 p4 M# g. y本方案仅针对 原版猫盘使用USB直刷X3P 有效。如使用一键刷机1.0和TTL等刷机方案不需要尝试,因为原机MAC和SN已经被覆盖。而一键刷机2.0,修改成对应的MAC也有效。% @* B2 Q" D, K7 ?3 y
, l* j% g/ U/ _( q+ Y" T% I  M
1、登陆SSH。4 G; a: O# R7 _% ~$ Q4 I( v
2、输入命令行。
0 F1 G+ \* a& ~4 U: B5 g2.1、输入”mount -o remount,rw /
' _0 }' R4 l' z5 m2.2、输入”vi /etc/init.d/S21wire“最下面找到如图修改后保存。        这个步骤需要注意,我的方案是完美恢复原机MAC。
) X$ p3 J9 B* x  U        也就是原机主板MAC和后盖的MAC是一致的,而不是其他教程修改成其他非原机MAC。
+ y: O8 h0 W' ~  z$ j& I2 }        修改MAC为原机前三段(猫盘后盖就是你的原机MAC,通常都是4C:65:A8),不是修改后三段。0 Z* B% l$ d0 ^, _/ ]! M
未标题-1.jpg , r) v! O( R6 X
2.3、输入”reboot“重启。
) j' C( ]% g" x
3 B) u, p# c. F: Z1 k" p/ y5 g. U
6 s$ g+ Y6 o( i' e6 i4 D
8 C: S7 c+ Q, O* h" W* Z顺便给大家科普一下这段代码的意思,与教程无关。setWireMacaddr()8 H0 H8 }; t) U, C, Y
{
( |1 i( K* V* ~        local face=$1
& \3 S7 p, o3 `8 C3 Y" M8 B7 d        MacAddr=`/opt/bin/mac_tool read $2`   //读取主板的MAC,例如原装主板MAC为 4C:65:A8:AA:BB:CC7 N- \  |* Z/ m
        #if [ "ff:ff:ff:ff:ff:ff" != "$MacAddr" ] ; then
1 Y: Y) K. }* p8 }        #        ifconfig ${face} hw ether $MacAddr
0 {4 V9 `8 D* {/ h5 L$ M" S        #fi
) u: R+ l, P: s! U' q* d
# r  ~  {2 d# D        MAC_ADDR_PRO="78:C2:C0"  //预设字符串 78:C2:C01 U9 m% C" e# q2 M" K/ c/ _
        MAC_ADDR_ERR="E0:E0:E0"5 Q0 L# K" z" k  ?
        PRO_TMP=${MacAddr:0:8}  //截取主板的MAC前八位字符4C:65:A8
0 Q0 c8 c9 X0 b* s        pool=(A B C D E F 1 2 3 4 5 6 7 8 9 0); g6 p+ R& d8 b" P) @; ~% R' Y
        num=${#pool}# [# }8 Z- E0 D7 ]" C
        ADDERR="${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}"
* p/ d: w+ F* W  `4 i% q" A) F. u* b' I; D
        eth_part=$(echo $PRO_TMP | tr   [a-z]   [A-Z])
( R) [) j1 O: V' L2 O8 N3 C% A9 ~6 S        pro_tmp=$(echo  $MAC_ADDR_PRO   |   tr   [a-z]   [A-Z])' \- M6 Z, k( ^* f0 \8 [: l( F2 Z
        if [ X"$eth_part" = X"$pro_tmp" ];then  //判断MAC——主板八位MAC(4C:65:A8)与预设字符串(78:C2:C0)+ r8 U5 c2 r- p8 o7 C7 g
                ifconfig ${face} hw ether $MacAddr  //如果MAC前八位一致,则使用主板MAC
6 c4 L" t& w5 R5 }( ^' R        else
6 }$ \* J9 r) L9 C8 P/ e& F                ifconfig ${face} hw ether "$MAC_ADDR_ERR":"$ADDERR"  //不一致,则使用 (E0:E0:E0)+(随机生成的后八位组合),这一句就是为什么每次重启MAC都不一样的原因。
4 U7 x% J4 G/ q9 J! k# a        fi
8 ?- z( J3 i: r! A6 l4 I, m5 r}8 X$ L- _# A; k% r
8 c4 W1 D+ W4 ~
通过分析代码可以得出,如果你的猫盘是原装未经过TTL或者一键刷机,那么主板内置的MAC和SN和你后盖是一致的。
& l( z3 _  v$ ~7 f那么只需要修改预设字符串为主板前三段即可,不需要像其他教程那样乱改。& I0 z0 Q8 T" a
如果你是已经过TTL或一键刷机,原机MAC有可能已经被覆盖,如何在分区内恢复原机SN和MAC,看心情开贴。
; T7 q) {9 Z7 N5 b; A- O+ S5 x

评分

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

查看全部评分

5

主题

86

回帖

528

积分

中级渣柚V2

积分
528
发表于 2019-10-6 13:54:22 | 显示全部楼层
确定不是改后三段?保留前三段?2 j6 Y4 H6 a2 E: ]2 W+ \
我看到的都是改的后三段啊  R9 y( h; x$ u* B% N
自己的机器也是这样改后三段的

0

主题

31

回帖

271

积分

中级渣柚V1

积分
271
发表于 2019-10-6 15:31:06 | 显示全部楼层
改前六位还是后六位?不解!

11

主题

215

回帖

5623

积分

管理员

积分
5623
发表于 2019-10-6 15:42:21 来自手机 | 显示全部楼层
本帖最后由 no2key 于 2019-10-6 19:16 编辑
9 ~6 U( P8 Q' G, m% U
- {; \7 Z. Q7 x2 @+ [% i6 v; Z看得不够仔细,理解错了。抱歉。编辑下文字。

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
 楼主| 发表于 2019-10-6 15:54:14 | 显示全部楼层
no2key 发表于 2019-10-6 15:42
1 T$ i( D/ u' t- _楼主的教程是错的,不要误人子弟。不能这样改掉固定的开头,会导致随机MAC,从而每次重启或开机分配不同的I ...
7 o/ E! G! f' |0 N8 j, B1 K7 a; L# R$ h6 s7 O
看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。
5 }, U' V. w# q9 Z所谓原机MAC就是你的猫盘MAC和你猫盘后盖的MAC一致。

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
 楼主| 发表于 2019-10-6 16:02:36 | 显示全部楼层
fqxxqwy 发表于 2019-10-6 13:54$ ^7 C; X) Z8 m5 ^5 `- x2 W6 {3 D
确定不是改后三段?保留前三段?
) w4 m/ T2 d) a0 @( O9 g我看到的都是改的后三段啊
. f& q$ L8 v& M, t7 U自己的机器也是这样改后三段的 ...

3 N* H4 T. B3 @, u- c  ]你这种方法只是固定了MAC,而不是原机MAC。

11

主题

215

回帖

5623

积分

管理员

积分
5623
发表于 2019-10-6 19:10:54 来自手机 | 显示全部楼层
IamManho 发表于 2019-10-6 15:54
- W. M; B; X* ^1 V  }/ ^) Z( \看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。
$ z. U0 i! x- @% D- z" x所谓原机MAC就是你的猫盘MAC和你猫盘 ...
) f/ O0 o; A4 |* V: p
噢,对不住了。刚才误会了。

7

主题

236

回帖

836

积分

中级渣柚V2

积分
836
发表于 2019-10-6 20:01:31 | 显示全部楼层
IamManho 发表于 2019-10-6 15:54
5 f+ m  q4 k8 }0 P+ J7 ]: b看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。
/ A6 B" n' p3 e; Z9 A5 @所谓原机MAC就是你的猫盘MAC和你猫盘 ...
- B0 |% `7 N8 _3 G
你这个思路不错。过去是改mac的前六位跟x3p系统一直,你这是反过来该x3p的验证为猫盘的前六位。
) G6 P4 A  \2 y6 a$ }9 p! U不错。

11

主题

215

回帖

5623

积分

管理员

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

本版积分规则

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

GMT+8, 2024-3-29 08:55 , Processed in 0.058195 second(s), 6 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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