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

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

[复制链接]

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
发表于 2019-10-6 13:00:33 | 显示全部楼层 |阅读模式
本帖最后由 IamManho 于 2019-10-6 16:38 编辑
9 L& `9 l0 `, N9 c4 B# j& `1 l% J* F4 g0 G$ G  ~! K1 U# Z
本方案仅针对 原版猫盘使用USB直刷X3P 有效。如使用一键刷机1.0和TTL等刷机方案不需要尝试,因为原机MAC和SN已经被覆盖。而一键刷机2.0,修改成对应的MAC也有效。
5 B8 P4 E4 C% C/ q1 K" N* p; W
7 \' Y8 C' L# m& r3 C' @1、登陆SSH。, j2 r& K( V0 |7 P
2、输入命令行。4 ^3 ?2 N$ C% J) d8 [
2.1、输入”mount -o remount,rw /
2 w+ @0 C1 `+ D5 ^2.2、输入”vi /etc/init.d/S21wire“最下面找到如图修改后保存。        这个步骤需要注意,我的方案是完美恢复原机MAC。
. L2 p  E! Z: `; C; U% C        也就是原机主板MAC和后盖的MAC是一致的,而不是其他教程修改成其他非原机MAC。* T3 X# S% U: ^$ g  I/ D7 P& _
        修改MAC为原机前三段(猫盘后盖就是你的原机MAC,通常都是4C:65:A8),不是修改后三段。, ]0 g5 ^' h* u- M; |* Y! a. K
未标题-1.jpg
. V, i8 x6 a  v: h# S6 y$ U2.3、输入”reboot“重启。- w* z5 t% Q$ s" e- Y2 y
" n( j2 P) ~6 p

