Galaxis
Member
- Joined
- Aug 30, 2010
- Messages
- 318
For the past couple of days, I've been trying to set up a WireGuard VPN on SuperZaxxon.
Current status: Seems to work in principle - I can create a tunnel, and I can connect to the system on the other side.
I'm using the wireguard-go userspace implementation though, haven't tried to make the kernel module work (there's a wireguard-compat module, but it only promises support down to 3.10 kernels, so I didn't even have a look at it).
I cross-built the wireguard-go program on a different system (Code::Blocks has a native go, but it's too old, and my attempts to compile a current version on the Pandora went nowhere fast). Golang has built-in support for crosscompiling, but it doesn't know about the ARM softfp ABI used in SuperZaxxon. The workaround is to build for ARM5, which results in a binary with full softfloat. Not optimal for the Pandora, but it probably doesn't make much of a difference for this use case.
I managed to compile the other component (wireguard-tools, required create a tunnel configuration) locally on the Pandora.
Is there any interest in the binaries? I don't think I'm motivated to create a PND, but if anyone else has a use for this stuff nowadays, I could pack up the files prepared for installation to /usr/local, and write a short text about the tweaks required on the Pandora (there's little things like /dev/net/tun does not exist and a few other obstacles). I plan to write a short blog post on how to reproduce the results some time soon.
Current status: Seems to work in principle - I can create a tunnel, and I can connect to the system on the other side.
I'm using the wireguard-go userspace implementation though, haven't tried to make the kernel module work (there's a wireguard-compat module, but it only promises support down to 3.10 kernels, so I didn't even have a look at it).
I cross-built the wireguard-go program on a different system (Code::Blocks has a native go, but it's too old, and my attempts to compile a current version on the Pandora went nowhere fast). Golang has built-in support for crosscompiling, but it doesn't know about the ARM softfp ABI used in SuperZaxxon. The workaround is to build for ARM5, which results in a binary with full softfloat. Not optimal for the Pandora, but it probably doesn't make much of a difference for this use case.
I managed to compile the other component (wireguard-tools, required create a tunnel configuration) locally on the Pandora.
Is there any interest in the binaries? I don't think I'm motivated to create a PND, but if anyone else has a use for this stuff nowadays, I could pack up the files prepared for installation to /usr/local, and write a short text about the tweaks required on the Pandora (there's little things like /dev/net/tun does not exist and a few other obstacles). I plan to write a short blog post on how to reproduce the results some time soon.
Last edited: