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

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

[复制链接]

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
发表于 2019-10-6 13:00:33 | 显示全部楼层 |阅读模式
本帖最后由 IamManho 于 2019-10-6 16:38 编辑 ; X" u% O+ |' d; [
( U+ z( U# o5 }
本方案仅针对 原版猫盘使用USB直刷X3P 有效。如使用一键刷机1.0和TTL等刷机方案不需要尝试,因为原机MAC和SN已经被覆盖。而一键刷机2.0,修改成对应的MAC也有效。9 {! v( R. o8 D! l
, c( `( O. R, G; F& ~. |1 s% X! `0 r, O
1、登陆SSH。
3 m# E& r1 s( n3 a" z2、输入命令行。
! \& m( \' i4 v) k% b  i2.1、输入”mount -o remount,rw /: v2 s( t6 U% ~: ?; o) f7 s
2.2、输入”vi /etc/init.d/S21wire“最下面找到如图修改后保存。        这个步骤需要注意,我的方案是完美恢复原机MAC。0 i$ J) a, }, O! o& l# {
        也就是原机主板MAC和后盖的MAC是一致的,而不是其他教程修改成其他非原机MAC。
3 y  q! _# N6 ]" ]1 j        修改MAC为原机前三段(猫盘后盖就是你的原机MAC,通常都是4C:65:A8),不是修改后三段。
2 \9 R  U. P! Q( r/ U$ P! L/ R 未标题-1.jpg 9 w+ _6 p( }! F8 N: w3 y6 R. b
2.3、输入”reboot“重启。/ S' i% V- n7 ]9 ^

% B! Z" Y$ J% A3 a# U4 f: W3 T; r: ^  R9 V* d2 q/ `
: d/ _' e1 f) ^0 a
顺便给大家科普一下这段代码的意思,与教程无关。setWireMacaddr()& O3 J6 c$ ^% x! R1 y3 T" \& g
{
  f. o& b- C5 l1 \. b! h1 J. K        local face=$1
9 W1 m6 `1 {( C1 x; V+ H        MacAddr=`/opt/bin/mac_tool read $2`   //读取主板的MAC,例如原装主板MAC为 4C:65:A8:AA:BB:CC  _+ p$ g7 n  b8 W! J/ A! O
        #if [ "ff:ff:ff:ff:ff:ff" != "$MacAddr" ] ; then
' Q0 [" [5 R/ u5 s: c0 z/ x0 n        #        ifconfig ${face} hw ether $MacAddr6 f- l8 p/ T, X8 }
        #fi
3 @  }5 o2 J9 P$ @+ E/ D4 S6 b" |5 T( ~& ~+ U, d5 ?+ H1 ]4 i- @
        MAC_ADDR_PRO="78:C2:C0"  //预设字符串 78:C2:C0' [$ z/ B) L) W/ E/ y3 R: v
        MAC_ADDR_ERR="E0:E0:E0"( ^  [: w8 \8 S! S
        PRO_TMP=${MacAddr:0:8}  //截取主板的MAC前八位字符4C:65:A8( j: |1 G5 j, x5 j! b8 ?6 P2 O
        pool=(A B C D E F 1 2 3 4 5 6 7 8 9 0)# y) o$ p5 R# B$ l1 P) p4 A
        num=${#pool}# M; H! J) M5 J: E$ z0 y) ?- L0 m
        ADDERR="${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}"8 P# \' f; N( d7 w" U
  F8 f+ [% m' K" q
        eth_part=$(echo $PRO_TMP | tr   [a-z]   [A-Z])
) z5 l* u8 j* W/ u9 q        pro_tmp=$(echo  $MAC_ADDR_PRO   |   tr   [a-z]   [A-Z])$ X% h3 K/ l/ A8 o# e4 e! P- u% e
        if [ X"$eth_part" = X"$pro_tmp" ];then  //判断MAC——主板八位MAC(4C:65:A8)与预设字符串(78:C2:C0)0 ^" J( E3 V( c0 z' {) j0 \
                ifconfig ${face} hw ether $MacAddr  //如果MAC前八位一致,则使用主板MAC
9 _' c! U. J8 F; Z+ S$ ^! `6 ^        else
/ f# b; g% H8 V2 ]" i                ifconfig ${face} hw ether "$MAC_ADDR_ERR":"$ADDERR"  //不一致,则使用 (E0:E0:E0)+(随机生成的后八位组合),这一句就是为什么每次重启MAC都不一样的原因。: p& n) U# ]/ k
        fi
& f) G! y) T" b5 q4 i( c& ?}# Y( q. ~$ V* v$ H9 z, Y- y
6 h. H1 V8 J3 M% b
通过分析代码可以得出,如果你的猫盘是原装未经过TTL或者一键刷机,那么主板内置的MAC和SN和你后盖是一致的。
% ?- q  l, S0 H/ R那么只需要修改预设字符串为主板前三段即可,不需要像其他教程那样乱改。' N; i; G5 p! Y, a1 T' K
如果你是已经过TTL或一键刷机,原机MAC有可能已经被覆盖,如何在分区内恢复原机SN和MAC,看心情开贴。
6 j' n- P. B5 [; O; w. ^

评分

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

查看全部评分

5

主题

86

回帖

528

积分

中级渣柚V2

积分
528
发表于 2019-10-6 13:54:22 | 显示全部楼层
确定不是改后三段?保留前三段?
! Q1 l4 Z  k8 ~我看到的都是改的后三段啊
6 k8 e3 M5 I) ^3 I. v) _自己的机器也是这样改后三段的

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 编辑 ! M( P4 k$ {2 w9 W1 o

: A4 k5 s5 r) e看得不够仔细,理解错了。抱歉。编辑下文字。

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
 楼主| 发表于 2019-10-6 15:54:14 | 显示全部楼层
no2key 发表于 2019-10-6 15:42' j2 c4 X$ l* |; S
楼主的教程是错的,不要误人子弟。不能这样改掉固定的开头,会导致随机MAC,从而每次重启或开机分配不同的I ...

  o  q% a9 b0 {: }5 y看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。9 e8 w$ V0 M6 P9 H; R5 W
所谓原机MAC就是你的猫盘MAC和你猫盘后盖的MAC一致。

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
 楼主| 发表于 2019-10-6 16:02:36 | 显示全部楼层
fqxxqwy 发表于 2019-10-6 13:54
: q  O! F5 N; X; S( @确定不是改后三段?保留前三段?
& a. m0 [( ~( N; X: |1 `我看到的都是改的后三段啊
; L$ I1 H! |% d- g3 f3 F自己的机器也是这样改后三段的 ...
5 B$ [1 q! C% q$ [( a6 Z
你这种方法只是固定了MAC,而不是原机MAC。

11

主题

215

回帖

5623

积分

管理员

积分
5623
发表于 2019-10-6 19:10:54 来自手机 | 显示全部楼层
IamManho 发表于 2019-10-6 15:545 D/ h+ T4 Y; @5 D4 b% \# ~
看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。* a+ I1 l! ~+ z- [4 Q0 |4 E; e
所谓原机MAC就是你的猫盘MAC和你猫盘 ...

1 h0 l1 p5 x2 y. I' V" ]噢,对不住了。刚才误会了。

7

主题

236

回帖

836

积分

中级渣柚V2

积分
836
发表于 2019-10-6 20:01:31 | 显示全部楼层
IamManho 发表于 2019-10-6 15:54* V$ I; v5 L" c1 W( K
看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。2 B, t- W! k7 e$ r0 Q* B, m
所谓原机MAC就是你的猫盘MAC和你猫盘 ...
0 E0 v& j6 d8 e( J  y' A. f
你这个思路不错。过去是改mac的前六位跟x3p系统一直,你这是反过来该x3p的验证为猫盘的前六位。
4 x5 \5 @; Y: }; H不错。

11

主题

215

回帖

5623

积分

管理员

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

本版积分规则

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

GMT+8, 2024-3-28 23:46 , Processed in 0.053580 second(s), 7 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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