How to get Solaris 11 VNICs in a Virtualbox VM to work - kind of ...
Normally you can’t use a Solaris 11 VNIC on a virtualised interface in Virtualbox. It simply doesn’t work. “Virtualized on virtualized” doesn’t work well and as far as i understand it, the problem is that the hypervisor has no knowledge of the MAC addresses used by the VNICs.
However it turned out this is not entirely true.
A warning: This isn’t something you should use on a regular schedule. When reading this blog entry, it will be obvious to you. I just want to set the expectations straight. It may break other stuff. However this trick is really useful, when you want to try out for example the highly-available configuration of the Solaris Integrated Loadbalancer by combining VRRP and ILB. This configuration uses a VRRP typed VNIC. I’ve used this trick last week in order to demonstrate exactly this HA-ILB configuration.
Okay, let’s start with a plain standard system. One interface. It’s a “bridged networking” interface at the moment from Virtualbox perspective. There is an setting you have to do as well in the networking part: Set promiscuous mode to “Allow all”:
Now log into the system:
Okay. Pinging works.
Okay, now let’s create a VNIC on net0
Okay, at soon as you type the commands your network connection will stop to work. The reason is simple. VNICs doesn’t work together with VNICs.
Okay, now login to your system and use the magic command:
And now try to ping the new IP-Address again.
And now it works :) As long as the snoop runs. When the snoop doesn’t run, it doesn’t work. And when you think about it, this behaviour is perfectly reasonable :)