|
|
本帖最后由 IamManho 于 2019-10-6 16:38 编辑 ; b0 i) p0 ^8 q5 a
9 @: D, G& [" u* u2 f! Y本方案仅针对 原版猫盘使用USB直刷X3P 有效。如使用一键刷机1.0和TTL等刷机方案不需要尝试,因为原机MAC和SN已经被覆盖。而一键刷机2.0,修改成对应的MAC也有效。. l# P& U$ d/ L2 P- ?$ {
1 |3 p3 o' Y7 z- m/ Y1、登陆SSH。
4 U/ Q! g8 `7 ~& G' E: Q2、输入命令行。
! D8 b) U( O, P( L: Z2.1、输入”mount -o remount,rw /“1 u1 ]7 \7 \; F* P
2.2、输入”vi /etc/init.d/S21wire“最下面找到如图修改后保存。 这个步骤需要注意,我的方案是完美恢复原机MAC。
- D( c0 I! B* t8 t: S& q2 F8 |* O2 @ 也就是原机主板MAC和后盖的MAC是一致的,而不是其他教程修改成其他非原机MAC。
- y' e+ M8 E6 f+ J9 W$ a5 y) n0 [$ U 修改MAC为原机前三段(猫盘后盖就是你的原机MAC,通常都是4C:65:A8),不是修改后三段。
2 h# \3 v- J5 P; W; k! q. ^6 Q
1 R1 b/ b7 a2 T
2.3、输入”reboot“重启。
' N: g" b+ Y# c" g4 u
8 i9 { m; N* M( Y/ K, l$ s- }0 X7 }: j" c
$ N- S6 r! Q+ _. Y+ C* s! s
顺便给大家科普一下这段代码的意思,与教程无关。setWireMacaddr()7 c3 \3 P* k& z5 m0 D @
{" i* t7 j, S+ j8 T* y
local face=$1
: V8 I9 C) d2 `3 W# y8 j MacAddr=`/opt/bin/mac_tool read $2` //读取主板的MAC,例如原装主板MAC为 4C:65:A8:AA:BB:CC
+ R) A t5 k# v, f, G! k u #if [ "ff:ff:ff:ff:ff:ff" != "$MacAddr" ] ; then- A( i8 j& `1 a; H i# c- f* T
# ifconfig ${face} hw ether $MacAddr) t" v3 c" l4 Y! y- U9 r$ Z
#fi
$ ?7 a9 m& S9 x
' R, m; g* \; G3 l4 m. e MAC_ADDR_PRO="78:C2:C0" //预设字符串 78:C2:C0
3 N" A3 z' `! S7 `/ J# q( b7 O MAC_ADDR_ERR="E0:E0:E0"9 ~2 y( \) A' o- r/ d: d8 e* I
PRO_TMP=${MacAddr:0:8} //截取主板的MAC前八位字符为4C:65:A8+ ^/ |( H9 h7 P1 U
pool=(A B C D E F 1 2 3 4 5 6 7 8 9 0)
$ D7 d% o$ b" P% ^5 O) {' m- I num=${#pool}
3 S- j! J) T: A0 }9 a ADDERR="${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}"- [- `- d* Q( f0 A. V/ E
$ e8 B4 C& W" W eth_part=$(echo $PRO_TMP | tr [a-z] [A-Z])! J/ i) t( o* @% M$ @& v5 U% P/ ~
pro_tmp=$(echo $MAC_ADDR_PRO | tr [a-z] [A-Z])
6 M2 T+ ^9 @7 l. C7 a8 P( ~ if [ X"$eth_part" = X"$pro_tmp" ];then //判断MAC——主板八位MAC(4C:65:A8)与预设字符串(78:C2:C0)
( S, ~ v. F8 ] ifconfig ${face} hw ether $MacAddr //如果MAC前八位一致,则使用主板MAC
0 z, Y5 b) W; _/ U0 q% h( g& h8 N else
0 Z" V) j) ~6 Z" z ifconfig ${face} hw ether "$MAC_ADDR_ERR":"$ADDERR" //不一致,则使用 (E0:E0:E0)+(随机生成的后八位组合),这一句就是为什么每次重启MAC都不一样的原因。3 j" W- }6 ?5 ^5 H
fi% w2 {- D5 o8 U+ n2 ~$ J9 H
}
: ]% |# e- Y4 }; s( }0 x" V) R D8 t) N/ Y D* e# e
通过分析代码可以得出,如果你的猫盘是原装未经过TTL或者一键刷机,那么主板内置的MAC和SN和你后盖是一致的。
$ J# M9 ?6 I6 K3 N那么只需要修改预设字符串为主板前三段即可,不需要像其他教程那样乱改。* M7 Z* P2 d" J8 I+ j' Q( j
如果你是已经过TTL或一键刷机,原机MAC有可能已经被覆盖,如何在分区内恢复原机SN和MAC,看心情开贴。
* r, @6 n% s1 f& m! h5 d |
评分
-
查看全部评分
|