Tuesday, 21 August 2007

VMWare Server - Can ping but nothing else between host and guest

I've been using VMWare Server for testing some software and I've found it very easy to use and extremely valuable. This is a free product that lets you create virtual servers using multiple operating systems. Its great, because you can install an OS and then back it up in that state. Then you can make modifications (try out various configurations or software products) while being able to easily revert to a back up at any time.

I'd created a VM on one PC and after a while I transferred it to another host. I thought all was well, until I tried to SSH to it. No joy. I thought something was up with the networking, since I was also using it on another network and had changed from DHCP to static ip addresses.

After a while I figured that:

  1. the host could ping the guest

  2. the guest could ping the host

  3. the guest could see the internet

  4. no other networking (http, ssh etc) worked


Now that I knew what I was dealing with, I quickly found a bug report:
Bug #105697 in vmware-player (Ubuntu)

My host was Ubuntu 7.04 and the guest was Fedora Core 5. I seems there is a problem with TCP (ping is ICMP so that works) - to quote the bug report:
Host and Guest could talk to each other when using non-TCP based services, but when TCP based services(SSH) were used the connection failed:
I believe from looking at the vmware forums, that this can happen with any host operating system if the driver for your network card has some kind of TCP Offload Engine or something like that.

From lspci I can see my ethernet card is a Realtek:
02:01.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)

I still haven't found a solution to this - the command for turning off TCP Offload Engine doesn't seem to work for the Realtek.

0 comments:

Post a Comment