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

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

[复制链接]

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
IamManho 发表于 2019-10-6 13:00:33 | 显示全部楼层 |阅读模式 IP:–香港 电讯盈科
本帖最后由 IamManho 于 2019-10-6 16:38 编辑 8 X( R& T0 b( ^) E( H$ R
' ?1 L$ d9 w, F: ^( t$ |
本方案仅针对 原版猫盘使用USB直刷X3P 有效。如使用一键刷机1.0和TTL等刷机方案不需要尝试,因为原机MAC和SN已经被覆盖。而一键刷机2.0,修改成对应的MAC也有效。( ~2 Q9 q- F  ]9 |

: H# b9 V' s6 u6 P/ g% J' O% g3 b1、登陆SSH。
; J& t7 b0 q4 r. W, b( j% M2、输入命令行。
. i% M+ V  b( ]9 M! t2.1、输入”mount -o remount,rw /: C; @1 Y! i  m& a7 O; L. `
2.2、输入”vi /etc/init.d/S21wire“最下面找到如图修改后保存。        这个步骤需要注意,我的方案是完美恢复原机MAC。
( l: d/ p8 k9 l% g+ ]        也就是原机主板MAC和后盖的MAC是一致的,而不是其他教程修改成其他非原机MAC。
+ h" n& P4 s, Z: a- u        修改MAC为原机前三段(猫盘后盖就是你的原机MAC,通常都是4C:65:A8),不是修改后三段。
: c2 x/ N' d5 ?3 j4 O! @. \ 未标题-1.jpg
& N$ F7 `+ G. p) k7 B* f2.3、输入”reboot“重启。4 ?4 I; @$ s$ N: G+ v

' ~/ n" @+ u5 K$ {( A: Z; N  o8 D! S/ G  ~! D% I8 h# h) m* ]

4 t/ }! c; J. u9 c3 \: J顺便给大家科普一下这段代码的意思,与教程无关。setWireMacaddr()
: \! `$ @4 |( f4 f" l0 x' M- i{
  g. _9 ~% z5 D& o        local face=$1
' E) I- U8 [3 ?; R0 J        MacAddr=`/opt/bin/mac_tool read $2`   //读取主板的MAC,例如原装主板MAC为 4C:65:A8:AA:BB:CC) T% R3 g$ a! L( A
        #if [ "ff:ff:ff:ff:ff:ff" != "$MacAddr" ] ; then- F' Q- w3 Z9 K* b& K
        #        ifconfig ${face} hw ether $MacAddr) f9 {' w; F+ P* [+ J7 W( f' H
        #fi! H  E4 o8 L) U/ V+ q) `, d  _
% S' J& m+ h! W' p$ r1 U( ^
        MAC_ADDR_PRO="78:C2:C0"  //预设字符串 78:C2:C0" s; F  }- n' F* c1 \
        MAC_ADDR_ERR="E0:E0:E0"% L( Y- Y, O  h: w6 y( k
        PRO_TMP=${MacAddr:0:8}  //截取主板的MAC前八位字符4C:65:A8
# w+ M  u; R  H5 W. I. y2 T        pool=(A B C D E F 1 2 3 4 5 6 7 8 9 0)
6 [6 W+ D0 o( Z; p7 D        num=${#pool}# U9 A+ S" s; s: m
        ADDERR="${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}"0 x2 N& G% O) o5 ^! U
' w: P$ J( j4 O1 m( ^& X2 L$ m
        eth_part=$(echo $PRO_TMP | tr   [a-z]   [A-Z])
: Z/ e$ ?' {" [        pro_tmp=$(echo  $MAC_ADDR_PRO   |   tr   [a-z]   [A-Z])
" D5 l& A9 T( Z, I: `0 W) h: L        if [ X"$eth_part" = X"$pro_tmp" ];then  //判断MAC——主板八位MAC(4C:65:A8)与预设字符串(78:C2:C0). c, k; c! c; v0 p2 J! v  ~
                ifconfig ${face} hw ether $MacAddr  //如果MAC前八位一致,则使用主板MAC ' V  w0 a3 ~' C1 r0 \0 D+ F  Y. M
        else
) w6 L" w7 U1 h$ {                ifconfig ${face} hw ether "$MAC_ADDR_ERR":"$ADDERR"  //不一致,则使用 (E0:E0:E0)+(随机生成的后八位组合),这一句就是为什么每次重启MAC都不一样的原因。# e- n; O0 M% v$ m5 d5 M
        fi
' \$ z1 ?' ^! C9 i$ W}2 [7 Y7 l1 A7 [3 d9 D5 q
3 @: X- |# N7 j/ Y
通过分析代码可以得出,如果你的猫盘是原装未经过TTL或者一键刷机,那么主板内置的MAC和SN和你后盖是一致的。: Y2 _. ~9 L; ]# p+ k% |
那么只需要修改预设字符串为主板前三段即可,不需要像其他教程那样乱改。
4 J) U7 A: g5 K$ H6 Z6 }1 }如果你是已经过TTL或一键刷机,原机MAC有可能已经被覆盖,如何在分区内恢复原机SN和MAC,看心情开贴。& U$ U" \% y& a# }/ ]

评分

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

查看全部评分

5

主题

86

回帖

528

积分

中级渣柚V2

积分
528
fqxxqwy 发表于 2019-10-6 13:54:22 | 显示全部楼层 IP:–江苏–无锡 电信
确定不是改后三段?保留前三段?
' W9 k' r3 t$ K$ d/ n& d; K我看到的都是改的后三段啊
3 T3 W% \' ^, l# v自己的机器也是这样改后三段的

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 编辑
2 l3 [: h* c. d
! k* H8 j9 y- |% U看得不够仔细,理解错了。抱歉。编辑下文字。

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
 楼主| IamManho 发表于 2019-10-6 15:54:14 | 显示全部楼层 IP:–香港 电讯盈科有限公司
no2key 发表于 2019-10-6 15:42+ x  U. C# U$ r0 \1 g
楼主的教程是错的,不要误人子弟。不能这样改掉固定的开头,会导致随机MAC,从而每次重启或开机分配不同的I ...
  i. K1 h" _3 z) G
看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。
' ~2 V, ^5 ]/ P# t. {& R" O1 R5 u所谓原机MAC就是你的猫盘MAC和你猫盘后盖的MAC一致。

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
 楼主| IamManho 发表于 2019-10-6 16:02:36 | 显示全部楼层 IP:–香港 电讯盈科有限公司
fqxxqwy 发表于 2019-10-6 13:54
+ x: |( n1 ~& D确定不是改后三段?保留前三段?& J* m6 h: ^' \. h& X( `+ a
我看到的都是改的后三段啊8 K$ b; l) ^$ S. Z1 i! T8 z9 T
自己的机器也是这样改后三段的 ...
# Z8 ^2 O; `6 s" Q+ N7 q
你这种方法只是固定了MAC,而不是原机MAC。

11

主题

216

回帖

5849

积分

管理员

积分
5849
no2key 发表于 2019-10-6 19:10:54 来自手机 | 显示全部楼层 IP:–广东–广州 电信
IamManho 发表于 2019-10-6 15:54
* ?  f( K' @; I* n. T- x# B看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。, E0 I4 c8 |$ R+ l2 Y
所谓原机MAC就是你的猫盘MAC和你猫盘 ...
  ]$ G& |5 K( [5 l) D/ B! z
噢,对不住了。刚才误会了。

7

主题

238

回帖

841

积分

中级渣柚V2

积分
841
无敌棉花糖 发表于 2019-10-6 20:01:31 | 显示全部楼层 IP:–四川–遂宁 电信
IamManho 发表于 2019-10-6 15:54
# r) I# C  S$ }7 C看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。5 D2 V8 @, I$ o; \) _
所谓原机MAC就是你的猫盘MAC和你猫盘 ...
% w- U" a+ {9 ]- S( M) c) J
你这个思路不错。过去是改mac的前六位跟x3p系统一直,你这是反过来该x3p的验证为猫盘的前六位。& A  v3 Z& T( ]  v; x
不错。

11

主题

216

回帖

5849

积分

管理员

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

本版积分规则

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

GMT+8, 2026-8-11 09:32 , Processed in 0.087299 second(s), 28 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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