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”)
Power consumption:
- ISP router draws a solid 16W both when it’s idle and when there is 7.5 Gbit of traffic
- The M720q draws 16W when idle and up to 29W when there is 7.5Gbit of traffic. This is with two copper SFP+
- This is without tweaking any power saving options in BIOS etc
I just got 10 Gbit internet last week so I had a chance to tidy everything up. The ThinkCentre is the 10 Gbit router, the Synology actually hosts everything.
Also finally labeled all the mystery cables. Also replaced the proprietary 20V/12V bricks for the ThinkCentre and 10G Fiber ONU with USB-C adapter cables to keep things tidier.