VirtualBox supports VNIC (Virtual Network Interface) templates for configuring VMs over VLANs.[43] A VirtualBox VNIC template is a VNIC whose name starts with "vboxvnic_template" (case-sensitive).
On Solaris 11 hosts[44], a VNIC template may be used to specify the VLAN ID to use while bridging over a network link.
Here is an example of how to use a VNIC template to configure a VM over a VLAN. Create a VirtualBox VNIC template, by executing as root:
dladm create-vnic -t -l nge0 -v 23 vboxvnic_template0
This will create a temporary VNIC template over interface "nge0"
with the VLAN ID 23. To create VNIC templates that are persistent across
host reboots, skip the -t
parameter in the
above command. You may check the current state of links using:
$ dladm show-link LINK CLASS MTU STATE BRIDGE OVER nge0 phys 1500 up -- -- nge1 phys 1500 down -- -- vboxvnic_template0 vnic 1500 up -- nge0 $ dladm show-vnic LINK OVER SPEED MACADDRESS MACADDRTYPE VID vboxvnic_template0 nge0 1000 2:8:20:25:12:75 random 23
Once the VNIC template is created, any VMs that need to be on VLAN 23 over the interface "nge0" can be configured to bridge using this VNIC template.
VNIC templates makes managing VMs on VLANs simpler and efficient.
The VLAN details are not stored as part of every VM's configuration but
rather inherited from the VNIC template while starting the VM. The VNIC
template itself can be modified anytime using dladm
.
VNIC templates can be created with additional properties such as bandwidth limits, CPU fanout etc. Refer to your Solaris network documentation on how to accomplish this. These additional properties, if any, are also applied to VMs which bridge using the VNIC template.