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

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

[复制链接]

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
IamManho 发表于 2019-10-6 13:00:33 | 显示全部楼层 |阅读模式 IP:–香港 电讯盈科
本帖最后由 IamManho 于 2019-10-6 16:38 编辑
+ v" D  S4 d6 p/ t- Y" L2 C" J7 Z" r# v2 E! f8 q! J8 u+ L+ }
本方案仅针对 原版猫盘使用USB直刷X3P 有效。如使用一键刷机1.0和TTL等刷机方案不需要尝试,因为原机MAC和SN已经被覆盖。而一键刷机2.0,修改成对应的MAC也有效。
$ m- S% l- Z& S) u2 Y# K- K( B; J" m& @5 n( o9 u6 p: c
1、登陆SSH。
4 }) S9 `, c& R* L- y2、输入命令行。
, B( W( B+ u" o- d2.1、输入”mount -o remount,rw /- O/ [' o3 \: x8 C
2.2、输入”vi /etc/init.d/S21wire“最下面找到如图修改后保存。        这个步骤需要注意,我的方案是完美恢复原机MAC。
; N3 S( H7 C) B; B        也就是原机主板MAC和后盖的MAC是一致的,而不是其他教程修改成其他非原机MAC。
. ]7 }% ]* i4 H        修改MAC为原机前三段(猫盘后盖就是你的原机MAC,通常都是4C:65:A8),不是修改后三段。- ?# M/ f4 S4 V
未标题-1.jpg # ^! @1 `( q! f  Y% t" j
2.3、输入”reboot“重启。
/ y) L2 J8 r% O" s/ C% [
0 @4 U; G( \. l- l4 ^# O+ k: T# Q, t2 k

* `' K; u' o0 l9 v; d" a4 I顺便给大家科普一下这段代码的意思,与教程无关。setWireMacaddr()" n: f# W/ X, M. g
{
- X* N7 l# K+ \4 ]4 ]* _. A        local face=$1
' c* g: `! P6 @: \5 p' I        MacAddr=`/opt/bin/mac_tool read $2`   //读取主板的MAC,例如原装主板MAC为 4C:65:A8:AA:BB:CC
3 m! ~8 o5 i1 E' s& i3 B' O        #if [ "ff:ff:ff:ff:ff:ff" != "$MacAddr" ] ; then
6 s  i. n' U7 v. x! J0 {        #        ifconfig ${face} hw ether $MacAddr8 j% h0 B( w5 P
        #fi
# e: D( m& a" I4 \$ u
# E8 q* E  q+ b/ i) i3 @* E  p        MAC_ADDR_PRO="78:C2:C0"  //预设字符串 78:C2:C0
) w! t, |$ g; h/ w6 R# A        MAC_ADDR_ERR="E0:E0:E0"
1 x8 U7 c' Z+ W        PRO_TMP=${MacAddr:0:8}  //截取主板的MAC前八位字符4C:65:A8
/ e4 p6 }2 W! f8 G        pool=(A B C D E F 1 2 3 4 5 6 7 8 9 0)
# D4 v% s' j2 [+ t: A        num=${#pool}. M* H+ M4 [; V2 `
        ADDERR="${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}"
4 Y* t; u& q# r& B, p! h( [
5 X  \) p5 I# H8 f; H. G- S- ?4 T        eth_part=$(echo $PRO_TMP | tr   [a-z]   [A-Z])
7 d  k1 G# w9 Z; ]. p        pro_tmp=$(echo  $MAC_ADDR_PRO   |   tr   [a-z]   [A-Z])% ]2 L. F9 g0 T2 {+ f
        if [ X"$eth_part" = X"$pro_tmp" ];then  //判断MAC——主板八位MAC(4C:65:A8)与预设字符串(78:C2:C0)" B& T, v2 F) E8 u5 O' N0 h8 {/ I8 ~
                ifconfig ${face} hw ether $MacAddr  //如果MAC前八位一致,则使用主板MAC
