I am currently in the process of setting up my new NanoPi R3S running a fork of OpenWRT 23.05.
Presently, my setup is as follows: ISP Fibre ONT > TP-Link Router/AP (provided by ISP). Out the box, it yields my service speed of 500down/500up via PPPoE with tagged VLAN. Keep in mind this is on a wired connection without any issues.
When trying to setup the NanoPi with OpenWRT to replace the TP-Link, I am running into a little hurdle and I'm almost certain it's config related.
With the NanoPi WAN connected to the TP-Link Router LAN and port setup as "DHCP Client" (double NAT, I think?), my PC receives 500/500 service speed flawlessly. When I setup the NanoPi WAN as PPPoE and connect it directly to the Fibre ONT using tagged VLAN, my download speeds are 500+ consistently, but the upload speeds severely drop from 500 all the way down to about 80mbps in speed tests.
I've messed around with various settings such as MTU, Packet Steering, Software/Hardware Flow Offloading, with no resolution. I have updated to the latest version of OpenWRT available for the device and that helped to get my upload speeds to around 200mbps minimum. Although, I cannot seem to get it higher than this. I read that utilizing SQM and IRQBalance may help, but after tinkering with these settings I haven't noticed any improvements. I don't understand how it works flawlessly double NAT'd and I can even run PBR for VPN and custom DNS without any issues, but soon as I change to PPPoE my upload speeds are specifically impacted.
If anyone can offer some insight or suggestions, your help would be greatly appreciated!
Please try an image from 24.10-SNAPSHOT or a main/ snapshot first, there has been a very recent (4 days ago) change that might already fix your issues.
I've only got a 100/100 PPPoE w VLAN connection running on my R3S so haven't benchmarked beyond. But since your struggle with MTU settings and such, here is my working config.
sha256sum: 399c0303d2971023cfb3e35acdbeb239650750bfd0670be723cadc1429d4d2d6 8525.3 KB Thu Jan 16 03:48:43 2025
I know there are some implications with using "snapshot" builds in OpenWRT as they're not yet stable. However, I do particularly like how this image is mainly the "core" stuff I need for a router.
Off-topic:
I did notice that my internal 32GB eMMC storage space is no longer showing up as I believe I will have to remount that so I can use it. If you have any quick-links you mind sharing with me on how I can re-enable this and tie it into my current disk space, that would be super helpful.
Also, I didn't have to modify any MTU settings after flashing the new build.
It worked flawlessly with the new build installed at MTU1492 on the PPPoE WAN.
In addition, I went ahead and re-applied Packet Steering and Software Flow Offloading just in case they do in fact give me any significant performance boost.
I will have to go ahead and re-apply my PBR VPN settings and maybe SQM to see if those work as intended. I will keep this post updated as I test. Thanks again!
So now you get 500 down & up through PPPoE with VLAN?
My ISP asks for a MTU1500 so I set the PPPoE interface as such. I dont know your providers specifics, but MTU1492 could do fine.
Yeah, this particular r28346 24.10_snapshot is good with a rockchip commit and luci patch that removed implications. It benefits rockchip devices over RC5.
I don't know how to expand your internal eMMC storage, I have a model with no eMMC. Good luck!
Yes, I get about 540-560ish down and up, but that's probably because my ISP services me extra to compensate for the PPPoE overhead stuff. I left the MTU as default 1492 when the interface provisioned in OpenWRT and it worked without an issue.
I have tried the 24.10.0-rc5 build as I've read it's the most recent stable "test" release. That also worked fine with PPPoE for me, no issues with it out of the box.
After rebooting the NanoPi R3S, I didn't see any change to the partition size usingdf -hcommand, but when checking the partition withpartedorcfdisk, I was able to see that the script successfully allocated the free space to the /mmc partition.
IMPORTANT: I specifically had to run these lines 2-3 times line-by-line to get the system to update the resized partition successfully before rebooting the NanoPi.
umount ${LOOP}
resize.f2fs ${LOOP}
Performed a reboot and factory reset, confirmed that the previously installed packages were removed and device was back to original state but the space that I had allocated using the scripts above remained the same. So that works in my favor and hopefully I do not have to re-run these scripts if I decide to use a newer OpenWRT*.sysimage.img.gz file in the future.