|
|
本帖最后由 IamManho 于 2019-10-6 16:38 编辑
/ q# y% w; N5 n! ?+ q+ p
' l3 R: L4 b$ }' E# {本方案仅针对 原版猫盘使用USB直刷X3P 有效。如使用一键刷机1.0和TTL等刷机方案不需要尝试,因为原机MAC和SN已经被覆盖。而一键刷机2.0,修改成对应的MAC也有效。* u u: J+ u* C
# W# K: z/ @" W' [1、登陆SSH。% c) v0 M7 A* W) k4 d2 F' {$ Z* s
2、输入命令行。
5 N6 k5 z$ }2 g2.1、输入”mount -o remount,rw /“
( e' O, R9 M( P0 D V2.2、输入”vi /etc/init.d/S21wire“最下面找到如图修改后保存。 这个步骤需要注意,我的方案是完美恢复原机MAC。, T" P' p# h" P6 c
也就是原机主板MAC和后盖的MAC是一致的,而不是其他教程修改成其他非原机MAC。
3 J0 I% ^& r" A0 o# e+ n6 ~! p8 F& n6 u 修改MAC为原机前三段(猫盘后盖就是你的原机MAC,通常都是4C:65:A8),不是修改后三段。
& x) [) Q# x! \8 l& B) O/ G0 O
4 Z h% r' i+ j. R8 r
2.3、输入”reboot“重启。& h9 g9 {7 m7 a; ?
) f6 E, [/ [) ~- T2 I- M" l3 h$ K
3 d' H5 N7 v1 q, z
$ f* G' z0 m9 Z顺便给大家科普一下这段代码的意思,与教程无关。setWireMacaddr()9 ~8 h8 E5 Q# h* \* [/ [; H
{
8 i! ^; O' [* l6 l) f local face=$1
) ]. t6 X2 A M! U8 y4 \ MacAddr=`/opt/bin/mac_tool read $2` //读取主板的MAC,例如原装主板MAC为 4C:65:A8:AA:BB:CC; b& s8 c" p; M6 f
#if [ "ff:ff:ff:ff:ff:ff" != "$MacAddr" ] ; then! T ]# p. `, z! |
# ifconfig ${face} hw ether $MacAddr! T7 L! i3 w/ t* [
#fi9 m, k. b+ B0 p: W8 \
q" K5 L; G Z8 G8 B; t0 n% q) D4 P
MAC_ADDR_PRO="78:C2:C0" //预设字符串 78:C2:C0
) Q3 R: }2 |/ H- L4 Y% T MAC_ADDR_ERR="E0:E0:E0"+ b$ y0 y |/ J' h. o' X, X
PRO_TMP=${MacAddr:0:8} //截取主板的MAC前八位字符为4C:65:A8
% M8 P6 e1 n6 Q# n' v* b! X pool=(A B C D E F 1 2 3 4 5 6 7 8 9 0)
5 \; y$ f7 V* }0 U- [; i X" } num=${#pool}
1 y6 } @, W3 C1 x3 r ADDERR="${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}"
% y0 o( k; _% x, b* i2 x& C: `5 t; S' v! w
eth_part=$(echo $PRO_TMP | tr [a-z] [A-Z])6 @3 m9 y; r! n, p! L9 W
pro_tmp=$(echo $MAC_ADDR_PRO | tr [a-z] [A-Z])
' [* F! @$ J! | if [ X"$eth_part" = X"$pro_tmp" ];then //判断MAC——主板八位MAC(4C:65:A8)与预设字符串(78:C2:C0). Y4 o" A ^) c9 ?, O
ifconfig ${face} hw ether $MacAddr //如果MAC前八位一致,则使用主板MAC 9 a" P) C$ C' n4 w- f2 m- x
else
" Y7 Y/ Z" M7 e, `- l ifconfig ${face} hw ether "$MAC_ADDR_ERR":"$ADDERR" //不一致,则使用 (E0:E0:E0)+(随机生成的后八位组合),这一句就是为什么每次重启MAC都不一样的原因。- {% Z9 w* G5 }
fi" X5 H; F( _' X
}
/ D7 F, |4 R; e
* s V+ b7 F0 {, P/ q通过分析代码可以得出,如果你的猫盘是原装未经过TTL或者一键刷机,那么主板内置的MAC和SN和你后盖是一致的。
- ?# _9 S- k% f% g那么只需要修改预设字符串为主板前三段即可,不需要像其他教程那样乱改。
4 M8 U) Z$ y T% d0 K0 Y5 u如果你是已经过TTL或一键刷机,原机MAC有可能已经被覆盖,如何在分区内恢复原机SN和MAC,看心情开贴。, z' d$ d v" B" D: f+ j
|
评分
-
查看全部评分
|