[WireGuard] Can WireGuard be adopted for older kernels?

Jason A. Donenfeld artyom.h31 at gmail.com
Tue Jul 5 00:53:16 CEST 2016


P.S. Sorry for the incorrect From address. It was me, not Jason.

В Вторник, 5 июл. 2016 в 1:46 , Jason A. Donenfeld 
<artyom.h31 at gmail.com> написал:
> I'm trying to run WireGuard on a single board computer (ODROID C1). 
> It's not a problem to modify a board's kernel code, however the chip 
> manufacturer (Amlogic) is focused on Android and will very unlikely 
> release a newer kernel for this board.
> 
> A userspace version is not an option because of a huge performance 
> penalty of userspace tunnels. It will certainly be slower than IPsec, 
> and performance is especially important for embedded devices.
> 
> A small offtopic: why have you chosen to use Rust for a userspace 
> version and not C or C++? In the latter case you have an option to 
> reuse some code from the kernel version.
> 
> В Вторник, 5 июл. 2016 в 1:10 , Jason A. Donenfeld 
> <Jason at zx2c4.com> написал:
>> Hey Artyom,
>> 
>> I face the same problem as you. I have an Edge Router Lite, and I'd
>> really love to run WireGuard on it, but their proprietary kernel is
>> stuck at 3.10. Major bummer.
>> 
>> The current plan is to write a userspace version in Rust, that will 
>> be
>> cross platform and work well on old kernels. No timeline on that
>> though.
>> 
>> However, I did at one point run wireguard on really old kernels 
>> during
>> testing. That was before I started using the very nice udp_tunnel_*
>> library inside newer kernels, which then forced the dependency. But
>> when I did do this, it worked. Maybe I'll dust off the ugly old code
>> and hack something horrible together to work on old kernels. On the
>> other hand, this might not really be a great use of time... I don't
>> know.
>> 
>> What system are you trying to run it on? Maybe if it's the same as 
>> me,
>> we can both poke Ubnt together to upgrade their kernel...
>> 
>> Jason



More information about the WireGuard mailing list