I have an application that sends UDP broadcasts to some port, for example 11000 (BROADCAST_APP) and another application that listens the 11000 UDP port(LISTENER_APP). The apps works well on the physical LAN (192.168.1.0/24) when I started the listener on my physical interface
UDP 192.168.1.16:11000 *:*
and send broadcast from machine 192.168.1.11.
But I want to test them in the virtual network so I run the BROADCAST_APP in the guest WinXp machine and LISTENER_APP in the host Win7 machine on virtual interface:
UDP 192.168.56.1:11000 *:*
My host machine have virtual adapter with address 192.168.56.1 and guest machine 192.168.56.2. I can ping guest from host and vice versa.
However, my broadcasts from guest not reached the LISTENER_APP. I run the virtual machine in the Oracle VirtualBox.
Best Answer
From the comments, Windows Firewall did it, as it was set to block connections from public networks, which is/was the location of the virtual adapters doing the UDP broadcasts. Turning off the firewall fixed the problem.
By the way, if you haven't done so already, a more secure approach would be to make a rule for the inter-VM communications and/or designate the virtual adapter to be in a more "trusted" network within Windows Firewall and/or your host network's settings.