6 Virtual networking
ICMP protocol limitations:
Some frequently used network debugging tools (e.g.
ping
or tracerouting) rely on the ICMP protocol for sending/receiving messages.
While ICMP support has been improved with VirtualBox 2.1 (
ping
should now
work), some other tools may not work reliably.
Receiving of UDP broadcasts is not reliable:
The guest does not reliably receive
broadcasts, since, in order to save resources, it only listens for a certain amount
of time after the guest has sent UDP data on a particular port. As a consequence,
NetBios name resolution based on broadcasts does not always work (but WINS
always works). As a workaround, you can use the numeric IP of the desired
server in the
\\server\share
notation.
Protocols such as GRE are unsupported:
Protocols other than TCP and UDP are
not supported. This means some VPN products (e.g. PPTP from Microsoft) can-
not be used. There are other VPN products which use simply TCP and UDP.
Forwarding host ports < 1024 impossible:
On Unix-based hosts (e.g. Linux, So-
laris, Mac OS X) it is not possible to bind to ports below 1024 from applications
that are not run by
root
. As a result, if you try to configure such a port forward-
ing, the VM will refuse to start.
These limitations normally don’t affect standard network use. But the presence of
NAT has also subtle effects that may interfere with protocols that are normally work-
ing. One example is NFS, where the server is often configured to refuse connections
from non-privileged ports (i.e. ports not below 1024).
6.5 Bridged networking
With bridged networking, VirtualBox uses a device driver on your
host
system that
filters data from your physical network adapter. This driver is therefore called a “net
filter” driver. This allows VirtualBox to intercept data from the physical network and
inject data into it, effectively creating a new network interface in software. When a
guest is using such a new software interface, it looks to the host system as though the
guest were physically connected to the interface using a network cable: the host can
send data to the guest through that interface and receive data from it. This means that
you can set up routing or bridging between the guest and the rest of your network.
For this to work, VirtualBox needs a device driver on your host system. The way
bridged networking works has been completely rewritten with VirtualBox 2.0 and 2.1,
depending on the host operating system. From the user perspective, the main differ-
ence is that complex configuration is no longer necessary on any of the supported host
operating systems.
2
2
For Mac OS X and Solaris hosts, net filter drivers were already added in VirtualBox 2.0 (as initial support
for Host Interface Networking on these platforms). With VirtualBox 2.1, net filter drivers were also
added for the Windows and Linux hosts, replacing the mechanisms previously present in VirtualBox for
those platforms; especially on Linux, the earlier method required creating TAP interfaces and bridges,
86