Contribute
Register

Mac App Store access with NullEthernet.kext

Status
Not open for further replies.

RehabMan

Moderator
Joined
May 2, 2012
Messages
181,111
Motherboard
Intel DH67BL
CPU
i7-2600K
Graphics
HD 3000
Mac
  1. MacBook Air
Mobile Phone
  1. iOS
If you don't have working "built-in" Ethernet (or your computer has no Ethernet at all) and do not have a supported PCIe WiFi card, then chances are you're using USB WiFi for internet access. The problem, of course, is that you have no access to the Mac App Store in that scenario.

On a whim, I created NullEthernet.kext to solve this problem. It is a "fake" Ethernet kext that will never actually work. That is, it will not ever provide network access, but it can be made to look "built-in" and solves the issue of Mac App Store access.

For Source/README/download, see here: https://github.com/RehabMan/OS-X-Null-Ethernet

It is now confirmed working in at least two laptops where there is no Ethernet port, and the WiFi is unsupported (and not replaceable).

Update 2014-01-23

A new build is up. This version can be attached to a PCIe device as well as a fake ACPI device (as in the first version). This allows you to load the driver against an actual non-working PCIe device if that is your scenario. It also avoids a DSDT patch as all customization is done in an injector kext by modifying its Info.plist for your device. The injector/PCIe technique is not relevant in the scenario where you have no Ethernet device at all. For that case, you must use the fake ACPI device. See the README.md for details.

Update 2016-12-16

A new build is up. This version can be installed without any tweaks to ACPI, and even without a PCI device to attach to. Simply i install NullEthernetForce.kext along with NullEthernet.kext. Read the README for further details.

NOT WORKING YET. REMOVED.
 
Last edited:
Cool, would this work for a scenario where the Ethernet is unsupported but a native Airport card is installed?
 
Cool, would this work for a scenario where the Ethernet is unsupported but a native Airport card is installed?

It will "work" in that scenario, but I don't think you need it in that case. I know there have been people to get MAS working with only a supported PCIe WiFi card. Could have been smbios related, however, as those cases were laptop hacks with MacBookAir smbios, and the MacBookAir does not have a Ethernet port either.

You can always give it a try...
 
Yeah I think that's what I heard when I was looking into it, however I have a Desktop and would rather not use the MBA smbios. Right now my WiFi card stopped working for some reason, still trying to figure it out, when I have I'll give it a whirl.
 
Uploaded a new build. Details are in post #1 and the README.md at github.
 
hi I can access the mac app store and i also have working wifi etc. However the problem i am getting is that i am unable to download any programs from the app store. Is there any way to fix this problem. It says device could not be verified please contact support". Would this be the same problem? If not could you please point me in the right direction. Many Thanks. Ps im also a newbie and this is my first build.
 
hi I can access the mac app store and i also have working wifi etc. However the problem i am getting is that i am unable to download any programs from the app store. Is there any way to fix this problem. It says device could not be verified please contact support". Would this be the same problem? If not could you please point me in the right direction. Many Thanks. Ps im also a newbie and this is my first build.

Make sure you create a random MAC address (see MAC method in DSDT patch). And also, have you generated a random serial # for your smbios?
 
I got this...
Last login: Mon Mar 3 16:43:51 on console
Mac-Pro-de-Jose:~ josemanuel$ ifconfig
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
options=3<RXCSUM,TXCSUM>
inet6 ::1 prefixlen 128
inet 127.0.0.1 netmask 0xff000000
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1
nd6 options=1<PERFORMNUD>
gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
stf0: flags=0<> mtu 1280
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether 10:fe:ed:15:90:1b
inet6 fe80::12fe:edff:fe15:901b%en0 prefixlen 64 scopeid 0x4
inet 192.168.1.132 netmask 0xffffff00 broadcast 192.168.1.255
nd6 options=1<PERFORMNUD>
media: autoselect
status: active
 
I got this...
Last login: Mon Mar 3 16:43:51 on console
Mac-Pro-de-Jose:~ josemanuel$ ifconfig
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
options=3<RXCSUM,TXCSUM>
inet6 ::1 prefixlen 128
inet 127.0.0.1 netmask 0xff000000
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1
nd6 options=1<PERFORMNUD>
gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
stf0: flags=0<> mtu 1280
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether 10:fe:ed:15:90:1b
inet6 fe80::12fe:edff:fe15:901b%en0 prefixlen 64 scopeid 0x4
inet 192.168.1.132 netmask 0xffffff00 broadcast 192.168.1.255
nd6 options=1<PERFORMNUD>
media: autoselect
status: active

I'm not sure I understand the point of your post. That looks like output with a valid Ethernet driver working (NullEthernet will never provide an IP address that is not self-assigned...)
 
Status
Not open for further replies.
Back
Top