|
|
本帖最后由 IamManho 于 2019-10-6 16:38 编辑
% K E& k# }1 b7 W7 r1 V$ @9 b9 Z" \% M- K3 l: |+ R
本方案仅针对 原版猫盘使用USB直刷X3P 有效。如使用一键刷机1.0和TTL等刷机方案不需要尝试,因为原机MAC和SN已经被覆盖。而一键刷机2.0,修改成对应的MAC也有效。
( M' m7 h3 L- b" w
2 R q9 X+ L( E& T) |1、登陆SSH。
4 B7 m6 Y; i: U- V2、输入命令行。9 D7 M( n$ D( p, T k) a
2.1、输入”mount -o remount,rw /“9 B; P; _7 \! c0 L' M
2.2、输入”vi /etc/init.d/S21wire“最下面找到如图修改后保存。 这个步骤需要注意,我的方案是完美恢复原机MAC。0 r, {5 `# n Y7 h$ s
也就是原机主板MAC和后盖的MAC是一致的,而不是其他教程修改成其他非原机MAC。
9 Z, f& ?; y; q* H9 k 修改MAC为原机前三段(猫盘后盖就是你的原机MAC,通常都是4C:65:A8),不是修改后三段。6 P2 R6 Z3 C' u% A
3 P! R* J) \2 Q# Y+ a* [1 B; R
2.3、输入”reboot“重启。2 [) {' R$ D! p0 E; Y. `) ]
2 ^ X' L; H( ]; ~" N& s3 ~/ j6 @5 S. I6 V6 ^, y: o# ^
5 _) T+ c* ?' p! [. ^7 o5 v# }
顺便给大家科普一下这段代码的意思,与教程无关。setWireMacaddr()0 O6 D6 S3 h1 F) k
{
, i9 H& ~' e4 {4 B local face=$1
% m% y2 f* I7 v% E8 t MacAddr=`/opt/bin/mac_tool read $2` //读取主板的MAC,例如原装主板MAC为 4C:65:A8:AA:BB:CC( N6 C8 z* F8 d
#if [ "ff:ff:ff:ff:ff:ff" != "$MacAddr" ] ; then) u% v5 N, m8 l
# ifconfig ${face} hw ether $MacAddr3 l" B& b4 J1 E# Q0 L) G, \
#fi. I( z) l6 @9 A4 e
$ F! h' y' D& C2 S& y
MAC_ADDR_PRO="78:C2:C0" //预设字符串 78:C2:C0. r, M; Y) R4 l( ]4 s' ?3 ]' ?; w0 f+ U
MAC_ADDR_ERR="E0:E0:E0"
" w# F7 K* Z" p6 j7 O# t! u/ g PRO_TMP=${MacAddr:0:8} //截取主板的MAC前八位字符为4C:65:A8
/ @. [! z' m. a \! W& p pool=(A B C D E F 1 2 3 4 5 6 7 8 9 0)
0 ~% o0 ^, Q2 W' ] num=${#pool}$ o _5 C. N, P8 j2 H$ _ t
ADDERR="${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}":"${pool[$((RANDOM%num))]}""${pool[$((RANDOM%num))]}"* `/ [! Y9 G3 g8 O1 f
& `) R& e! D0 Y% y- c8 I. v: T
eth_part=$(echo $PRO_TMP | tr [a-z] [A-Z])
% }6 b; d# U6 p b7 r0 [8 O pro_tmp=$(echo $MAC_ADDR_PRO | tr [a-z] [A-Z]); u5 |" u' Y% p ^0 e7 w) A+ h
if [ X"$eth_part" = X"$pro_tmp" ];then //判断MAC——主板八位MAC(4C:65:A8)与预设字符串(78:C2:C0)4 U$ q1 S0 J. Q0 X& e! Z! j
ifconfig ${face} hw ether $MacAddr //如果MAC前八位一致,则使用主板MAC
+ Q; o! P4 I" i6 @0 _1 X% I! w else7 X) S }1 O! R0 r# z) S- f9 g; J
ifconfig ${face} hw ether "$MAC_ADDR_ERR":"$ADDERR" //不一致,则使用 (E0:E0:E0)+(随机生成的后八位组合),这一句就是为什么每次重启MAC都不一样的原因。
T% ^$ x. u3 U fi
# `" P: E+ E8 ?2 J- [6 y}
d- H8 S( A' ^7 @, d: [% {1 n- l' v* n
通过分析代码可以得出,如果你的猫盘是原装未经过TTL或者一键刷机,那么主板内置的MAC和SN和你后盖是一致的。1 a# Q& Z8 ^ _! M" f9 R
那么只需要修改预设字符串为主板前三段即可,不需要像其他教程那样乱改。5 n2 b% U: x. N
如果你是已经过TTL或一键刷机,原机MAC有可能已经被覆盖,如何在分区内恢复原机SN和MAC,看心情开贴。
$ D' r+ K% C* J. Q0 E. @) N |
评分
-
查看全部评分
|