The NanoPi R6S with dual 2.5G LAN + 1GB LAN, and 8-core CPU + 8GB ram is a really great device, however no official OpenWrt build yet, same as most people here I also want to use the vanilla one, and here is what I did:
Use DietPi as the underlying OS, it has FriendlyElec kernel (according to DietPi team) but a trim down version of Debian Bullseye.
Install ARM version Proxmox (PiMox 7), grab the OpenWrt ARM64 rootfs from release page to run as container! It works well for me.
And then tested a passthrough of USB WiFi and it also worked so this part is quite successful.
I didn't assign all resources to OpenWrt LXC, so now I can add something like PiHole, and maybe Tailscale (tried to run TS directly on OpenWrt but it doesn't work well with nftables, a separate container might be better), and something I couldn't think of at this moment.
That's impressive, thank you for sharing! It would be interesting to know if you have tested the throughput of ethernet interfaces, it would be normal not to have 100% or the maximum values but if the loss is not too high, your solution is a good one. Maybe having FriendlyElec kernel is something not totally desiderable - I have read somewhere that there are some security issues, see here:
I haven't got time to do a full test due to out of country this week, but technically it should be close to 100% because this is a container which has very little overhead.
I really like this idea but am having trouble accomplishing this on my r6s.
I've installed the most basic DietPi for the r6s via SD, then properly copied it to MMC.
Then after disabling ipv6, using a static IP, and making sure the SSH server is set to OpenSSH, I follow the manual installation instructions here:
Which bombs out because:
dpkg: dependency problems prevent configuration of proxmox-ve:
proxmox-ve depends on pve-manager; however:
Package pve-manager is not configured yet.
Now, step 6 says "Make sure the kernel-headers are installed." which is impossible for this build afaik, but that doesn't seem to be the hold up. Any clarification as to how you got this on there and running?
Edit
Spoke too soon. Should have googled a bit more. Fixed by making my /etc/hosts file look like this:
Yes, the PiMox 7 install script is unable to change hostname on DietPi (haven't checked why), so you can change the DietPi's hostname manually before installation.
Thank you for the extra help!
I just had a look at the modules and will pick this back up on the weekend. I could be wrong but it does seem odd to me that it even tries using the r8169 module since the r6s has 2x RTL8125BG and 1x RTL8211F (1Gb). I didn't poke around with any of the other friendlyarm images outside of the openwrt one, so I don't know what modules their images include, but blacklisting the r8169 module makes sense.
I tried to search around and found that normally r8169 should also cover Realtek 8125B, however I found it never works on my DietPi setup, so eventually I just blacklist it and go straight to r8125 and then it works!
There is a FriendlyWRT version for the R6S? I read a review the other day that said they installed the FriendlyWRT version. The latest version is based on OpenWRT 22.03.3 (or maybe it's 22.03.2 - don't remember for sure) So, why not run that until the R6S is supported in OpenWRT? Honest question.
In my case it’s because of security. I don’t know if a manufacturer-made operating system/firmware has some… “uncontrolled” code (maybe that’s not the most correct expression, but I guess you get the idea). I’ll have my internal network and personal data behind the router, protected by a vpn that I will configure by myself, and don’t want to leave any loose end. I trust openwrt but I don’t totally trust any other firmware made by manufacturers.
But if I’m wrong, please anyone correct me. Maybe Friendlyelec firmware is reliable in terms of security.
Running the vanilla OpenWrt, in case FriendlyElec doesn't update fast enough in future when new version comes, I can still use this way to update. But of course the best would be having mainline linux kernel support so that vanilla OpenWrt can do bare metal install on it.
So what error you've got? Cannot create the container or it doesn't boot?
For PiMox 7 I used DietPi Bullseye image (at that time FriendlyElec didn't have Bullseye image), now I can see that Armbian has the image as well, just build up from there. However at that time the 2.5G NIC didn't work with r8169 driver, which I had to blacklist it and use r8125 instead.
then I had added NICs and run
Console:
Connected to tty 1
Type <Ctrl+4 q> to exit the console, <Ctrl+4 Ctrl+4> to enter Ctrl+4 itself
black screen without text
Summary:
Status running
HA State none
Node pve
CPU usage 0.03% of 2 CPU(s)
Memory usage 0.32% (6.49 MiB of 2.00 GiB)
SWAP usage N/A
Bootdisk size 1.36% (13.23 MiB of 973.42 MiB)
I think unless you compile your own kernel, otherwise the shipped kernel usually doesn't have KVM support which will cause huge performance hit on VM.
By default there is no video output so normal PVE console will show you nothing even you are trying to view it like other LXC/VM, you need to use other command to enter into the container console directly.