Phpvirtualbox: cannot join WIN10 to domain (once more)

NethServer Version: 7.8
Module: nethserver-phpvirtualbox

I`ve seen topics like mine several times in this forum, but always somehow different. So, sorry for asking this once again with my specific circumstances.

My Win10 installation running as a phpvb-VM cannot connect to my nethserver-ad. It seems to be kind of a DNS-Problem related to something in the ns-networking configuration. Other clients (non-virtual) joined the ad without issues.

My Setup:

nethserver-phpvirtualbox running a WIN10-vm Installation as guest os, fresh install.

I set the VM NIC to br0 with promiscuos mode for all.

Then I created a script as described in the documentation. In fact, I copied it and only adjusted the vmname to the name of my WIN10-vm. I use this script every time I want to start the WIN10-vm.

In WIN10-vm I tried joining my nethserver-ad on the gui (old “System” Window) and per PowerScript:
AddComputer -domainname "ad.server.url"

The DNS of the VM is set to my nethserver-ad by DHCP (deployed by a router device and reported correctly by the WIN10-vm with ipconfig, second DNS is 1.1.1.1).

ping ad.ip -> good
ping nethserver.ip -> good
ping ad.url -> good
ping nethserver.url -> good

Any nslookup performed on WIN10-vm shows my ad-ip as server, but cannot get dns-records (time-out). Literally any nslookup, even google.com.

I can browse the internet on the WIN10-vm with firefox without issues.

What to do and where else to look?

Good day,


Try to remove the second DNS before joining your VM, here we always have problems every time we try to join a new PC to the domain. After joining it, you can put the second DNS back in.

Have you already checked your windows 10 network settings?

  • The netmask of the network configuration

I’m using Manjaro, this is my virtualbox network configuration for my VM WIN10 (joined):
image

I can connect my vm with both the internal NIC and another PCIe NIC.

I don’t remember the details, but I installed the virtio drivers for the NIC. To see if I could get a better performance.

When we join a New PC to the domain, we take out the gateway and 2nd DNS for this to work.
image
After the PC is joined we add the gateway and the 2nd DNS; the gateway is a fortinet, the alternate dns is a pi-Hole (Thank you @Andy_Wismer)

And because the AD and PC joined need to use the same date & time to work; it seems that having access to the Internet or other DNS the joining process fails.

It is likely that your VM is taking the time from another location and getting out of sync.

Regards.

3 Likes

Hello Enrique,

I removed the second DNS, but still I get a DNS timeout when trying to bind.
Other clients get responses from this DNS.

I will have a look at timeserver settings, but I think the DNS timeout is more relevant.

WIN10-vms netmask is 255.255.255.0

Just to be sure, which edition of windows 10 are you using?
I feel that more information about your WIN10 is missing.

Regards

1 Like

It is the Enterprise Edition, a fresh install with updates applied.

fun fact: Today I had the craftsman in-house. They installed windows. The glass edition.

I changed the timeserver in the WIN10-vm to the same as my nethserver. No change.

I guess it is an issue with networking/routing between VM and AD. It looks like a firewall behaviour letting some clients pass to DNS, but block this one.

This is the script, I use it every time I want to boot the VM. Or should I use it only once after booting the nethserver?

VBoxTunctl -u root -g vboxusers -t vbox0
ifconfig vbox0 up
brctl addif br0 vbox0
sudo -H -u vboxweb VBoxManage startvm VMname --type headless

:neutral_face: :expressionless: :no_mouth::laughing: :rofl: :joy: :slightly_smiling_face:


I have never used phpvirtualbox, and as far as I can see it is a module on nethserver.
But one question, where are you running VirtualBox on nethserver or another computer with which OS?

Yes, it is a module on nethserver. It contains both, phpvirtualbox and virtualbox 5.2. So both are running on the nethserver machine.

There are known oddities with connecting a virtual WIN10 guest to the AD container. However it should work with the script I posted above.

@sternkrabbe

Hi Sternkrabbe

You’re running a virrtualized Win10 host in a Linux host, together with a Linux Jail or Container running the AD. That’s two different solutions, both using the br0 Interface. Both can communicate with the outside world (GREEN / LAN) but it seems issues are there connecting to each other…

Now, that alone can provide issues, but NethServer also has firewall rules…

That’s one of the reasons I prefer using a “specialist” like Proxmox to handle virtualization… :slight_smile:

My 2 cents
Andy

1 Like

Hi Andy,

I want to keep my setup as small and lean as possible. The Hardware is a rather old Quad i5 Optiplex. Proxmox is too big just for starting one single VM.

Is it possible to use a proxy between vm and container? Or to duplicate the DNS, so NS DNS could resolve the AD DNS?

Or, somehow, activate WLAN, so the vm could get its own physical NIC without bridging? Although this would slow down RDP dramatically.

@sternkrabbe

Hi Sternkrabbe

My Proxmox at home is a 8 year old HP Proliant Server with 16 GB RAM…
I have NethServer, Home Assistant (Home-Control) and a Win10 VM for RDP running there.
I have also used Proxmox on an older Proliant, with only 8 GB RAM…

You can make an entry on the NethSe5rver AD, pointing to the IP of your AD.
WLan would also need bridging, or Hardware allocation, but neither solution is really a good one…

My 2 cents
Andy

ok, so the proxmox overhead wouldn`t be too much. Good to know.

Yet I hesitate to perform a complete reinstall, I just pushed this nethserver into production.

Holy shit! :crazy_face:

(sorry)

The documentation says to bridge the VMs NIC to br0 in promiscuos mode. Now I just changed br0 to vbox0 - and it worked immediately (started from phpvirtualbox gui, not using the script). I even can browse the net with my AD.DNS as only DNS entry…

I do not understand enough about this - but if this is just how it should work, then maybe someone bothers to update the documentation.

I think the script needs to run once after booting nethserver to configure vbox0 and bridge it to br0. So bridging the VM to br0 makes the script useless. If I understand it right.

1 Like