My host computer is Windows 7 64. I have VirtualBox with an Ubuntu 10.04 Server x64 running as guest. My Ubuntu Guest has an ip of 192.168.1.104. I have openssh installed on the guest. I can ssh into ubuntu from Windows. On my host Windows OS, I can type 192.168.1.104 into the browser, and get your standard It works! apache message. My ubuntu guest hostname is "ubuntuserver01" When I type in "ubuntuserver01" into the browser address bar on my windows host os, it wont connect to the server on the guest. Is this just a problem with my /etc/hostname and /etc/hosts files (and what do I need to change?) or am I missing something else?
This is because when you type "ubuntuserver01" you are asking the DNS to look for a TLD with that name, try appending ".local" (only works if you router actually does this sort of mapping).
In other words, if you want that to work you need to add a mapping on your router. Or, this isn't recommended for a simple tasks, change your DNS settings on Windows to point to another server that knows this mapping. The "other" DNS would be one you own.
The mapping would be something similar to this:
Please also note that when and if you do create your own DNS server, you still need to make sure the all the TLD's and other common mappings are in your new configurations along with this new one. Failing to do so will block your Windows machine to be able to resolve any website and will basically be blocked off from the internet.