Starting with version 3.1, VirtualBox supports “teleporting” – that is, moving a virtual machine
over a network from one VirtualBox host to another, while the virtual machine is running. This
works regardless of the host operating system that is running on the hosts: you can teleport
virtual machines between Solaris and Mac hosts, for example.
Teleporting requires that a machine be currently running on one host, which is then called
the “source”. The host to which the virtual machine will be teleported will then be called the
“target”; the machine on the target is then configured to wait for the source to contact the target.
The machine’s running state will then be transferred from the source to the target with minimal
downtime.
Teleporting happens over any TCP/IP network; the source and the target only need to agree
on a TCP/IP port which is specified in the teleporting settings.
At this time, there are a few prerequisites for this to work, however:
1. On the target host, you must configure a virtual machine in VirtualBox with exactly the
same hardware settings as the machine on the source that you want to teleport. This does
not apply to settings which are merely descriptive, such as the VM name, but obviously for
teleporting to work, the target machine must have the same amount of memory and other
hardware settings. Otherwise teleporting will fail with an error message.
2. The two virtual machines on the source and the target must share the same storage (hard
disks as well as floppy and CD/DVD images). This means that they either use the same
iSCSI targets or that the storage resides somewhere on the network and both hosts have
access to it via NFS or SMB/CIFS.
This also means that neither the source nor the target machine can have any snapshots.