Tech
[macOS] 用 Opus5 实现了 macOS 用户态 RNDIS 驱动
众所周知之前的 macOS 需要用 RNDIS 驱动就得用 jwise/HoRNDIS 需要关闭 SIP ,还是很麻烦的。
但是实际上在用户态可以直接用 libusb 在用户态实现。
把实现目标说清楚直接交给 Opus5,一共用了两小时全部完成了。
用了一个 vivo 手机(USB 共享网络)测试和一个开发板( USB gadget )测试都是成功的
方案
能否纯用户态
门槛
语义层级
结论
kext / NKE
❌
Apple 授予的 kext 签名 entitlement 或关 SIP
L2
Apple Silicon 上实质不可行
NEPacketTunnelProvider
✔
付费开发者账号 + entitlement + App bundle
L3
要自己实现 ARP/ND/DHCP
utun
✔
root
L3
同上,且要自己拆装以太头
feth + BPF
✔
root
L2
✅ 本项...
Read the full discussion on V2EX
This article was aggregated from V2EX. Click to join the conversation.
View on V2EX