Jason A. Donenfeld,《VPN》一书的作者 WireGuard, о 将该协议集成到 OpenBSD 内核核心驱动程序“wg”中 WireGuard, 特定的网络接口和 在用户空间工作的工具包。 OpenBSD 成为继 提供全面和一体化的支持 WireGuard开启 WireGuard 预计将在 OpenBSD 6.8 版本中发布。
补丁包括 OpenBSD 内核驱动程序,以及对 ifconfig 和 tcpdump 实用程序的更改,以支持相关功能。 WireGuard文档和集成方面的细微更改 WireGuard 与系统的其他部分协同工作。驱动程序使用其自身实现的算法。 , и ,以及 OpenBSD 内核中已经存在的 SipHash 实现。
该实现与所有官方客户端兼容。 WireGuard 为 Linux, Windows, macOS,*BSD、iOS 和 Android在开发人员的笔记本电脑(联想 x230)上进行的性能测试显示,吞吐量为 750 Mbps。相比之下,使用默认设置和 IKE PSK 的 isakmpd 提供的吞吐量为 380 Mbps。
在开发 OpenBSD 内核驱动程序时,与以下驱动程序有一些相似之处: Linux 虽然架构方面做出了一些决策,但该驱动程序主要是为 OpenBSD 开发的,着眼于该系统的具体特性,并考虑到了在为其他系统创建驱动程序时积累的经验。 Linux经原作者同意 WireGuard 新版驱动程序完全按照 ISC 免费许可证发布。
该驱动程序与 OpenBSD 网络协议栈紧密集成,并利用了现有的子系统,因此代码非常精简(约 3000 行代码)。其他区别包括: Linux驱动程序组件分离:OpenBSD 特有的接口位于“if_wg.*”文件中,DoS 保护代码位于“wg_cookie.*”中,连接协商和加密逻辑位于“wg_noise.*”中。
来源: opennet.ru
