VMware Cloud Community
eeo
Contributor
Contributor

VI 3.5 NFS tcp port 2049 missing

Trying ESX 3.5 U2 NFS client to WIndows SFU (Services for Unix).

I have Windows firewall turned off as well as NFS client enabled in ESX security profile.

Problem: RPC timeout when trying to create datastore using VI Client or via Service Console manual mount

Also can't # showmount -e 192.168.2.200 !192.168.2.200 is my Windows NFS server

I can ping and vmkping 192.168.200

I enabled wireshark on the NFS server and do see the pings in the trace but nothing shows when trying NFS.

I get this in vmkernel log:

vmkernel: 0:00:12:32.790 cpu2:1037)WARNING: NFS: 898: RPC error 13 (RPC was aborted due to timeout) trying to get port for Mount Program (100005) Version (3) Protocol (TCP) on Server (192.168.2.200)

I believe the problem is that nfs is not listening under tcp proto port 2049.

re:

  1. rpcinfo -p

program vers proto port

100000 2 tcp 111 portmapper

100000 2 udp 111 portmapper

100003 2 udp 2049 nfs

100003 3 udp 2049 nfs

100021 1 udp 32768 nlockmgr

100021 3 udp 32768 nlockmgr

100021 4 udp 32768 nlockmgr

100005 1 udp 742 mountd

100005 1 tcp 745 mountd

100005 2 udp 742 mountd

100005 2 tcp 745 mountd

100005 3 udp 742 mountd

100005 3 tcp 745 mountd

If I am correct how to set up or enable nfs to listen under tcp port 2049?

this is on a Dell Poweredge 2650 which is not on the supported products list. This is a test machine only.

It has 2 netXtreme BCM5703 Gigabit Ethernet adapters.

thanks,

Ed

Tags (1)
0 Kudos
3 Replies
eeo
Contributor
Contributor

OK, I am lookign at this wrong.

I see this in a Linux site:

Some of the daemons involved in sharing data via nfs are already bound to a port. portmap is always on port 111 tcp and udp. nfsd is always on port 2049 TCP and UDP (however, as of kernel 2.4.17, NFS over TCP is considered experimental and is not for use on production machines).

SO it is probable that ESX does not bind port 2049 to TCP but instead does use UDP on port 2049. Thus, I am wrong to try to force ESX to bind NFS to port 2049 (I don't think I can do this anyhow without rebuilding the kernel).

Next I listed the ports mapped on my Windows NFS Server and indeed udp is listening under port 2049!

Here is output from SFU (MS Services for Unix)

C:\>rpcinfo -p

program version protocol port

-


100000 2 udp 111 portmapper

100000 2 tcp 111 portmapper

150001 1 udp 1035 pcnfsd

150001 2 udp 1035 pcnfsd

351455 1 tcp 608 mapsvc

351455 1 udp 609 mapsvc

351455 2 tcp 610 mapsvc

351455 2 udp 611 mapsvc

100005 1 udp 1048 mountd

100005 2 udp 1048 mountd

100005 3 udp 1048 mountd

100005 1 tcp 1048 mountd

100005 2 tcp 1048 mountd

100005 3 tcp 1048 mountd

100021 1 udp 1047 nlockmgr

100021 2 udp 1047 nlockmgr

100021 3 udp 1047 nlockmgr

100021 4 udp 1047 nlockmgr

100021 1 tcp 1047 nlockmgr

100021 2 tcp 1047 nlockmgr

100021 3 tcp 1047 nlockmgr

100021 4 tcp 1047 nlockmgr

100024 1 udp 1039 status

100024 1 tcp 1039 status

100003 2 udp 2049 nfs

100003 3 udp 2049 nfs

100003 2 tcp 2049 nfs

100003 3 tcp 2049 nfs

SO, if ESX 3.5 is listening on udp port 2049

program vers proto port

100003 2 udp 2049 nfs

100003 3 udp 2049 nfs

And if If Windows is listening under udp port 2049 program version protocol port

100003 2 udp 2049 nfs

100003 3 udp 2049 nfs

100003 2 tcp 2049 nfs

100003 3 tcp 2049 nfs

This should be working. I enabled all logging under SFU and don't see any connections.

I will go back to using wireshark and check it out.

By the way the Windows SFU server (Windows firewal turned off) is Ip addr 192.168.2.200 and the ESX (firewall is eables for NFS remote access) is 192.168.2.210 and are conencted to the same Dell switch which I believe is as basic a topology as I can set up.

thanks,

Ed

0 Kudos
eeo
Contributor
Contributor

Answering more of my self inflicted issues.

An NFS server can be configured to support TCP protocol to increase transmission integrity. However, ESX Server only supports UDP protocol during the installation. In ESX Server 3.5 Update 5, a new option nfsopts is added to enable ESX Server installation using NFS over TCP.

I wish to get this working under UDP then later I'll try TCP as this should work using UDP.

I have Wireshark running and am filtering on my ESX server, did both a 'add storage' via VIC as well as '# showmount -e 192.168.2.200' and I don't see any traffic on UDP.

-


So I go back to VIC and uncheck 'NFS client outgoing ports 11,2049 UDP,TCP'

I then

  1. showmount -e 192.168.2.200 ! 102.168.2.200 is my Windows SFU NFS server

mount clntudp_create: RPC: Port mapper failure - RPC: Unable to send

! this tells me ESX is trying to send the UDP packet but it is being blocked!!!

I then recheck (unblock) 'NFS client outgoing ports 11,2049 UDP,TCP'

  1. showmount -e 192.168.2.200

! no failure but then again no listing is displayed

! BUT my Wireshark trace still doesn't show any incoming UDP packets.

Sanity check - on the SFU server:

C:\>showmount -e 192.168.2.200

Exports list on 192.168.2.200:

/ISOS All Machines

! SO indeed it is advertising the NFS share?

I guess the next step is to figure out how to trace on the ESX 3.5 server...

thanks,

Ed

0 Kudos
joshuahanley
Contributor
Contributor

No doubt you have either solved or moved on from this issue, but I was having the same issue and found the answer here: http://communities.vmware.com/message/676735. From user Texiwill: "If you want to add an NFS share to the service console for the service consoles only use you need to do all you did plus 'esxcfg-firewall -e nfsClient' otherwise nothing passes the firewall."

This solved the issue for me. Thanks!

0 Kudos