% O$ L7 ?9 o9 w1 u/ [, x- z; }) T0 r/ a; T5 g4 d
顺便给大家科普一下这段代码的意思,与教程无关。setWireMacaddr()  \2 e8 n5 x$ j
{
! G( {9 {6 X2 {        local face=$1$ D) t; Q/ `/ n+ a
        MacAddr=`/opt/bin/mac_tool read $2`   //读取主板的MAC,例如原装主板MAC为 4C:65:A8:AA:BB:CC
4 j9 g  z  Y/ i4 p+ Q        #if [ "ff:ff:ff:ff:ff:ff" != "$MacAddr" ] ; then
2 M) i& Q0 }4 ^4 r) m5 H        #        ifconfig ${face} hw ether $MacAddr1 j8 k' \7 y% `7 V9 d5 t
        #fi: d* }* g. T; `" G$ W* ~

( g# u; _0 p) e+ d. k# a        MAC_ADDR_PRO="78:C2:C0"  //预设字符串 78:C2:C0  l7 `0 m- V: L6 f9 o
        MAC_ADDR_ERR="E0:E0:E0"
$ O4 C9 n& l  w, Q* G        PRO_TMP=${MacAddr:0:8}  //截取主板的MAC前八位字符4C:65:A8+ d4 }3 N6 c4 J% H) p
        pool=(A B C D E F 1 2 3 4 5 6 7 8 9 0)
% c9 b* T! X) c) f! b" y/ A        num=${#pool}
! ?4 O4 R2 x2 j1 v# Q* P        ADDERR="${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}"
5 p# t% v' }& Y9 {% J% t4 l# @  u7 K- @7 V2 f
        eth_part=$(echo $PRO_TMP | tr   [a-z]   [A-Z])
; i: `5 U" o  B' g* C" P3 B2 T        pro_tmp=$(echo  $MAC_ADDR_PRO   |   tr   [a-z]   [A-Z])
+ a* K& h0 f# P  v; F        if [ X"$eth_part" = X"$pro_tmp" ];then  //判断MAC——主板八位MAC(4C:65:A8)与预设字符串(78:C2:C0)1 o* V( V, ?' ~- _; y
                ifconfig ${face} hw ether $MacAddr  //如果MAC前八位一致,则使用主板MAC
  X& Y6 f: d0 M/ p        else
/ e+ _6 I# |, `9 P                ifconfig ${face} hw ether "$MAC_ADDR_ERR":"$ADDERR"  //不一致,则使用 (E0:E0:E0)+(随机生成的后八位组合),这一句就是为什么每次重启MAC都不一样的原因。
& d2 m4 o, L4 d# M/ Z        fi
  ^8 _! E4 O( m1 `7 ^}8 Z9 @3 Q8 I7 T2 j1 f
3 D; U' h8 o" K9 A8 x: I
通过分析代码可以得出,如果你的猫盘是原装未经过TTL或者一键刷机,那么主板内置的MAC和SN和你后盖是一致的。7 O  @, ^& S! Q8 q7 M, Y( |2 U
那么只需要修改预设字符串为主板前三段即可,不需要像其他教程那样乱改。
4 A9 a" k" G# d5 F如果你是已经过TTL或一键刷机,原机MAC有可能已经被覆盖,如何在分区内恢复原机SN和MAC,看心情开贴。7 @% x) Q- E% w( a; p( O

评分

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

查看全部评分

5

主题

86

回帖

528

积分

中级渣柚V2

积分
528
发表于 2019-10-6 13:54:22 | 显示全部楼层
确定不是改后三段?保留前三段?' d/ T- E# x( B; k' _
我看到的都是改的后三段啊0 L% A$ j% E( G$ Q7 O+ @+ G" J
自己的机器也是这样改后三段的

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 编辑
) l7 d/ S5 x% i* A+ T2 f- W  {
看得不够仔细,理解错了。抱歉。编辑下文字。

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
 楼主| 发表于 2019-10-6 15:54:14 | 显示全部楼层
no2key 发表于 2019-10-6 15:42
6 u. r: W( T# M* w楼主的教程是错的,不要误人子弟。不能这样改掉固定的开头,会导致随机MAC,从而每次重启或开机分配不同的I ...
6 V% z- W7 d$ v& ]& y! ~
看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。
. O2 N: @1 e- S: J3 {所谓原机MAC就是你的猫盘MAC和你猫盘后盖的MAC一致。

2

主题

3

回帖

136

积分

初级渣柚V2

积分
136
 楼主| 发表于 2019-10-6 16:02:36 | 显示全部楼层
fqxxqwy 发表于 2019-10-6 13:54% C, ~! f+ j$ c# T
确定不是改后三段?保留前三段?
9 i3 U7 \# Z! L$ l, h我看到的都是改的后三段啊
; Z' i( G/ Z# J( M2 f& R自己的机器也是这样改后三段的 ...

3 M& g2 f; c  i/ s: H( H1 B+ O你这种方法只是固定了MAC,而不是原机MAC。

11

主题

215

回帖

5623

积分

管理员

积分
5623
发表于 2019-10-6 19:10:54 来自手机 | 显示全部楼层
IamManho 发表于 2019-10-6 15:54
4 K$ ?/ @$ M( [* x  Y" Y' Q3 Z看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。
/ }) t5 o4 X" i) V所谓原机MAC就是你的猫盘MAC和你猫盘 ...
( w0 V6 n; v: c* ?8 U
噢,对不住了。刚才误会了。

7

主题

236

回帖

836

积分

中级渣柚V2

积分
836
发表于 2019-10-6 20:01:31 | 显示全部楼层
IamManho 发表于 2019-10-6 15:54
% Y! [/ I7 n+ P. S6 l6 s看清楚,我的教程是让X3P恢复原机MAC,不是其他教程修改成其他MAC。
0 n) `; f9 b/ b所谓原机MAC就是你的猫盘MAC和你猫盘 ...
4 _$ T' @+ F7 J) y
你这个思路不错。过去是改mac的前六位跟x3p系统一直,你这是反过来该x3p的验证为猫盘的前六位。
1 i+ R% R) z4 v9 n不错。

11

主题

215

回帖

5623

积分

管理员

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

本版积分规则

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

GMT+8, 2024-4-24 15:40 , Processed in 0.073083 second(s), 8 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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