% w; L- F6 B& g/ M        else. h  k% t6 l4 B4 A! i" t1 ?
                ifconfig ${face} hw ether "$MAC_ADDR_ERR":"$ADDERR"  //不一致,则使用 (E0:E0:E0)+(随机生成的后八位组合),这一句就是为什么每次重启MAC都不一样的原因。! ]( I& q7 v* l" `$ i% ?9 u
        fi
% A" x$ a9 A4 Y2 f8 `$ i}7 V5 s( [0 N9 f

0 S  s" J6 f4 a% N3 Z1 ^通过分析代码可以得出,如果你的猫盘是原装未经过TTL或者一键刷机,那么主板内置的MAC和SN和你后盖是一致的。- }& [, a7 N4 }. L9 ^2 p9 `+ {  a( [
那么只需要修改预设字符串为主板前三段即可,不需要像其他教程那样乱改。
- W: E8 }# a# F. `1 p0 \  F如果你是已经过TTL或一键刷机,原机MAC有可能已经被覆盖,如何在分区内恢复原机SN和MAC,看心情开贴。
0 O* R4 k) Q! @+ F

评分

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

查看全部评分

5

主题

86

回帖

528

积分

中级渣柚V2

积分
528
fqxxqwy 发表于 2019-10-6 13:54:22 | 显示全部楼层 IP:–江苏–无锡 电信
确定不是改后三段?保留前三段?
& t3 n  f* O1 ], S" `我看到的都是改的后三段啊
7 q- u7 k) d; ^6 @+ o( _自己的机器也是这样改后三段的

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 编辑   J0 {: d) E! O4 w- a+ Z

. G1 U! [9 t9 N9 G' d% R看得不够仔细,理解错了。抱歉。编辑下文字。

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
 楼主| IamManho 发表于 2019-10-6 15:54:14 | 显示全部楼层 IP:–香港 电讯盈科有限公司
no2key 发表于 2019-10-6 15:422 v/ X* `6 N) L9 n2 c
楼主的教程是错的,不要误人子弟。不能这样改掉固定的开头,会导致随机MAC,从而每次重启或开机分配不同的I ...

4 o8 {. z) _- N/ B# `: l看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。
6 X, F. g& M$ p0 C; R) b6 ~0 m; a% h所谓原机MAC就是你的猫盘MAC和你猫盘后盖的MAC一致。

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
 楼主| IamManho 发表于 2019-10-6 16:02:36 | 显示全部楼层 IP:–香港 电讯盈科有限公司
fqxxqwy 发表于 2019-10-6 13:54
  q7 l7 o# R0 [确定不是改后三段?保留前三段?, V( Z9 P: a: Z1 F9 T: _$ `7 V
我看到的都是改的后三段啊, ^- Q! B6 p7 M$ N( F0 Z$ `. }
自己的机器也是这样改后三段的 ...
  g1 @! M6 @4 H; a6 t9 d! b
你这种方法只是固定了MAC,而不是原机MAC。

11

主题

216

回帖

5849

积分

管理员

积分
5849
no2key 发表于 2019-10-6 19:10:54 来自手机 | 显示全部楼层 IP:–广东–广州 电信
IamManho 发表于 2019-10-6 15:543 d" Y/ C) m% q
看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。: }" }2 {: b5 @5 G
所谓原机MAC就是你的猫盘MAC和你猫盘 ...
* W7 o- s0 D! A7 D1 h: w: S. `6 B
噢,对不住了。刚才误会了。

7

主题

238

回帖

841

积分

中级渣柚V2

积分
841
无敌棉花糖 发表于 2019-10-6 20:01:31 | 显示全部楼层 IP:–四川–遂宁 电信
IamManho 发表于 2019-10-6 15:540 u6 n4 a+ G( M) o( X) g
看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。: ?9 ~; ~5 ^: h. c3 t) A
所谓原机MAC就是你的猫盘MAC和你猫盘 ...

- d/ T: b+ y- G- \4 F" C你这个思路不错。过去是改mac的前六位跟x3p系统一直,你这是反过来该x3p的验证为猫盘的前六位。
% Q! T7 H7 V8 B1 u不错。

11

主题

216

回帖

5849

积分

管理员

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

本版积分规则

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

GMT+8, 2026-5-4 12:24 , Processed in 0.093758 second(s), 37 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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