A brief comparison of networking modes in Oracle Virtualbox.
- NAT(Network Address Translation) mode is the default mode when you spin up a new virtual machine(vm) on virtual box.
- This mode allows the vm to communicate with the ‘internet’ by using the host machine as a proxy
- Communication to the vm can be made by configuring port forwarding through the vritualbox GUI or a CLI tool such as Vagrant.
# Example (using vagrant):config.vm.network "forwarded_port", guest: 22, host: 2222
- This means all traffic to port 2222 on the host will be forwarded to port 22 of the vm.
- Instead of creating a virtual NAT engine for each vm, Virtualbox creates one NAT engine is used for all vms as illustrated below:
- As it is shown above, the vms can communicate to each other and as well as the ‘internet’.
Internal or Private Network
- This mode allows the vms to be completely isolated from the host and the ‘internet’.
- That is unlike NAT network mode, communication only occurs among the vms connected to the internal network.
Host Only Network
- In this mode, a Virtual Ethernet adapter is used to allow the host and the vms to communicate directly.
- The vms cannot communicate with any external network in this mode
Hybrid or Bridge Network
- In this mode the vm acts as a physical device connected to your network
- Basically, this is similar to buying a new computer and connecting it to your home or office network.