I have a m0n0wall router
a VMWare workstation running ubuntu
a windows 7 workstation running the VM
The ubuntu hostname is "renraku" From the windows machine I can't resolve dns automatically for this host. For example, when I
ping renraku
Ping request could not find host renraku. Please check the name and try again.
However nslookup seems to work
nslookup renraku
Server: m0n0wall.local
Address: 192.168.123.254
Name: renraku
Address: 192.168.123.248
I don't get how to have ping to work with hostnames. The main goal behind this is to have my web server to work with hostnames instead of ip addresses
EDIT :
ping 192.168.123.248 works
Did you try a ipconfig /flushdns on the windows machine?
Your DNS client is not appending the DNS suffix to it's queries, probably because it's not configured with one.
It appears that the moonwall router will append the DNS suffix of the zone it hosts to an unqualified query when running nslookup on the queryer but not when another program uses the DNS client on the queryer.
Do you have multiple connections configured on the Windows box? Do all of them have 192.168.123.254 as the DNS server?
Not a direct answer to your problem, but a couple things to consider:
nslookup and other bind related tools do not use the same configuration code as most system programs. In particular they don't read /etc/hosts; but typically, unlike your situation, that means that ping will find a host that nslookup won't. However it's possible that non standard content in /etc/resolv.conf could be interpreted differently by either code paths, causing the problem you're seeing. You should post the content of /etc/resolv.conf
nslookup is deprecated, use "host" instead