Can you do mount -vvv to get some more info on the client? The ganesha side doesn't *seem* to be sad.
Sure, here you go:
# mount -vvv -t nfs -o vers=3,nordirplus 10.1.2.4:/azure-file /mnt/azure
mount.nfs: timeout set for Mon Jun 28 15:28:50 2021
mount.nfs: trying text-based options 'vers=3,nordirplus,addr=10.1.2.4'
mount.nfs: prog 100003, trying vers=3, prot=6
mount.nfs: trying 10.1.2.4 prog 100003 vers 3 prot TCP port 2049
mount.nfs: prog 100005, trying vers=3, prot=17
mount.nfs: portmap query retrying: RPC: Program not registered
mount.nfs: prog 100005, trying vers=3, prot=6
mount.nfs: trying 10.1.2.4 prog 100005 vers 3 prot TCP port 20048
mount.nfs: mount(2): Stale file handle
mount.nfs: trying text-based options 'vers=3,nordirplus,addr=10.1.2.4'
mount.nfs: prog 100003, trying vers=3, prot=6
mount.nfs: trying 10.1.2.4 prog 100003 vers 3 prot TCP port 2049
mount.nfs: prog 100005, trying vers=3, prot=17
mount.nfs: portmap query retrying: RPC: Program not registered
mount.nfs: prog 100005, trying vers=3, prot=6
mount.nfs: trying 10.1.2.4 prog 100005 vers 3 prot TCP port 20048
mount.nfs: mount(2): Stale file handle
mount.nfs: trying text-based options 'vers=3,nordirplus,addr=10.1.2.4'
mount.nfs: prog 100003, trying vers=3, prot=6
mount.nfs: trying 10.1.2.4 prog 100003 vers 3 prot TCP port 2049
mount.nfs: prog 100005, trying vers=3, prot=17
mount.nfs: portmap query retrying: RPC: Program not registered
mount.nfs: prog 100005, trying vers=3, prot=6
mount.nfs: trying 10.1.2.4 prog 100005 vers 3 prot TCP port 20048
mount.nfs: mount(2): Stale file handle
mount.nfs: Stale file handle
It's getting and handling NULL, MNT_NULL, MNT_MNT, lookup of /azure-file (lookup of the root filehandle), and then responding to an FSINFO request.
If the mount -vvv isn't revealing, we might need a wireshark dump of the NFS traffic. For v3 I usually do:
sudo tshark -J "mount,rpc,nfs,nlm,portmap" -O "mount,rpc,nfs,nlm,portmap" host <IP>
Here's the pastebin for that:
-Nick