VPN WireGuard прийнятий в основний склад OpenBSD

Alex Alex 22 червня 2020
VPN WireGuard прийнятий в основний склад OpenBSD

Джейсон Доненфілд (Jason A. Donenfeld), автор VPN WireGuard, оголосив про прийняття в основний склад OpenBSD драйвера ядра "wg" для протоколу WireGuard, реалізації специфічного мережевого інтерфейсу і зміни інструментарію, що працює у просторі користувача. OpenBSD стала другою ОС після Linux з повною та інтегрованою підтримкою WireGuard. Включення WireGuard очікується у випуску OpenBSD 6.8.

Патчі включають драйвер для ядра OpenBSD, зміни для утиліт ifconfig та tcpdump з підтримкою функціональності WireGuard, документацію і дрібні зміни для інтеграції WireGuard з іншою системою. В драйвері використовується власна реалізація алгоритмів blake2s, hchacha20 і curve25519, а також вже присутні в ядрі OpenBSD реалізацію SipHash.

Реалізація сумісна з усіма офіційними клієнтами WireGuard для Linux, Windows, macOS, *BSD, iOS і Android. Тестування продуктивності на ноутбуці розробника (Lenovo x230) показало пропускну здатність на рівні 750mbit/s. Для порівняння isakmpd з базовими налаштуваннями ike psk забезпечує пропускну здатність 380mbit/s.

При розробці драйвера ядра OpenBSD були вибрані деякі схожі з драйвером для Linux архітектурні рішення, але драйвер в першу чергу розроблявся для OpenBSD, з огляду на специфіку даної системи та враховуючи досвід, отриманий при створенні драйвера для Linux. При згоді початкового автора WireGuard код нового драйвера повністю розповсюджується під вільною ліцензією ISC.

Драйвер тісно інтегрується з мережевим стеком OpenBSD і використовує наявні підсистеми, що дозволило зробити код дуже компактним (близько 3000 рядків коду). З відмінностей також зазначається інший, ніж для Linux, поділ компонентів драйвера: специфічні для OpenBSD інтерфейси винесені у файли "if_wg.*", код для захисту від DoS в "wg_cookie.*", а логіка узгодження з'єднань і шифрування в "wg_noise.*".

Коментарі (0)

    Ще немає коментарів

Щоб залишити коментар необхідно авторизуватися.