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

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

[复制链接]

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
发表于 2019-10-6 13:00:33 | 显示全部楼层 |阅读模式
本帖最后由 IamManho 于 2019-10-6 16:38 编辑 ! C3 f  M# [0 S: I9 l: I: j
5 u% G! E5 i" v4 a* f8 U, T
本方案仅针对 原版猫盘使用USB直刷X3P 有效。如使用一键刷机1.0和TTL等刷机方案不需要尝试,因为原机MAC和SN已经被覆盖。而一键刷机2.0,修改成对应的MAC也有效。0 L& D$ S% b; @3 N/ f$ W
6 R' Q; d) D( _' c, o& E& L
1、登陆SSH。, h6 U: I% M3 A. ~. c' W$ a; N; }; G2 f# c
2、输入命令行。
$ m( |! ?" k: l3 R, r2.1、输入”mount -o remount,rw /
- k0 i; R/ J4 {5 N0 s2.2、输入”vi /etc/init.d/S21wire“最下面找到如图修改后保存。        这个步骤需要注意,我的方案是完美恢复原机MAC。
& l, ], l) s( m' ^, W        也就是原机主板MAC和后盖的MAC是一致的,而不是其他教程修改成其他非原机MAC。
# M$ e: u: J- b% A$ V3 \        修改MAC为原机前三段(猫盘后盖就是你的原机MAC,通常都是4C:65:A8),不是修改后三段。
: G# K& \# O/ ?5 R) `4 f 未标题-1.jpg 5 W2 Q/ |1 I( H: j; t- u/ c4 w: x
2.3、输入”reboot“重启。; t  {5 F- U" L
: x; p" i, F1 z, ]* w# D

8 M1 x  E" N' f1 O4 @$ u6 E1 J# J* w/ z3 I& s  ?% M
顺便给大家科普一下这段代码的意思,与教程无关。setWireMacaddr()
! j7 V# D. R* R4 x* }; z+ W  \{0 [1 m! {7 b" ]: L, z) V+ n
        local face=$1
9 P# f* x6 Y3 t! [: F        MacAddr=`/opt/bin/mac_tool read $2`   //读取主板的MAC,例如原装主板MAC为 4C:65:A8:AA:BB:CC! p/ c; J7 v* J' p$ S. E
        #if [ "ff:ff:ff:ff:ff:ff" != "$MacAddr" ] ; then
5 K4 O$ {; w: ?1 E+ [        #        ifconfig ${face} hw ether $MacAddr: q' P- X  J* [
        #fi
/ y. R: Z1 f7 `8 e% P+ h6 \5 l5 b/ Q# f& h% ^
        MAC_ADDR_PRO="78:C2:C0"  //预设字符串 78:C2:C0
( X6 i4 B3 g: V& L! k        MAC_ADDR_ERR="E0:E0:E0"
; f- t. q2 ^8 N0 V2 s( }: i        PRO_TMP=${MacAddr:0:8}  //截取主板的MAC前八位字符4C:65:A85 l6 q( i) [8 a8 |/ a; I
        pool=(A B C D E F 1 2 3 4 5 6 7 8 9 0)/ [. Z9 n2 F" E' ?
        num=${#pool}4 V6 x0 g2 [; {. G, R
        ADDERR="${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}"
7 s- w5 t! K9 {3 h. B
3 o4 ^" P- O! y1 q' [$ Y% A        eth_part=$(echo $PRO_TMP | tr   [a-z]   [A-Z])  }: M( [3 M) a# d+ H. C
        pro_tmp=$(echo  $MAC_ADDR_PRO   |   tr   [a-z]   [A-Z])
) Z  P2 c, G. r# \3 ]        if [ X"$eth_part" = X"$pro_tmp" ];then  //判断MAC——主板八位MAC(4C:65:A8)与预设字符串(78:C2:C0)* w* g) [, Y! v! m9 D
                ifconfig ${face} hw ether $MacAddr  //如果MAC前八位一致,则使用主板MAC : [/ N7 c: o5 Y8 [/ Y3 Y
        else
6 r6 B# W2 Q9 c: Y. j                ifconfig ${face} hw ether "$MAC_ADDR_ERR":"$ADDERR"  //不一致,则使用 (E0:E0:E0)+(随机生成的后八位组合),这一句就是为什么每次重启MAC都不一样的原因。' ]6 T4 B5 a% t; R) |& f9 g9 }
        fi7 G; O: a' o& A5 Q1 [% F+ |
}+ o0 s9 v9 s) u9 T7 b9 t) E
8 d5 ~+ D5 S% }0 \9 c# j4 w
通过分析代码可以得出,如果你的猫盘是原装未经过TTL或者一键刷机,那么主板内置的MAC和SN和你后盖是一致的。% G( ?8 Q2 S+ k4 f% {
那么只需要修改预设字符串为主板前三段即可,不需要像其他教程那样乱改。* l2 C4 e! a! Z1 s! n4 m
如果你是已经过TTL或一键刷机,原机MAC有可能已经被覆盖,如何在分区内恢复原机SN和MAC,看心情开贴。; t& Q" {, a# h5 o$ K1 w5 l% L

评分

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

查看全部评分

5

主题

86

回帖

528

积分

中级渣柚V2

积分
528
发表于 2019-10-6 13:54:22 | 显示全部楼层
确定不是改后三段?保留前三段?
: o  P6 R2 W6 N我看到的都是改的后三段啊5 y! H% Z* i3 h' U) \/ Y# Q5 v$ b
自己的机器也是这样改后三段的

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 编辑
8 P9 [9 e5 g7 U2 k+ @
7 @+ ?5 c* i: O9 h看得不够仔细,理解错了。抱歉。编辑下文字。

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
 楼主| 发表于 2019-10-6 15:54:14 | 显示全部楼层
no2key 发表于 2019-10-6 15:420 H6 z2 r+ U! F. m- D. H' k
楼主的教程是错的,不要误人子弟。不能这样改掉固定的开头,会导致随机MAC,从而每次重启或开机分配不同的I ...
8 U7 m1 m9 @# F% l; R
看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。/ H. P1 n, s5 N5 f# n! ~
所谓原机MAC就是你的猫盘MAC和你猫盘后盖的MAC一致。

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
 楼主| 发表于 2019-10-6 16:02:36 | 显示全部楼层
fqxxqwy 发表于 2019-10-6 13:54: P3 j% u* E; }5 y/ }
确定不是改后三段?保留前三段?
  M' c" ^, m  C) ^3 A( W0 t我看到的都是改的后三段啊$ b% L1 U6 h  `
自己的机器也是这样改后三段的 ...

- E) B2 C- M! U( v% k! @你这种方法只是固定了MAC,而不是原机MAC。

11

主题

216

回帖

5848

积分

管理员

积分
5848
发表于 2019-10-6 19:10:54 来自手机 | 显示全部楼层
IamManho 发表于 2019-10-6 15:54
# E# ]: {- @) ]7 T& B& d+ Z+ K看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。
5 e; |4 Q: k* a. h5 m. d. _所谓原机MAC就是你的猫盘MAC和你猫盘 ...

# ]2 V$ H' N6 e4 j+ Q+ w噢,对不住了。刚才误会了。

7

主题

238

回帖

840

积分

中级渣柚V2

积分
840
发表于 2019-10-6 20:01:31 | 显示全部楼层
IamManho 发表于 2019-10-6 15:54
- Y& z' m0 e/ s: A1 n) h看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。
" }) q5 q7 [/ @4 D1 G. k3 L. |! {所谓原机MAC就是你的猫盘MAC和你猫盘 ...
0 {) ]& z  p2 y; j+ ~
你这个思路不错。过去是改mac的前六位跟x3p系统一直,你这是反过来该x3p的验证为猫盘的前六位。, E5 ?" _2 g! q0 m
不错。

11

主题

216

回帖

5848

积分

管理员

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

本版积分规则

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

GMT+8, 2025-5-31 11:36 , Processed in 0.120563 second(s), 6 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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