|
|
本帖最后由 IamManho 于 2019-10-6 16:38 编辑
6 x. \+ y# p- i# G8 v h) n0 T( i6 t5 f
本方案仅针对 原版猫盘使用USB直刷X3P 有效。如使用一键刷机1.0和TTL等刷机方案不需要尝试,因为原机MAC和SN已经被覆盖。而一键刷机2.0,修改成对应的MAC也有效。
K9 U( s" H5 w% D
1 f" K7 m. }4 {. j1、登陆SSH。7 \! T5 Y0 G) f
2、输入命令行。- ~, Q3 e; R i
2.1、输入”mount -o remount,rw /“9 v) b' J0 o( O) c: A( f3 _
2.2、输入”vi /etc/init.d/S21wire“最下面找到如图修改后保存。 这个步骤需要注意,我的方案是完美恢复原机MAC。
% n9 j) @/ z+ J. d. u 也就是原机主板MAC和后盖的MAC是一致的,而不是其他教程修改成其他非原机MAC。
7 |& z3 _* R7 y1 ?+ T7 T/ V$ I9 a 修改MAC为原机前三段(猫盘后盖就是你的原机MAC,通常都是4C:65:A8),不是修改后三段。) V4 @1 L' t3 v9 x/ _* ~
: a, J. k- X. w2.3、输入”reboot“重启。1 S: c* L2 e' x; G3 c O9 K- O+ C' L9 V; z
: D4 U$ f. F7 K& }% u A M: q' U; G* L1 B0 W
% D; [/ u* p* B4 F- y
顺便给大家科普一下这段代码的意思,与教程无关。setWireMacaddr()
5 o' H7 l4 k5 u" V% f{5 N! U2 d" i( O: T
local face=$1/ |* u- A, M- d* X8 V7 R
MacAddr=`/opt/bin/mac_tool read $2` //读取主板的MAC,例如原装主板MAC为 4C:65:A8:AA:BB:CC
+ F" s1 V" Y8 I1 O4 N #if [ "ff:ff:ff:ff:ff:ff" != "$MacAddr" ] ; then( t3 z% n6 S! `
# ifconfig ${face} hw ether $MacAddr2 A; g4 J/ `7 p# R. k' j
#fi
8 U O% C% c, [$ m" }. X/ F& a% v6 n
0 o. K4 _: X3 a D k7 V MAC_ADDR_PRO="78:C2:C0" //预设字符串 78:C2:C0% U- @8 N! A) y# i1 G( J
MAC_ADDR_ERR="E0:E0:E0"
- e! y) j6 |& }4 ]# \ PRO_TMP=${MacAddr:0:8} //截取主板的MAC前八位字符为4C:65:A8
0 P# ]6 m2 S: J, i/ t! m. o pool=(A B C D E F 1 2 3 4 5 6 7 8 9 0)
. w1 ?7 N+ d2 l num=${#pool}
9 \9 \: B( p8 L7 W( O8 Z V: g) z ADDERR="${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}"
\% n" y6 k$ t( K5 a; C1 [ {! I3 Q
eth_part=$(echo $PRO_TMP | tr [a-z] [A-Z])* O' K( [6 O% L8 R$ W% C
pro_tmp=$(echo $MAC_ADDR_PRO | tr [a-z] [A-Z])" m- @: ]& e- s. Y* x
if [ X"$eth_part" = X"$pro_tmp" ];then //判断MAC——主板八位MAC(4C:65:A8)与预设字符串(78:C2:C0)
1 z- ?+ {8 o+ l. N! B ifconfig ${face} hw ether $MacAddr //如果MAC前八位一致,则使用主板MAC . o$ w( ^2 Q* h- I( ]$ m
else. P% [3 U' K. u2 ^) r
ifconfig ${face} hw ether "$MAC_ADDR_ERR":"$ADDERR" //不一致,则使用 (E0:E0:E0)+(随机生成的后八位组合),这一句就是为什么每次重启MAC都不一样的原因。
8 `6 ]+ a; l6 h% p+ O! t fi1 a/ ^* n! k' `9 S+ T% z0 Z/ Z. r
}
% e+ Z/ m* W' X* X3 O
! i0 p. ]( v5 L/ [$ c通过分析代码可以得出,如果你的猫盘是原装未经过TTL或者一键刷机,那么主板内置的MAC和SN和你后盖是一致的。0 d x' \. L- d8 |7 L' S
那么只需要修改预设字符串为主板前三段即可,不需要像其他教程那样乱改。
6 `; f) \" u9 q& h; e, @+ Z, t如果你是已经过TTL或一键刷机,原机MAC有可能已经被覆盖,如何在分区内恢复原机SN和MAC,看心情开贴。
+ k8 f3 X2 o" z6 O |
评分
-
查看全部评分
|