VirtualBox has the following options that "just work":
SS's SLIRP networking essentially provides the NAT service on a single network card. From what I can see, tuntap is similar to bridged networking.NAT Network
Network Address Translation (NAT). If all you want is to browse the Web, download files, and view email inside the guest, then this default mode should be sufficient for you, and you can skip the rest of this section. Please note that there are certain limitations when using Windows file sharing. See Section 6.3.3, “NAT Limitations”.
NAT Network. A NAT network is a type of internal network that allows outbound connections. See Section 6.4, “Network Address Translation Service”.
Bridged networking. This is for more advanced networking needs, such as network simulations and running servers in a guest. When enabled, Oracle VM VirtualBox connects to one of your installed network cards and exchanges network packets directly, circumventing your host operating system's network stack.
Internal networking. This can be used to create a different kind of software-based network which is visible to selected virtual machines, but not to applications running on the host or to the outside world.
Host-only networking. This can be used to create a network containing the host and a set of virtual machines, without the need for the host's physical network interface. Instead, a virtual network interface, similar to a loopback interface, is created on the host, providing connectivity among virtual machines and the host.
Generic networking. Rarely used modes which share the same generic network interface, by allowing the user to select a driver which can be included with Oracle VM VirtualBox or be distributed in an extension pack.
The following sub-modes are available:
UDP Tunnel: Used to interconnect virtual machines running on different hosts directly, easily, and transparently, over an existing network infrastructure.
VDE (Virtual Distributed Ethernet) networking: Used to connect to a Virtual Distributed Ethernet switch on a Linux or a FreeBSD host. At the moment this option requires compilation of Oracle VM VirtualBox from sources, as the Oracle packages do not include it.
However, you in SS you can only select one network card at a time, and there appear to be other options I've never used.
SS source indicates the following options:
So. All this said, has anyone successfully used network options other than SLIRP and TUNTAP? And how would we go about using two at the same time?
I'd love to set up a host-only card, a basic slirp for internet access, and an internal network, where multiple VMs and emulators can communicate locally over the same bridge. At the same time.
This should provide the best of all worlds for networking, where you can communicate with the host, the internet, and other local virtual devices without all the fiddling currently needed.
From the source, it appears slirp is stand-alone, ethertap binds to /dev/<ethernetDevice>, tuntap to /dev/net/tun, sheepnet to /dev/sheep_net, and vde to the macemu.vdesock interface in libvdeplug. From what I know, sheep_net is purely a linux option at this point, and I would guess libvdeplug is Windows-only.
Anyone up to the challenge of implementing multiple ethernet cards? So you could also have ether2, ether3, ether4 and ether5 in the prefs?
Anyone up to the challenge of adding a bridge option so that, for example, ether bridge vboxnet0 would bind to bridge device vboxnet0 if it exists, sort of like qemu does it?
Just some thoughts, as people seem to be poking at the source again. This could also be useful for BII, of course.