After a reboot of a ESXi 6.0 server it will no longer mount several NFS shares being hosted on a Windows Server 2012 R2 box. Previously these shares were working fine, but now any NFS mount is met with the following error:

The NFS server does not support MOUNT version 3 over TCP

This is strange because the NFS server has both version 3 and 4 enabled

NFS Protocol Versions

Likewise the protocols have both TCP and UDP enabled.

NFS Transport Protocols

The firewall is also allowing NFS connections. I'm at a bit of a loss as to why the NFS shares have stopped being able to be mounted on ESXi. No major configuration changes have been made as far as I'm aware.

Network Setup

Two physical adapters. One configured for failover, but all traffic under one subnet the same as the main LAN. No VLAN's or anything complicated.

Storage Setup

2TB Storage Space Mirror hosted on a Windows Server 2012 R2 server. 3 NFS shares set to read/write for the ESXi host with "All Machines" as read-only.

I've tried restarting the NFS Server service on the Windows Server 2012 R2 box but the problem remains.

Any ideas?

  • Maybe show us your ESXi networking and storage setup? – Chopper3 Mar 9 '16 at 14:09
  • @Chopper3 I've added the details. Its a pretty basic setup. – James White Mar 9 '16 at 20:57
  • @Pandorica just curious about a few things: have you tried to mount the shares using another operating system? Is the error limited to the vm host, or can it's vms connect to the shares normally? What are you using to manage access rights? Have you checked to make sure any relevant service account's password hasn't expired or changed recently? The error message suggests none of these questions will be relevant, but it never hurts to check. – sippybear Mar 14 '16 at 8:21
  • @sippybear. I don't really have any NFS clients other than ESXi to be honest. I mainly use SMB. At this point I suspect perhaps maybe a Windows Update to Server 2012 R2 may have caused this, as literally no config change has been made by me personally, but various KBs were applied on the 6th and 9th. – James White Mar 14 '16 at 8:58

Disable version 4, restart the NFS service and reboot the VMWare box. You only need one of them and definatelly not both for the same share. For further details please have a look here https://pubs.vmware.com/vsphere-60/index.jsp?topic=%2Fcom.vmware.vsphere.storage.doc%2FGUID-011DCC67-9876-4071-AED9-710D1E712E74.html

As per VMWare documentation you only need to have 1 enabled:

Make sure that the NFS server exports a particular share as either NFS 3 or NFS 4.1, but does not provide both protocol versions for the same share. This policy needs to be enforced by the server because ESXi does not prevent mounting the same share through different NFS versions.

  • I would add - it won't work with both versions enabled. You have to choose one. – Stewpudaso Mar 11 '16 at 15:12
  • @Alex H Sounds perfectly reasonable. However I've tried having just v3 enabled, restarted the service on the file server and then rebooted the ESXi server, I get the same error still. I have even tried recreating the share again after the changes and still all NFS shares refuse to mount. – James White Mar 11 '16 at 17:19
  • I think there must be some kind of error. Please have a look here wiki.linux-nfs.org/wiki/index.php/Testing_tools and see what's happening on the NFS share. Pick anything with NFS3/4 support and see if the share is indeed working on the protocol that you specified. – Alex H Mar 14 '16 at 15:06
  • @Alex H Something I've recently found out showmount -e throws RPC: Remote system errorRPC: Port mapper failure - RPC: Timed out. This doesn't look healthy, considering there should be 3 NFS shares. I'll have a look at that page and see what I find. Both the portmap service and NFS service are running and the ports are open. This box is borked I swear! – James White Mar 14 '16 at 19:37
  • 1
    I'm marking this as the answer, because the general advice is accurte but I'm leaving this note for anyone else in this situation. First of all the NFS settings in Server Manager in 2012 R2 don't do a bloody thing it seems! Turns out I needed to mess around with NFS settings in mmc.exe with the Services for NFS snap-in. For the Server for NFS properties there is a tick box for Enable NFS version 3 support. THIS MUST BE TICKED! As soon as I did this and restarted the service, ESXi mounted the shares happily again! NFS on Windows, still a PITA in 2016. Enough said. – James White Mar 14 '16 at 21:15

Alex H has the right idea, however I'm adding this to the original question to help anyone else that gets this issue, specifically for NFS on Windows Server 2012 R2. Turns out the error reported by ESXi is indeed correct. Despite having NFS 3.0 or 4.1 enabled via NFS settings properties in Server Manager, ESXi won't mount the NFS shares. Why? Because the critical setting is actually elsewhere...

In order to find it you must use mmc.exe (Management Console) and open the Services for NFS snap-in go to Server for NFS and right click properties.

NFS Properties Management Console

If the tickbox for Enable NFS version 3 support is not ticked, tick it and then click apply and OK. Restart the Server for NFS service. ESXi will then mount the shares again.

Its interesting that the Version 3 tickbox in the NFS Server Manager settings, doesn't do the same thing, though I'm sure there is a "logical" decision for this by Microsoft.

Bottom line, this checkbox is pretty much critical for NFS on Windows Server 2012 R2.

Hope this helps someone, I've been literally trying to solve this for days!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.