Here are some results if anyone comes across this thread in the future.
The baseline result I need to achieve is a speedtest result of 7.5 Gbit that the ISP’s rental router gives me.
I ended up picking up:
- Lenovo ThinkCentre Tiny M720q, Core i3 8100T, 8 GB RAM ($70)
- Huawei SP310 (Intel X520-DA2/82599) dual 10 Gbit NIC ($20)
- 16x PCIe riser + Network Card Bracket ($20)
Initially I installed pfSense. I ran iperf3 to just get an initial sanity check that the PCIe card/wiring was working right but was getting results between 3-7 Gbit with the CPU pegging at 50%. Some quick googling returned results like “you can’t run iperf on pfSense!” and “pfSense isn’t a router, why do people keep using it as a router, it’s a firewall!”, so I decided to switch to OpenWRT since the Linux side of things always seems to make more sense.
On OpenWRT, iperf easily hit 9 Gbit with like the CPU at 95% idle.
It took like 2 hours to configure the weird IPIP6 tunnel my ISP uses for IPv4, but once it was set up, the machine has no trouble routing the same 7.5 Gbit speedtest the ISP router managed, with the CPU usage at 78% idle (the remainder in “sirq”)