I fail to see how's that relevant?
| Globalscale Marvell ESPRESSOBin Board | Marvell Armada 3720 (Dual Core A53, 1.2 GHz) | 23.05.4 | 272 Mbps |
root@OpenWrt:/wg-bench# ubus call system board
{
"kernel": "5.15.162",
"hostname": "OpenWrt",
"system": "ARMv8 Processor rev 4",
"model": "Globalscale Marvell ESPRESSOBin Board",
"board_name": "globalscale,espressobin",
"rootfs_type": "ext4",
"release": {
"distribution": "OpenWrt",
"version": "23.05.4",
"revision": "r24012-d8dd03c46f",
"target": "mvebu/cortexa53",
"description": "OpenWrt 23.05.4 r24012-d8dd03c46f"
}
}
root@OpenWrt:/wg-bench# ./benchmark.sh
Connecting to host 169.254.200.2, port 5201
[ 5] local 169.254.200.1 port 54160 connected to 169.254.200.2 port 5201
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-1.00 sec 33.0 MBytes 277 Mbits/sec 0 790 KBytes
[ 5] 1.00-2.00 sec 33.4 MBytes 280 Mbits/sec 0 1023 KBytes
[ 5] 2.00-3.00 sec 33.1 MBytes 278 Mbits/sec 0 1.05 MBytes
[ 5] 3.00-4.00 sec 32.8 MBytes 275 Mbits/sec 0 1.05 MBytes
[ 5] 4.00-5.00 sec 32.9 MBytes 276 Mbits/sec 0 1.08 MBytes
[ 5] 5.00-6.00 sec 32.4 MBytes 272 Mbits/sec 0 1.26 MBytes
[ 5] 6.00-7.00 sec 32.5 MBytes 273 Mbits/sec 48 1.11 MBytes
[ 5] 7.00-8.00 sec 32.0 MBytes 268 Mbits/sec 0 1.23 MBytes
[ 5] 8.00-9.00 sec 32.8 MBytes 275 Mbits/sec 0 1.32 MBytes
[ 5] 9.00-10.00 sec 34.0 MBytes 285 Mbits/sec 0 1.37 MBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 329 MBytes 276 Mbits/sec 48 sender
[ 5] 0.00-10.02 sec 325 MBytes 272 Mbits/sec receiver
iperf Done.
| Turris Omnia (CZ11NIC13, 2016) | Marvell Armada 385 ARMv7 (Dual Core 1.6 GHz) | 23.05.4 | 371 Mbps |
ubus call system board
{
"kernel": "5.15.162",
"hostname": "not-my-router",
"system": "ARMv7 Processor rev 1 (v7l)",
"model": "Turris Omnia",
"board_name": "cznic,turris-omnia",
"rootfs_type": "squashfs",
"release": {
"distribution": "OpenWrt",
"version": "23.05.4",
"revision": "r24012-d8dd03c46f",
"target": "mvebu/cortexa9",
"description": "OpenWrt 23.05.4 r24012-d8dd03c46f"
}
}
./benchmark.sh
Connecting to host 169.254.200.2, port 5201
[ 5] local 169.254.200.1 port 43366 connected to 169.254.200.2 port 5201
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-1.00 sec 45.9 MBytes 385 Mbits/sec 0 1.18 MBytes
[ 5] 1.00-2.00 sec 40.5 MBytes 340 Mbits/sec 60 1.06 MBytes
[ 5] 2.00-3.00 sec 43.0 MBytes 361 Mbits/sec 0 1.18 MBytes
[ 5] 3.00-4.00 sec 44.4 MBytes 372 Mbits/sec 0 1.26 MBytes
[ 5] 4.00-5.00 sec 44.8 MBytes 375 Mbits/sec 0 1.32 MBytes
[ 5] 5.00-6.00 sec 44.4 MBytes 372 Mbits/sec 10 1010 KBytes
[ 5] 6.00-7.00 sec 44.8 MBytes 375 Mbits/sec 0 1.05 MBytes
[ 5] 7.00-8.00 sec 44.9 MBytes 376 Mbits/sec 0 1.09 MBytes
[ 5] 8.00-9.00 sec 44.8 MBytes 375 Mbits/sec 0 1.12 MBytes
[ 5] 9.00-10.00 sec 45.4 MBytes 381 Mbits/sec 0 1.14 MBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 443 MBytes 371 Mbits/sec 70 sender
[ 5] 0.00-10.00 sec 440 MBytes 369 Mbits/sec receiver
iperf Done.
So this one is basically the same platform as Linksys WRT1900AC series?
same SOC yes - but different connectivity - more flexibility
| Dell Inc. OptiPlex 790 | Intel(R) Core(TM) i7-2600 CPU @ 3.40GHz | 23.05.4 | 1.52 Gbits/sec
ubus call system board
{
"kernel": "5.15.162",
"hostname": "Pictor",
"system": "Intel(R) Core(TM) i7-2600 CPU @ 3.40GHz",
"model": "Dell Inc. OptiPlex 790",
"board_name": "dell-inc-optiplex-790",
"rootfs_type": "ext4",
"release": {
"distribution": "OpenWrt",
"version": "23.05.4",
"revision": "r24012-d8dd03c46f",
"target": "x86/64",
"description": "OpenWrt 23.05.4 r24012-d8dd03c46f"
}
}
./benchmark.sh
Connecting to host 169.254.200.2, port 5201
[ 5] local 169.254.200.1 port 1574 connected to 169.254.200.2 port 5201
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-1.00 sec 173 MBytes 1.45 Gbits/sec 0 267 KBytes
[ 5] 1.00-2.00 sec 182 MBytes 1.52 Gbits/sec 0 305 KBytes
[ 5] 2.00-3.00 sec 188 MBytes 1.58 Gbits/sec 0 271 KBytes
[ 5] 3.00-4.00 sec 185 MBytes 1.55 Gbits/sec 0 289 KBytes
[ 5] 4.00-5.00 sec 181 MBytes 1.52 Gbits/sec 0 281 KBytes
[ 5] 5.00-6.00 sec 185 MBytes 1.55 Gbits/sec 0 310 KBytes
[ 5] 6.00-7.00 sec 185 MBytes 1.55 Gbits/sec 0 444 KBytes
[ 5] 7.00-8.00 sec 177 MBytes 1.49 Gbits/sec 0 411 KBytes
[ 5] 8.00-9.00 sec 173 MBytes 1.45 Gbits/sec 0 473 KBytes
[ 5] 9.00-10.00 sec 185 MBytes 1.55 Gbits/sec 0 5.34 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 1.77 GBytes 1.52 Gbits/sec 0 sender
[ 5] 0.00-10.01 sec 1.76 GBytes 1.51 Gbits/sec receiver
| HP ProDesk 600 G5 DM | Intel(R) Core(TM) i5-9500T CPU @ 2.20GHz | SNAPSHOT r0-6799fe7 (frankenstein build with 6.6.43 kernel) | 7.32 Gbits/sec
ubus call system board
{
"kernel": "6.6.43",
"hostname": "Digby",
"system": "Intel(R) Core(TM) i5-9500T CPU @ 2.20GHz",
"model": "HP HP ProDesk 600 G5 DM",
"board_name": "hp-hp-prodesk-600-g5-dm",
"rootfs_type": "ext4",
"release": {
"distribution": "OpenWrt",
"version": "SNAPSHOT",
"revision": "r0-6799fe7",
"target": "x86/64",
"description": "OpenWrt SNAPSHOT r0-6799fe7"
}
}
./benchmark.sh
Connecting to host 169.254.200.2, port 5201
[ 5] local 169.254.200.1 port 54718 connected to 169.254.200.2 port 5201
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-1.00 sec 843 MBytes 7.07 Gbits/sec 0 615 KBytes
[ 5] 1.00-2.00 sec 880 MBytes 7.38 Gbits/sec 0 529 KBytes
[ 5] 2.00-3.00 sec 881 MBytes 7.39 Gbits/sec 0 566 KBytes
[ 5] 3.00-4.00 sec 868 MBytes 7.28 Gbits/sec 0 601 KBytes
[ 5] 4.00-5.00 sec 875 MBytes 7.34 Gbits/sec 0 1.01 MBytes
[ 5] 5.00-6.00 sec 876 MBytes 7.35 Gbits/sec 0 719 KBytes
[ 5] 6.00-7.00 sec 871 MBytes 7.30 Gbits/sec 0 660 KBytes
[ 5] 7.00-8.00 sec 881 MBytes 7.40 Gbits/sec 0 574 KBytes
[ 5] 8.00-9.00 sec 878 MBytes 7.36 Gbits/sec 0 665 KBytes
[ 5] 9.00-10.00 sec 874 MBytes 7.34 Gbits/sec 0 505 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 8.52 GBytes 7.32 Gbits/sec 0 sender
[ 5] 0.00-10.00 sec 8.52 GBytes 7.31 Gbits/sec receiver
The 2nd Gen i7 is really showing it's age.
For fix this:
opkg upgrade libiperf3
I just did a speed test inside a WG tunnel using two routers: ASUS TX-AX6000 (mt7986A) and ASUS TUF-AX4200 (mt7986A). Connected both via 2.5Gbit ports (cable 10 meters).
- Test without WG tun:
2.35 Gbits/sec
root@OWRT:~# iperf3 -c 192.168.0.17
Connecting to host 192.168.0.17, port 5201
[ 5] local 192.168.0.8 port 35006 connected to 192.168.0.17 port 5201
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-1.00 sec 283 MBytes 2.37 Gbits/sec 0 884 KBytes
[ 5] 1.00-2.00 sec 279 MBytes 2.34 Gbits/sec 0 929 KBytes
[ 5] 2.00-3.00 sec 280 MBytes 2.35 Gbits/sec 0 929 KBytes
[ 5] 3.00-4.00 sec 280 MBytes 2.35 Gbits/sec 0 929 KBytes
[ 5] 4.00-5.00 sec 280 MBytes 2.35 Gbits/sec 0 929 KBytes
[ 5] 5.00-6.00 sec 280 MBytes 2.35 Gbits/sec 0 929 KBytes
[ 5] 6.00-7.00 sec 280 MBytes 2.35 Gbits/sec 0 929 KBytes
[ 5] 7.00-8.00 sec 280 MBytes 2.35 Gbits/sec 0 929 KBytes
[ 5] 8.00-9.00 sec 280 MBytes 2.35 Gbits/sec 0 929 KBytes
[ 5] 9.00-10.00 sec 279 MBytes 2.34 Gbits/sec 0 929 KBytes
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 2.73 GBytes 2.35 Gbits/sec 0 sender
[ 5] 0.00-10.00 sec 2.73 GBytes 2.35 Gbits/sec receiver
- Test via WG tun (without
nft flush ruleset
):
827 Mbits/sec
root@OpenWrt:# iperf3 -c 10.8.8.1
Connecting to host 10.8.8.1, port 5201
[ 5] local 10.8.8.2 port 60508 connected to 10.8.8.1 port 5201
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-1.00 sec 95.3 MBytes 799 Mbits/sec 2 367 KBytes
[ 5] 1.00-2.00 sec 101 MBytes 846 Mbits/sec 0 526 KBytes
[ 5] 2.00-3.00 sec 103 MBytes 862 Mbits/sec 0 652 KBytes
[ 5] 3.00-4.00 sec 100 MBytes 841 Mbits/sec 0 756 KBytes
[ 5] 4.00-5.00 sec 97.8 MBytes 820 Mbits/sec 0 843 KBytes
[ 5] 5.00-6.00 sec 98.5 MBytes 826 Mbits/sec 0 923 KBytes
[ 5] 6.00-7.00 sec 98.3 MBytes 825 Mbits/sec 0 998 KBytes
[ 5] 7.00-8.00 sec 98.4 MBytes 826 Mbits/sec 0 1.04 MBytes
[ 5] 8.00-9.00 sec 100 MBytes 842 Mbits/sec 0 1.11 MBytes
[ 5] 9.00-10.00 sec 97.2 MBytes 816 Mbits/sec 0 1.16 MBytes
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 990 MBytes 830 Mbits/sec 2 sender
[ 5] 0.00-10.02 sec 987 MBytes 827 Mbits/sec receiver
root@OpenWrt:# iperf3 -c 10.8.8.1 -R
Connecting to host 10.8.8.1, port 5201
Reverse mode, remote host 10.8.8.1 is sending
[ 5] local 10.8.8.2 port 41816 connected to 10.8.8.1 port 5201
[ ID] Interval Transfer Bitrate
[ 5] 0.00-1.00 sec 125 MBytes 1.05 Gbits/sec
[ 5] 1.00-2.00 sec 128 MBytes 1.08 Gbits/sec
[ 5] 2.00-3.00 sec 129 MBytes 1.08 Gbits/sec
[ 5] 3.00-4.00 sec 130 MBytes 1.09 Gbits/sec
[ 5] 4.00-5.00 sec 133 MBytes 1.11 Gbits/sec
[ 5] 5.00-6.00 sec 129 MBytes 1.09 Gbits/sec
[ 5] 6.00-7.00 sec 131 MBytes 1.10 Gbits/sec
[ 5] 7.00-8.00 sec 135 MBytes 1.13 Gbits/sec
[ 5] 8.00-9.00 sec 130 MBytes 1.09 Gbits/sec
[ 5] 9.00-10.00 sec 131 MBytes 1.10 Gbits/sec
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.01 sec 1.27 GBytes 1.09 Gbits/sec 0 sender
[ 5] 0.00-10.00 sec 1.27 GBytes 1.09 Gbits/sec receiver
- Test via WG tun (after
nft flush ruleset
):
1.49 Gbits/sec
root@OpenWrt:# iperf3 -c 10.8.8.1
Connecting to host 10.8.8.1, port 5201
[ 5] local 10.8.8.2 port 50572 connected to 10.8.8.1 port 5201
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-1.00 sec 172 MBytes 1.44 Gbits/sec 0 1.81 MBytes
[ 5] 1.00-2.00 sec 171 MBytes 1.44 Gbits/sec 0 1.81 MBytes
[ 5] 2.00-3.00 sec 170 MBytes 1.42 Gbits/sec 0 1.81 MBytes
[ 5] 3.00-4.00 sec 179 MBytes 1.50 Gbits/sec 0 1.81 MBytes
[ 5] 4.00-5.00 sec 174 MBytes 1.46 Gbits/sec 0 1.81 MBytes
[ 5] 5.00-6.00 sec 174 MBytes 1.46 Gbits/sec 0 1.81 MBytes
[ 5] 6.00-7.00 sec 178 MBytes 1.49 Gbits/sec 0 1.81 MBytes
[ 5] 7.00-8.01 sec 175 MBytes 1.46 Gbits/sec 0 1.81 MBytes
[ 5] 8.01-9.00 sec 171 MBytes 1.45 Gbits/sec 0 1.81 MBytes
[ 5] 9.00-10.00 sec 172 MBytes 1.44 Gbits/sec 0 1.81 MBytes
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 1.69 GBytes 1.45 Gbits/sec 0 sender
[ 5] 0.00-10.02 sec 1.69 GBytes 1.45 Gbits/sec receiver
root@OpenWrt:# iperf3 -c 10.8.8.1 -R
Connecting to host 10.8.8.1, port 5201
Reverse mode, remote host 10.8.8.1 is sending
[ 5] local 10.8.8.2 port 58048 connected to 10.8.8.1 port 5201
[ ID] Interval Transfer Bitrate
[ 5] 0.00-1.00 sec 180 MBytes 1.51 Gbits/sec
[ 5] 1.00-2.00 sec 178 MBytes 1.49 Gbits/sec
[ 5] 2.00-3.00 sec 180 MBytes 1.51 Gbits/sec
[ 5] 3.00-4.00 sec 176 MBytes 1.48 Gbits/sec
[ 5] 4.00-5.00 sec 179 MBytes 1.50 Gbits/sec
[ 5] 5.00-6.00 sec 174 MBytes 1.46 Gbits/sec
[ 5] 6.00-7.00 sec 173 MBytes 1.45 Gbits/sec
[ 5] 7.00-8.00 sec 178 MBytes 1.49 Gbits/sec
[ 5] 8.00-9.00 sec 178 MBytes 1.49 Gbits/sec
[ 5] 9.00-10.00 sec 176 MBytes 1.48 Gbits/sec
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.01 sec 1.73 GBytes 1.49 Gbits/sec 0 sender
[ 5] 0.00-10.00 sec 1.73 GBytes 1.49 Gbits/sec receiver
Firmware: OpenWRT 23.05.4
Just confirming same results as Remittor - Significant performance improvement
for ASUS TUF Game AX6000 in FW 23.05.4:
(Packet steering enabled without nft flush ruleset
):
./benchmark.sh: 821 Mbits/sec
root@OpenWrt:/# ./benchmark.sh
Connecting to host 169.254.200.2, port 5201
[ 5] local 169.254.200.1 port 46552 connected to 169.254.200.2 port 5201
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-1.00 sec 98.4 MBytes 824 Mbits/sec 0 552 KBytes
[ 5] 1.00-2.00 sec 97.1 MBytes 815 Mbits/sec 0 611 KBytes
[ 5] 2.00-3.00 sec 97.8 MBytes 820 Mbits/sec 0 681 KBytes
[ 5] 3.00-4.00 sec 97.1 MBytes 815 Mbits/sec 0 717 KBytes
[ 5] 4.00-5.00 sec 96.2 MBytes 807 Mbits/sec 0 756 KBytes
[ 5] 5.00-6.00 sec 97.8 MBytes 820 Mbits/sec 0 850 KBytes
[ 5] 6.00-7.00 sec 99.5 MBytes 835 Mbits/sec 0 954 KBytes
[ 5] 7.00-8.00 sec 99.0 MBytes 830 Mbits/sec 0 1001 KBytes
[ 5] 8.00-9.00 sec 97.8 MBytes 820 Mbits/sec 0 1.03 MBytes
[ 5] 9.00-10.00 sec 98.1 MBytes 823 Mbits/sec 0 1.19 MBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 979 MBytes 821 Mbits/sec 0 sender
[ 5] 0.00-10.00 sec 975 MBytes 818 Mbits/sec receiver
./benchmark.sh - R: 820 Mbits/sec
root@OpenWrt:/# ./benchmark.sh - R
Connecting to host 169.254.200.2, port 5201
[ 5] local 169.254.200.1 port 55704 connected to 169.254.200.2 port 5201
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-1.00 sec 99.1 MBytes 831 Mbits/sec 0 572 KBytes
[ 5] 1.00-2.00 sec 97.2 MBytes 816 Mbits/sec 0 643 KBytes
[ 5] 2.00-3.00 sec 95.6 MBytes 802 Mbits/sec 0 643 KBytes
[ 5] 3.00-4.00 sec 98.2 MBytes 824 Mbits/sec 0 712 KBytes
[ 5] 4.00-5.00 sec 98.1 MBytes 823 Mbits/sec 0 712 KBytes
[ 5] 5.00-6.00 sec 98.4 MBytes 825 Mbits/sec 0 747 KBytes
[ 5] 6.00-7.00 sec 98.5 MBytes 826 Mbits/sec 0 747 KBytes
[ 5] 7.00-8.00 sec 97.1 MBytes 815 Mbits/sec 0 747 KBytes
[ 5] 8.00-9.00 sec 97.6 MBytes 819 Mbits/sec 0 747 KBytes
[ 5] 9.00-10.00 sec 98.9 MBytes 829 Mbits/sec 0 747 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 979 MBytes 821 Mbits/sec 0 sender
[ 5] 0.00-10.00 sec 978 MBytes 820 Mbits/sec receiver
ubus call system board
"kernel": "5.15.162",
"hostname": "OpenWrt",
"system": "ARMv8 Processor rev 4",
"model": "ASUS TUF-AX6000",
"board_name": "asus,tuf-ax6000",
"rootfs_type": "squashfs",
"release": {
"distribution": "OpenWrt",
"version": "23.05.4",
"revision": "r24012-d8dd03c46f",
"target": "mediatek/filogic",
"description": "OpenWrt 23.05.4 r24012-d8dd03c46f"
}
Also shoutout to you @fakemanhk for the initiative and keeping it alive and updating the new data points impressivly fast
With irqbalance enabled it pushes upto 841 Mbits/sec
(irqbalance, WED, packet steering, without nft flush ruleset
):
./benchmark.sh: 841 Mbits/sec
root@OpenWrt:/# ./benchmark.sh
Connecting to host 169.254.200.2, port 5201
[ 5] local 169.254.200.1 port 54876 connected to 169.254.200.2 port 5201
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-1.00 sec 100 MBytes 841 Mbits/sec 0 593 KBytes
[ 5] 1.00-2.00 sec 100 MBytes 840 Mbits/sec 0 593 KBytes
[ 5] 2.00-3.00 sec 99.6 MBytes 836 Mbits/sec 0 621 KBytes
[ 5] 3.00-4.00 sec 100 MBytes 842 Mbits/sec 0 621 KBytes
[ 5] 4.00-5.00 sec 100 MBytes 841 Mbits/sec 0 687 KBytes
[ 5] 5.00-6.00 sec 100 MBytes 840 Mbits/sec 0 687 KBytes
[ 5] 6.00-7.00 sec 101 MBytes 845 Mbits/sec 0 687 KBytes
[ 5] 7.00-8.00 sec 101 MBytes 846 Mbits/sec 0 687 KBytes
[ 5] 8.00-9.00 sec 101 MBytes 845 Mbits/sec 0 720 KBytes
[ 5] 9.00-10.00 sec 100 MBytes 838 Mbits/sec 0 720 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 1003 MBytes 841 Mbits/sec 0 sender
[ 5] 0.00-10.00 sec 1002 MBytes 840 Mbits/sec receiver
ubus call system board
"kernel": "5.15.162",
"hostname": "OpenWrt",
"system": "ARMv8 Processor rev 4",
"model": "ASUS TUF-AX6000",
"board_name": "asus,tuf-ax6000",
"rootfs_type": "squashfs",
"release": {
"distribution": "OpenWrt",
"version": "23.05.4",
"revision": "r24012-d8dd03c46f",
"target": "mediatek/filogic",
"description": "OpenWrt 23.05.4 r24012-d8dd03c46f"
}
It's lucky that you didn't post it a week earlier, was super busy with my work and I didn't have much time to update
This is interesting, initially I did that on some of my devices and almost no difference with irqbalance/packet steering at all
I don't fully understand the scripts. If I have an existing wg interface already setup (wg0
for me), what are the commands I can run manually to mimic the benchmark?
I recommend you to ask the author using the GitHub link I provided, but I don't think it's a good idea to use something already in production to test with??
Boot Openwrt off a flashdrive, instead of messing with a working environment.
But this way doesn't work for normal home routers, only suitable for x86, or SBCs
indeed, I (incorrectly ?) assumed @darksky was using x86.
I am using x86/64