Why it exists
Modern Android phones, starting with Google Pixel devices, support a newer tethering protocol that macOS understands out of the box. Many Android devices still don't: they only speak RNDIS, and macOS has no native RNDIS driver, so plugging them in gives you nothing.
For years the answer was the HoRNDIS kernel extension. Apple deprecated legacy kernel extensions in macOS Catalina in 2019 and stopped loading them by default in Big Sur in 2020. HoRNDIS hasn't been a good option since, and its own author now discourages installing it. USB tethering for these devices needed to be rebuilt on modern macOS APIs.
How it works
RNDISaurus is a modern macOS system extension paired with a small host app. When you plug in a tethering phone, it shows up as a regular network connection in System Settings and just works, like a wired Ethernet adapter.
- No kernel extension, no reduced security mode, no System Integrity Protection changes.
- No resident daemon or root helper. The driver loads when the device is plugged in and stops when it's unplugged.
- Runs in user space, so a driver fault can't take the whole system down.
Status
Pre-release and developer-only. There is nothing to download or install yet.
The driver already works end to end on the developer's machines. A diagnostics app and public distribution are the remaining pieces.
Shipping this kind of driver requires permissions that Apple grants to each developer individually, so a release depends on that approval. Check back later.
Requirements and device coverage
- macOS 14 or later, on Apple Silicon or Intel.
- An Android or Linux device with USB tethering enabled that exposes an RNDIS interface.
Stock Android phones and Linux devices in USB tethering mode are the main targets. Some older phones, notably older Samsung models, expose RNDIS in a slightly different way that isn't supported yet.
Credits and license
RNDISaurus is free software released under the GNU General Public License, version 3.
Thanks to HoRNDIS for the inspiration and the original implementation. In turn, thanks to David Brownell, who wrote the Linux RNDIS drivers, both the host side and the device side that lets Android and Linux devices act as RNDIS devices.