Category 装备合成

首先,我要说下为什么要网卡内建?在某些特殊的情况下, 比如说网卡驱动不行,版本不合适等等这些原因,会导致你的iTunes、iBooks、APP store无法登陆,会提示无法验证此Mac。出现这种情况就说明你的网卡没有内建。

上面引自一篇网卡内建教程。坑爹的是,教程中只提到了如何将已经驱动起来的PCI网卡设置为内建,对本来就是外置的USB网卡却无能为力。

还有一条路是使用OS-X-Null-Ethernet,该软件的思路是在系统中虚拟出来一个内建网卡。此网卡虽然不能用来上网,但可以欺骗App store使其认为机器是有内置网卡的,然后拿这个网卡的信息去验证。显然,苹果不会给这种项目发签名证书的,如果走这条路,需要关闭SIP功能(System Integrity Protection)。

OS-X-Null-Ethernet官方教程是英文且并不详细,显然是写给高手看的,我研究半天才看懂。网络上其他地方关于OS-X-Null-Ethernet的教程很少,且无一例外漏掉了非常重要的一步内容(可能是因为后来苹果重新加了一条验证规则),造成验证失败,本文将之补全了。

¶ 适用范围

主板原装网卡无解

笔记本,无法加装PCI网卡

不想或不能更换网卡

以我的机器为例,是小米Pro顶配版,内置网卡是无解的intel。有些本子可以自己加一个或者换一个网卡,也就五六十块钱就好了,偏偏此机的无线网卡是焊死的,也没有其他能插内置无线网卡的接口。拿个迷你USB无线网卡其实用起来也没多大不便,但是堵死了常规方法做内建网卡的路径。

下文提到的资料和软件,链接见文末“参考资料”。

¶ 替代办法

前置说明:摸索出来这个办法之后,我跟其他人交流,发现可能有更简单的办法,但是没有条件尝试(因为我的验证已经过了),所以将这些可能性列在下面,供对自己人品有信心的人尝试:

找一台白苹果或者iPhone,把账户在正版设备上登陆一次,也许就不需要验证了;

科学上网;

¶ 操作步骤

以下教程针对基于Clover的黑苹果,使用变色龙等方案的可以参考执行。

数字列表项目

首先,下载预编译的OS-X-Null-Ethernet并解压,对预编译不放心的可以下载源码自己编译;

挂载EFI分区;

复制Release/NullEthernet.kext到EFI/CLOVER/kexts/Other/文件夹;

此时重启,开机后在系统偏好/网络中点+符号,应该已经能看到一个以太网项目;如果添加它,可以在高级/硬件中看到它的MAC地址为11:22:33:44:55:66;

不要激动,此时还是不能用的;如果你此时去App store进行认证,会卡在填写支付方式那一项,也不说原因,就是让你联系支持;

但是如果你此时连这个网卡都看不见,说明kext没有加载成功,需要找找原因,例如SIP还没关闭;可以用kextstat | grep -i NullEthernet命令测试到底有没有加载成功;

下一步,将解压出来的ssdt-rmne.aml文件,拷贝到EFI/CLOVER/ACPI/patched目录;一般此文件夹中已经有了几个补丁;强迫症可以将文件重命名一下,没关系的;

最关键的一步来了。网上的其他教程的核心部分都是到上一步为止,但我机器上仍然过不了验证。经我测试,还有很关键的一步是:把默认的MAC地址11:22:33:44:55:66改成一个看起来真实一点的地址;这个验证可能是苹果后来加的;修改方法继续往下看;

下载MaciASL软件,安装运行;

用MaciASL打开刚才拷贝进去的*.aml文件;*.aml是编译过的文本文件,直接打开只能看到base64编码一类的东西,但MaciASL可以把它们反编译成类似如下的源码:

DefinitionBlock ("", "SSDT", 2, "RehabM", "RMNE", 0x00001000)

{

Device (RMNE)

{

Name (_ADR, Zero) // _ADR: Address

Name (_HID, "NULE0000") // _HID: Hardware ID

Name (MAC, Buffer (0x06)

{

0x11, 0x22, 0x33, 0x44, 0x55, 0x66

})

Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method

{

If (LEqual (Arg2, Zero))

{

Return (Buffer (One)

{

0x03

})

}

修改Name (MAC, Buffer (0x06)下面的一行,0x11, 0x22, 0x33, 0x44, 0x55, 0x66中的11,22,...修改成1A, 3F一类的,前缀0x不要动,最后结果应该是0x1A, 0x2B, 0x3F, 0x4C, 0x5D, 0x61这样的,但是不要照抄;

我建议用你的外置网卡MAC地址为基准,末尾两位稍微变动一下作为此虚拟网卡的地址;

点击“编译”,如果没有错误,File/Save保存;可以尝试再次打开此*.aml以确认修改成功;

重启,运行命令ifconfig,查看网卡地址是否修改成功;同时检查修改过的网卡标识是否为en0;

如果不是,按如下步骤操作:

删除/Library/Preferences/SystemConfiguration/NetworkInterfaces.plist(其实我机器里没有这个文件……)

在系统设置偏好里/网络 里删除所有网络连接

重新启动

重新在系统设置偏好里/网络 里加所有网络连接,这次记得首先添加“以太网”一项,也就是虚拟网卡

虚拟网卡的IP设置为自动获取就好;

再次检查:关于本机/系统报告/网络一项,应该是类似下午那副图那样的。

如果都没问题,去登陆App store吧!

¶ 参考资料

黑苹果有线网卡DSDT内建等方法汇总整理

OS-X-Null-Ethernet源码发布地址

预编译的OS-X-Null-Ethernet

MaciASL发布地址

关闭SIP验证

macOS安装教程兼小米Pro安装过程记录

Copyright © 2088 传奇类游戏活动情报局 All Rights Reserved.
友情链接
top