Test an NFS Server in the Network

There can be cases where you are administrator of a Macintosh computer which should operate as NFS client, but where you are not administrator of the network or its NFS servers. In such a case you may not know the technical parameters like NFS version or port numbers a specific server uses, so the correct selection of mount options could be difficult.

You can use NFS Manager to test an unknown computer in the network. The test will determine

For technical reasons, the check can only be performed via the IPv4 protocol, not via IPv6. If your Mac currently prefers IPv6 to communicate with the server computer, the test won’t be executed. In this special case, you can force the system to use IPv4 by entering the server’s IPv4 address. If the server is IPv6 only, you cannot use the test. This does not mean that NFS communication between this Mac and the server would not work.

Perform the following steps to test a computer in the network:

  1. Click onto the icon Test Server in the toolbar of the control window, or select the menu item Configuration > Test NFS Server….
  2. Enter the name or IPv4 address into the panel which appears. If you know already that the computer is in fact an NFS server advertising its services via Bonjour, you could also click the button Select… and choose the server from a list.
  3. Click the button Test.
  4. The window Test results will be displayed.

If the specified computer is not switched on, or it cannot be reached on the network, or the computer uses a security feature to defend itself against unauthorized network access, a longer wait time could arise where NFS Manager won’t respond. In that case you will have to wait until macOS cancels the contact attempt to the server.

The window Test results shows a matrix in the upper left corner indicating which NFS protocol versions with which transport protocols (UDP or TCP) are available on the server. A second table in the lower half of the result window shows which additional services related to NFS operations have been found. The column Service holds a description for each service, Version contains the version number as an integer, Transport the transport protocol, Port the port number and Program ID the identification number under which the RPC port mapper has registered each service.

All services supported by a server can be listed if RPC is in use.
All services supported by a server can be listed if RPC is in use.

Special considerations regarding NFSv4 servers

The remote test feature of NFS Manager requires that the server binds itself to the RPC port mapper, which basically advertises the different services in the network. The NFSv4 protocol does not really need RPC binding however, so some server implementations don’t use this function any longer. In this case, the NFSv4 line in NFS Manager will remain empty and the server cannot be discovered this way. Such a policy can also have negative side effects regarding the interoperability of NFSv4 between operating systems of different vendors. In other words, if NFS Manager does not detect the NFSv4 service via RPC, this service might indeed not be compatible with macOS. This means, for NFSv4, a definite response regarding service availability and compatibility cannot be given by the remote test feature of NFS Manager.

You should also consider that NFSv4 is standardized to permit minor version numbers next to the major version number 4. In addition to the original version 4.0 of NFS, defined in RFC 3530, there is a successor version 4.1, defined in RFC 5661. NFS version 4.1 is not compatible with macOS and won’t be displayed by NFS Manager.