December 9, 20241 yr Unfortunately, there seems not yet to be an area in this forum for NanoPi R6C/S, so here we go ... Here is the default Armbian /etc/udev/rules.d/70-persistent-net.rules SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", KERNELS=="fe1c0000.ethernet", NAME:="wan" SUBSYSTEM=="net", ACTION=="add", DRIVERS=="r8169", KERNELS=="0003:31:00.0", NAME:="lan1" SUBSYSTEM=="net", ACTION=="add", DRIVERS=="r8169", KERNELS=="0004:41:00.0", NAME:="lan2" This does not match up with the labels on the case! Here is the correct config we have updated and tested on a NanoPi R6S at Afritic Group: SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", KERNELS=="fe1c0000.ethernet", NAME:="lan2" SUBSYSTEM=="net", ACTION=="add", DRIVERS=="r8169", KERNELS=="0003:31:00.0", NAME:="wan" SUBSYSTEM=="net", ACTION=="add", DRIVERS=="r8169", KERNELS=="0004:41:00.0", NAME:="lan1" So now with this updated config, the internal and external names match up!
December 10, 20241 yr Please test with both kernels, 6.12.y and stock 6.1.y and then propose changes: https://github.com/armbian/build/blob/main/config/boards/nanopi-r6s.conf#L30-L34
December 11, 20241 yr Author Current Kernel is Linux 6.1.75-vendor-rk35xx #1 SMP Tue Nov 12 08:48:32 UTC 2024 aarch64 GNU/Linux
December 11, 20241 yr Note that for the NanoPi R6C it is correct. Although lan2 could be removed because PCI-E 0004 node contains my NVME SSD. EDIT: I see https://github.com/armbian/build/blob/main/config/boards/nanopi-r6c.csc is correct, no lan2. It is just that on my installation the rules file is not updated. It is from image older than a year. Edited December 11, 20241 yr by eselarm
December 11, 20241 yr Author @eselarm: Thank you for your feedback! So to double check: The labels on the hardware and with e.g. ifconfig are correctly matching for R6C?
December 11, 20241 yr Yes I explicitly checked. I personally do not really care about the labels/names in the software, although I must know what is what. I look at the picture of the PCB mostly. Or '1G' and '2.5G' that make more sense in my case as I do not use it as a router. I have defined a software ethernet bridge br0 that includes both ports as I need that for virtualization anyway.
December 11, 20241 yr Author @Igor: Is there really a chance that Kernel 6.12.x would address PCIe different than 6.1.x? Aren't those addresses in hardware?
December 11, 20241 yr It is the same for all kernels, I have installed and run 6.12.2 and 6.1.84. If it would be a PC motherboard you could swap PCI-E cards physically, but this SBCs is all soldered hardware. Extra sticker/labels on the case is maybe an option. Or FriendlyElec should have just numbered them eth0 eth1 eth2. Ubiquity routers have that. Or part of MAC address.
December 12, 20241 yr 9 hours ago, Afritic Group said: Is there really a chance that Kernel 6.12.x would address PCIe different than 6.1.x? Aren't those addresses in hardware? In tl;dr; format - kernel 6.1.x is private fork, where this SoC support was brought up. A lot of the HW specific code is done quick and dirty, which means in order to move this code to modern kernel, many parts has to be done from scratch. This means devices drivers can be fundamentally different, thus operating different. Sometimes worse or incomplete, usually better. This process is already in motion for about two years now and most of the SoC functions works. We have two Rock5 in production (Github runners for producing images) for about a year now, running modern kernel. I haven't update it for a long time, so its running some weird test version (Linux 6.7.0-rc1-edge-rockchip-rk3588, Up time: 66 days 8:25)
July 21, 20251 yr Hello, I have a NanoPi R6S and have just attempted the presented adjustment on my Armbian Install but it looks like udev fails to rename the interfaces at boot due to the fact that the kernel is doing that before ? I don't really have a lot of experience here but becaus of this the NetworkManager vlan mapping and IP addresses get mangled up thus resulting in my device not working as intended. Could there be something that I am doing wrong ?
July 23, 20251 yr On 7/21/2025 at 2:53 PM, Radu Stefan Ciubotaru said: Could there be something that I am doing wrong ? It all depends on what version or variant of OS you are using. I have a R6C and have done many fixes and workarounds for various OSses/distros to the point that I just maybe take what generic upstream kernel does. I anyhow change/fake MAC addresses as I use bridges and also VLANs. Is in Armbian Bookworm and Opensuse Tumbleweed. Ubuntu based has and extra netplan layer that is even more a PITA as it keeps .nmconnections file also in another place (generated) then /etc/NetworkManager/system-connections/ Recently a change in scripting has been done so that name 'wan' is/or has been changed into 'wan1', so at least this does not match what is printed on the metalcase. At least that is what I remember from a quick check on github; See what is in your udev rules scripts yourself. https://github.com/armbian/build/blob/main/config/boards/nanopi-r6s.conf Edited July 23, 20251 yr by eselarm
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.