Tailscale complains about some UDP GRO thing, is it neccessary?

Is this even neccessary?

root@OpenWrt-AX59U:~# tailscale up --advertise-routes=192.168.1.0/24 --accept-ro
utes --advertise-exit-node
Warning: UDP GRO forwarding is suboptimally configured on pppoe-wan, UDP forwarding throughput capability will increase with a configuration change.
See https://tailscale.com/s/ethtool-config-udp-gro

Install any ethtool package and tailscale will fix network adapter flags as it wants.

2 Likes

pppoe ports are virtual-- if this setting is trying to enable a hardware feature, it won't exist.

1 Like

I followed that link, it says this:

Linux optimizations for subnet routers and exit nodes

Tailscale version 1.54 or later used with a Linux 6.2 or later kernel enables UDP throughput improvements using transport layer offloads. If a Linux device is acting as an exit node or subnet router, ensure the following network device configuration is in place for the best results:

NETDEV=$(ip -o route get 8.8.8.8 | cut -f 5 -d " ")
sudo ethtool -K $NETDEV rx-udp-gro-forwarding on rx-gro-list off

By default, changes made using the ethtool don't persistent after a reboot. On Linux distributions using networkd-dispatcher (which you can verify with systemctl is-enabled networkd-dispatcher), you can run the following commands to create a script that configures these settings on each boot.

printf '#!/bin/sh\n\nethtool -K %s rx-udp-gro-forwarding on rx-gro-list off \n' "$(ip -o route get 8.8.8.8 | cut -f 5 -d " ")" | sudo tee /etc/networkd-dispatcher/routable.d/50-tailscale
sudo chmod 755 /etc/networkd-dispatcher/routable.d/50-tailscale

Run the following commands to test the script to ensure it runs successfully on your devices:

sudo /etc/networkd-dispatcher/routable.d/50-tailscale
test $? -eq 0 || echo 'An error occurred.'

They are suggesting to enable rx-udp-gro-forwarding and disabling rx-gro-list for your wan interface to improve exit node performance.

Install the package ethtool

Then if your wan interface is say eth0, do

ethtool -K eth0 rx-gro-list off
ethtool -K eth0 rx-udp-gro-forwarding on

These will revert after a reboot, so you’ve to add them to /etc/rc.local for them to persist.

For me it reduced ping py half. I think they work well, I'll make them persist. Thanks.
But for me, it's wan@eth0 but all lans also are lan1@eth0, lan2@eth0. Also there is wan35@wan too. I selected eth0 and it worked though. Did I get it right?

Run ifstatus wan and check this field "l3_device": whatever it says there is your real wan device.

1 Like
    "l3_device": "pppoe-wan",

But it's a virtual of the eth0 actually.

In that case eth0 is the right wan device to use

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.