Portmapper troubleshooting
From Brandonhutchinson.com
In this example, mounting a volume on an NFS server is unsuccessful.
- NFS client (Solaris 10 x86): 10.205.0.56
- NFS server (NetApp filer): 10.209.128.16
What happens if we try to mount the file system?
# mount 10.209.128.16:/vol/fs /tmp/mnt nfs mount: 10.209.128.16: : RPC: Rpcbind failure - RPC: Timed out nfs mount: retrying: /tmp/mnt
snoop output:
... 10.205.0.56 -> 10.209.128.16 PORTMAP C GETPORT prog=100005 (MOUNT) vers=3 proto=UDP 10.205.0.56 -> 10.209.128.16 PORTMAP C GETPORT prog=100005 (MOUNT) vers=3 proto=UDP (retransmit) 10.205.0.56 -> 10.209.128.16 PORTMAP C GETPORT prog=100005 (MOUNT) vers=3 proto=UDP (retransmit) ...
From the NFS client, can we see the list of the NFS server's exported file systems?
$ showmount -e 10.209.128.16 showmount: 10.209.128.16: RPC: Rpcbind failure - RPC: Timed out
snoop output:
10.205.0.56 -> 10.209.128.16 PORTMAP C GETPORT prog=100005 (MOUNT) vers=1 proto=TCP
We can't. Is the portmap service on the NFS server reachable?
$ rpcinfo -p 10.209.128.16 program vers proto port service 100024 1 tcp 4047 status 100024 1 udp 4047 status 100011 1 udp 4049 rquotad 100021 4 tcp 4045 nlockmgr 100021 3 tcp 4045 nlockmgr 100021 1 tcp 4045 nlockmgr 100021 4 udp 4045 nlockmgr 100021 3 udp 4045 nlockmgr 100021 1 udp 4045 nlockmgr 100005 3 tcp 4046 mountd 100005 2 tcp 4046 mountd 100005 1 tcp 4046 mountd 100005 3 udp 4046 mountd 100005 2 udp 4046 mountd 100005 1 udp 4046 mountd 100003 3 tcp 2049 nfs 100003 2 tcp 2049 nfs 100003 3 udp 2049 nfs 100003 2 udp 2049 nfs 100000 2 tcp 111 rpcbind 100000 2 udp 111 rpcbind
It is, but if we watch the above command with snoop, we see that it is using TCP 111.
Based on the above output, the likely problem is that UDP 111 is not being allowed to or from the NFS server by a firewall. Once it is, we can proceed with troubleshooting if the mount is unsuccessful.
