WG through kernel on Pis w/ Ubuntu 20.04 #137

Closed
opened 2025-11-20 05:06:50 -05:00 by saavagebueno · 6 comments
Owner

Originally created by @agneevX on GitHub (May 29, 2022).

Hello,

Ubuntu 20.04 ships 5.4.0 of the kernel on the Raspberry Pis.

I was wondering if wireguard-go is used instead of the kernel implementation?

Originally created by @agneevX on GitHub (May 29, 2022). Hello, Ubuntu 20.04 ships 5.4.0 of the kernel on the Raspberry Pis. I was wondering if `wireguard-go` is used instead of the kernel implementation?
Author
Owner

@braginini commented on GitHub (May 29, 2022):

@agneevX Yes.
If there is no WireGuard module available on the system, we use the wireguard-go implementation.

@braginini commented on GitHub (May 29, 2022): @agneevX Yes. If there is no WireGuard module available on the system, we use the wireguard-go implementation.
Author
Owner

@agneevX commented on GitHub (May 29, 2022):

Is there a way to actually test this @braginini?

@agneevX commented on GitHub (May 29, 2022): Is there a way to actually test this @braginini?
Author
Owner

@mlsmaycon commented on GitHub (May 30, 2022):

Hello, @agneevX you can see the interface type after you run the netbird up command followed by ip -d link show wt0. See the example below with an output of a kernel Wireguard interface:

ip -d link show wt0
76: wt0: <POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1280 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/none  promiscuity 0 minmtu 0 maxmtu 2147483552
    wireguard addrgenmode none numtxqueues 1 numrxqueues 1 gso_max_size 65536 gso_max_segs 65535

Wireguard type should appear in the second or third line.

@mlsmaycon commented on GitHub (May 30, 2022): Hello, @agneevX you can see the interface type after you run the `netbird up` command followed by `ip -d link show wt0`. See the example below with an output of a kernel Wireguard interface: ```shell ip -d link show wt0 76: wt0: <POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1280 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 link/none promiscuity 0 minmtu 0 maxmtu 2147483552 wireguard addrgenmode none numtxqueues 1 numrxqueues 1 gso_max_size 65536 gso_max_segs 65535 ``` Wireguard type should appear in the second or third line.
Author
Owner

@agneevX commented on GitHub (May 30, 2022):

This appears to be the same on my system:

~> ip -d link show wt0
56: wt0: <POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1280 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/none  promiscuity 0 minmtu 0 maxmtu 2147483552
    wireguard addrgenmode none numtxqueues 1 numrxqueues 1 gso_max_size 65536 gso_max_segs 65535

I ran a iperf3 test between two machines and I got speeds low enough that it indicated the usage of wireguard-go.

@agneevX commented on GitHub (May 30, 2022): This appears to be the same on my system: ```bash ~> ip -d link show wt0 56: wt0: <POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1280 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 link/none promiscuity 0 minmtu 0 maxmtu 2147483552 wireguard addrgenmode none numtxqueues 1 numrxqueues 1 gso_max_size 65536 gso_max_segs 65535 ``` I ran a iperf3 test between two machines and I got speeds low enough that it indicated the usage of wireguard-go.
Author
Owner

@braginini commented on GitHub (May 30, 2022):

@agneevX would you mind pinging us on slack?
Let's debug it there -> slack channel

@braginini commented on GitHub (May 30, 2022): @agneevX would you mind pinging us on slack? Let's debug it there -> [slack channel](https://join.slack.com/t/wiretrustee/shared_invite/zt-vrahf41g-ik1v7fV8du6t0RwxSrJ96A)
Author
Owner

@mlsmaycon commented on GitHub (Jun 16, 2023):

Since v0.20.0 we've refactored the connection layer. This should increase the rate of direct connection, therefore improving the connection speeds.

@mlsmaycon commented on GitHub (Jun 16, 2023): Since v0.20.0 we've refactored the connection layer. This should increase the rate of direct connection, therefore improving the connection speeds.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: SVI/netbird#137