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

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

[复制链接]

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
发表于 2019-10-6 13:00:33 | 显示全部楼层 |阅读模式
本帖最后由 IamManho 于 2019-10-6 16:38 编辑
% k) G2 o+ @$ V, _' P2 t. K1 m: l5 _( u
本方案仅针对 原版猫盘使用USB直刷X3P 有效。如使用一键刷机1.0和TTL等刷机方案不需要尝试,因为原机MAC和SN已经被覆盖。而一键刷机2.0,修改成对应的MAC也有效。
  K+ Y9 D. M2 X. V) c9 C1 Q8 J' y5 {2 _+ d7 Z
1、登陆SSH。) |5 B8 n. \1 m& ~" k, x
2、输入命令行。
# e/ E/ J9 P  F% G2 G2.1、输入”mount -o remount,rw /* o5 s* B  ?1 B  z5 j5 f9 l
2.2、输入”vi /etc/init.d/S21wire“最下面找到如图修改后保存。        这个步骤需要注意,我的方案是完美恢复原机MAC。
5 k! ~, v. ^5 `* G: G1 ?( s        也就是原机主板MAC和后盖的MAC是一致的,而不是其他教程修改成其他非原机MAC。
( _7 _5 J* p% p1 j$ K" X        修改MAC为原机前三段(猫盘后盖就是你的原机MAC,通常都是4C:65:A8),不是修改后三段。
; [1 q' a/ }0 V# t/ s8 U# s 未标题-1.jpg
- W) t& V6 |- P0 |, ]& p5 [2.3、输入”reboot“重启。( q4 q: |4 o- S% B! Y7 {7 W# \
' \) h3 [% X3 K: @. `

; \; }: F1 I8 q- L! f+ c0 a$ h+ B) c: N
顺便给大家科普一下这段代码的意思,与教程无关。setWireMacaddr()
  u) M6 n$ J: r# A$ h{7 X# H: p& g4 K* J1 s
        local face=$15 l1 D9 A  X# l$ R
        MacAddr=`/opt/bin/mac_tool read $2`   //读取主板的MAC,例如原装主板MAC为 4C:65:A8:AA:BB:CC) }/ ~; {: ^$ L. j6 Y3 v' y& x
        #if [ "ff:ff:ff:ff:ff:ff" != "$MacAddr" ] ; then5 ^) O1 K1 w7 `, ^" N: o
        #        ifconfig ${face} hw ether $MacAddr& c! @0 C* }$ r  {/ ~  i
        #fi
