So, I've been taking a better look at VirtualBox's networking model. Turns out that the Vagrant's networking model was a direct consequence of VirtualBox's: if you take a look at VirtualBox's Networking Modes documentation, you'll see the only mode that provides full Host <-> VM, VM1 <-> VM2 and VM <-> Internet connectivity by using a single network interface is "Bridged".
That's probably the reason why Vagrant chose to use "NAT" mode for the default network interface, which provides VM <-> Internet connectivity, and only limited Host <-> VM connectivity, by using port forwarding to be able to SSH from the Host to the VM. So if you need additional full Host <-> VM and VM1 <-> VM2 connectivity, you'll need to add another network interface in "Host-only" mode.
So it looks like for fluff we're only left with being able to use "Bridged" mode, which comes with a few drawbacks:
-
when you configure the VM network interface, you need to specify the Host network interface that you want to bridge on, as there is no "Auto" mode
-
you need to configure VM networking according to your Host / LAN networking
-
that way your VMs have direct access to your LAN, as their network interface is basically physically connected to it
- this is partially the case for VMware with NAT, too, where you can access your LAN devices from a VM, through the NAT routing on your Host
These can be of course prevented (e.g. using a different network range for the VMs and configuring the firewall on your LAN router to isolate it from your LAN one), but it's not trival and it needs at least some networking skills.