Hello,
I have two ARMv7h boards, neither of which were able to mount a nfs server over ipv4, but were able to using ipv6. I noticed that when the board would begin a tcp session, the syn packet had extra IP layer parameters. These options are related to section 3.2 of rfc7569, something about netlabels, CIPSO and ipv4 MLS systems. None of which i have deployed/configured.
This led to tracked me down to the following kernel option:
CONFIG_LSM="yama,loadpin,safesetid,integrity,selinux,smack,tomoyo,apparmor,landlock"
While my stock 6.10.10 x86_64 nfs server has:
CONFIG_LSM="landlock,lockdown,yama,integrity,bpf"
After compiling an arm kernel with that LSM line, my arm board is able to mount the nfs server over ipv4.
Thank you