; r% \! W9 F; m8 ?
' i1 A1 _. i+ t$ p9 e/ b8 Z: w0 U        MAC_ADDR_PRO="78:C2:C0"  //预设字符串 78:C2:C0
* y2 V4 I& g( ?# y* H        MAC_ADDR_ERR="E0:E0:E0"9 P% u$ q* l* l3 _9 O. o  O  _
        PRO_TMP=${MacAddr:0:8}  //截取主板的MAC前八位字符4C:65:A8) ], j' _8 w' f* V2 T: m5 m7 C; B
        pool=(A B C D E F 1 2 3 4 5 6 7 8 9 0)
9 Y! b* R& c- n' Y- A: N        num=${#pool}
2 S- A; f: [0 e. B" l        ADDERR="${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}"4 B! v0 U" P. {( \( h

" g( Z( m: X8 L" T* e* V! x        eth_part=$(echo $PRO_TMP | tr   [a-z]   [A-Z])4 t- F( E  A" Z; @0 u. Y
        pro_tmp=$(echo  $MAC_ADDR_PRO   |   tr   [a-z]   [A-Z])
2 O4 a' c; x4 ?        if [ X"$eth_part" = X"$pro_tmp" ];then  //判断MAC——主板八位MAC(4C:65:A8)与预设字符串(78:C2:C0)
6 ~: b9 o) K% I                ifconfig ${face} hw ether $MacAddr  //如果MAC前八位一致,则使用主板MAC
- E; b5 |( P$ t! l* q2 F' i/ G* @2 O        else4 N: Q. V8 v9 f3 H6 V6 j7 t  D
                ifconfig ${face} hw ether "$MAC_ADDR_ERR":"$ADDERR"  //不一致,则使用 (E0:E0:E0)+(随机生成的后八位组合),这一句就是为什么每次重启MAC都不一样的原因。+ F' H6 T1 j3 ]8 D8 [
        fi
! ]! h+ H- O+ c/ E& p}; k! k4 ?7 p" V! X" J# l% A. e

- U5 i! W6 @, a通过分析代码可以得出,如果你的猫盘是原装未经过TTL或者一键刷机,那么主板内置的MAC和SN和你后盖是一致的。. G4 G0 u9 X7 W+ c) O+ T# {
那么只需要修改预设字符串为主板前三段即可,不需要像其他教程那样乱改。6 y. w4 R4 Y% M% O- ^
如果你是已经过TTL或一键刷机,原机MAC有可能已经被覆盖,如何在分区内恢复原机SN和MAC,看心情开贴。
1 ~% m0 W, w% p6 ^3 U1 ~3 W2 w

评分

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

查看全部评分

5

主题

86

回帖

528

积分

中级渣柚V2

积分
528
发表于 2019-10-6 13:54:22 | 显示全部楼层
确定不是改后三段?保留前三段?2 c" M# M, J, W1 T. _2 K
我看到的都是改的后三段啊
7 H/ k/ k% S% `; s' {5 c5 C自己的机器也是这样改后三段的

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 编辑 9 B( }% T0 O) H4 h8 l- b! T3 e
" B% f+ q0 n# o' [
看得不够仔细,理解错了。抱歉。编辑下文字。

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
 楼主| 发表于 2019-10-6 15:54:14 | 显示全部楼层
no2key 发表于 2019-10-6 15:42
  P6 {6 t7 z/ m. r3 s4 g楼主的教程是错的,不要误人子弟。不能这样改掉固定的开头,会导致随机MAC,从而每次重启或开机分配不同的I ...

, w; [' |& ^* t. h1 k) h# o9 y看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。& }9 O$ Z" V* Q' Q
所谓原机MAC就是你的猫盘MAC和你猫盘后盖的MAC一致。

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
 楼主| 发表于 2019-10-6 16:02:36 | 显示全部楼层
fqxxqwy 发表于 2019-10-6 13:547 {6 P* Z% B+ ]9 F
确定不是改后三段?保留前三段?% ?( w0 Y( b) p* _- W2 V: D; Y
我看到的都是改的后三段啊
5 J8 b! f3 W/ S! t自己的机器也是这样改后三段的 ...
4 `% ]% e8 R1 I/ I
你这种方法只是固定了MAC,而不是原机MAC。

11

主题

216

回帖

5848

积分

管理员

积分
5848
发表于 2019-10-6 19:10:54 来自手机 | 显示全部楼层
IamManho 发表于 2019-10-6 15:54/ d' o& v; k2 d5 y
看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。
2 P: n/ s& S6 p6 H9 [  D所谓原机MAC就是你的猫盘MAC和你猫盘 ...

  j5 d* d$ h+ p' X/ O' b" e噢,对不住了。刚才误会了。

7

主题

238

回帖

841

积分

中级渣柚V2

积分
841
发表于 2019-10-6 20:01:31 | 显示全部楼层
IamManho 发表于 2019-10-6 15:542 T+ A6 x/ Z' `* K8 R2 T
看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。% _& S; p6 C8 H/ P  m
所谓原机MAC就是你的猫盘MAC和你猫盘 ...

; v+ S% D- k7 N你这个思路不错。过去是改mac的前六位跟x3p系统一直,你这是反过来该x3p的验证为猫盘的前六位。
5 h7 j# L' k. \6 z+ o& S; U. L不错。

11

主题

216

回帖

5848

积分

管理员

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

本版积分规则

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

GMT+8, 2026-1-21 00:45 , Processed in 0.087999 second(s), 5 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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