a modern tap driver for macos
在MacOS上运行相当一部分VPN软件,依赖于TunTap驱动;目前的TunTap驱动还是一个非常老的项目: tuntaposx;这个项目早已不再维护,而目前它的替代是Tunnelblick在其基础上维护的 Tunnelblick System Extensions; 自从MacOS 10.15 版本之后,其安全审核机制越来越严格,因此这种kexts驱动的载入越来越不方便;
在2020年发布的Apple M1芯片的系统中,这种不方便进一步加剧,必须在开机的时候打开降低系统安全性选项,才能正常启用kexts;苹果已在文档中明确表示会逐步废弃这种驱动载入方式;
happyntap 希望能开发一款新的驱动来代替 tuntaposx,这个驱动希望能满足如下需求:
- 能无缝替代tuntaposx,如在其之上的openvpn、n2n等软件能方便的迁移
- 采用苹果推荐的方式技术方式来构建,并能长久兼容M1和Intel芯片;
- 尽可能将部署方式做的简单易用
-
zerotier早在几年前就探讨了采用feth实现Tap驱动的方法,并且好像已经做成了,目前可以参考它们的实现
-
Apple官方文档有关于虚拟网络vmnet的描述
-
更多资料和想法可以移步我们的论坛 来讨论实现;