VMware Communities
PackElend
Enthusiast
Enthusiast

run DNS server in VM to reach test apps by domain, possible without modification on the host system?

Hello,

I have several apps as a docker in VM for testing. Instead of putting on each on a different port, I would like to use a reverse proxy and call the apps by a subdomain of the domain for the VM.

In DNS on the NAT Network it says, I simply add a DNS server to the NAT.
So my question, if I run a DNS server in that VM I could reach a dockerize app by e.g. app1.myVMdomain.vmlocal , if the DNS server and reverse-proxy are configured properly?

I'm used to the fact, that a DNS resolution query goes via the DNS setting in the NIC.
I don't want to modify the settings of the NIC as I open the VM on different Windows machines.
According to How networks work: what is a switch, router, DNS, DHCP, NAT, VPN and a dozen of other useful things ..., there are virtual switches/NICs for the VM. In my case there are

  • VMware Virtual Ethernet Adapter for VMnet1
  • VMware Virtual Ethernet Adapter for VMnet8

Would DNS resolution inquiries run through this adapters as well, so that the DNS server in my VM is asked for e.g. app1.myVMdomain.vmlocal?

I find only https://kb.vmware.com/s/article/2006955 and VMware Knowledge Base what comes close but not exactly the same I'm looking for.
Reading through https://superuser.com/questions/1388845/why-is-a-local-vm-not-resolving-via-dns-and-nslookup-in-the-...  it looks like that I have to modify resolv.conf / NIC settings but the VM'IP is assigned by DHCP, so that is quite tricky.

12 Replies
wila
Immortal
Immortal

Hi,

It depends on the VMware Workstation product that you are using.

If you are using Workstation Professional then you have the network editor at your service and you can create a new virtual network that your other VMs can use to connect to the Firewall VM that provides things such as DNS and internet access.

If you are using Workstation Player then it is still possible, but you will have to manually edit a bunch of text configuration files.

--

Wil

| Author of Vimalin. The virtual machine Backup app for VMware Fusion, VMware Workstation and Player |
| More info at vimalin.com | Twitter @wilva
Reply
0 Kudos
PackElend
Enthusiast
Enthusiast

thx for the quick reply

you have the network editor

I remember that I downloaded it once separately to run it alongside Workstation Player, need to check

If you are using Workstation Player then it is still possible, but you will have to manually edit a bunch of text configuration files.

that would be?

Reply
0 Kudos
wila
Immortal
Immortal

The network editor would do.

re. manually editing the VMware player network configuration files.

Sorry I would have to look that up and figure it out again myself.

I'm not going to spent the time, but you should be able to google it as it has been debated many times before.

Besides that.. if you have the network editor already then you're all set.

Otherwise.. you can always install a trial of VMware Workstation Professional.

It also contains VMware Player and you can continue using the player even after the trial runs out.

--

Wil

| Author of Vimalin. The virtual machine Backup app for VMware Fusion, VMware Workstation and Player |
| More info at vimalin.com | Twitter @wilva
PackElend
Enthusiast
Enthusiast

found it in Workstation 15.5 Pro for Windows

but I have  just noticed that you said

that your other VMs can use to connect to the Firewall VM that provides things such as DNS and internet access.

I would like to reach the apps in the VM from the host's browser by a domain.
How can I realize that without access to the physical network DNS server?

Reply
0 Kudos
wila
Immortal
Immortal

Hi,

For that scenario, you can fall back on your original statement:

it looks like that I have to modify resolv.conf / NIC settings but the VM'IP is assigned by DHCP, so that is quite tricky.

edit the resolv.conf ... If your VM is assigned an IP address that you control then that's a lot less tricky.

I'm not a fan of editing resolv.conf, but if you cannot control your host's DNS then that's what it is.

--

Wil

| Author of Vimalin. The virtual machine Backup app for VMware Fusion, VMware Workstation and Player |
| More info at vimalin.com | Twitter @wilva
PackElend
Enthusiast
Enthusiast

resolv.conf,

is there an equivalent for Windows? My impression is, that there is only the host-file

Reply
0 Kudos
PackElend
Enthusiast
Enthusiast

seems I can do it only in the NIC-config Smiley Sad

https://sufi.io/linux-etcresolv-conf-equivalent-in-windows-8-to-add-domain-suffixes/

DNS-Server ändern (Windows 7/8/10, Mac & Co.) - so funktionierts - IONOS

so either adapt NIC settings or spin up a second VM with a browser in it.

So last question, which would be the least resources consuming one?

Reply
0 Kudos
wila
Immortal
Immortal

On Windows you would be editing the C:\Windows\System32\drivers\etc\hosts file

Note that you can only edit it with administrator rights and I advise you to take a copy of it before editing.

I do pretty much all of my work in VM's, rarely at the host level.

For spinning up a browser VM you can use a simple linux VM with Firefox and Chrome.

Not sure exactly what you need to test.

You can go pretty minimal if you install a VM with Haiku (1GB RAM), but Haiku uses netsurf for browser, which isn't exactly a very common browser.

edit: I forgot, Microsoft also offers special browser VMs here:

Virtual Machines - Microsoft Edge Developer

They used to be quite minimal as well.

--

Wil

| Author of Vimalin. The virtual machine Backup app for VMware Fusion, VMware Workstation and Player |
| More info at vimalin.com | Twitter @wilva
PackElend
Enthusiast
Enthusiast

thx that helps a lot Smiley Happy

Not sure exactly what you need to test.

I'm testing some apps, currently https://firefly-iii.org/  and want to run a testing and production docker in parallel, there will be additional apps and I don't want to learn by heart all IP and all ports, so I came up with the idea to use a reserver-proxy etc.

Currently, I do most of my things on my office machine due to home office. I have this little ubuntu-core VM-lab which is stored on external SSD. I would like to reduce dependencies on the host, that is the reason I came up with all this

Reply
0 Kudos
PackElend
Enthusiast
Enthusiast

wila​ you said

manually editing the VMware player network configuration files.

I have forgotten to mention that you need admin rights to change network config using VMWare network configurator.
So I wondering, where are files located I find only the location for NAT: Editing the NAT Configuration File

In the worst case, you do the configuration at home and copy&paste the setting on your restricted machine.

Reply
0 Kudos
wila
Immortal
Immortal

Hi,

Yes I said that, but also said:

Sorry I would have to look that up and figure it out again myself.

and as I'm a volunteer helping out who has more urgent things to do ...

Perhaps somebody else can fill you in on that.

--

Wil

| Author of Vimalin. The virtual machine Backup app for VMware Fusion, VMware Workstation and Player |
| More info at vimalin.com | Twitter @wilva
PackElend
Enthusiast
Enthusiast

alright only hoped that you may know

thx for you help

Reply
0 Kudos