LTM 11.2.0 VE now requires VMXNET3 network adapter breaks VirtualBox

I have been using a Big-IP LTM 10.1.0 VE Virtual Edition for several months under Virtual Box it worked great.

I like working in the VirtualBox VM environment I have been using it under BIG-IP Version 10.1.0 3341.1084 for all my development work in a Big-IP LTM VE. (yes I know Virtual Box is NOT "officially" supported).  Please note, I don't want to switch to VMware even if it is free.

In  Big-IP LTM 10.1.0 VE Edition the following adapters seem to work fine.

***** Adaptor (1 of 3) mgmt "adaptor type" is: PCnet-PCI II (Am79C970A) 
***** Adaptor (2 of 3) internal "adaptor type" is: Intel PRO/1000 MT Desktop (82540EM) 
***** Adaptor (2 of 3) external "adaptor type" is: Intel PRO/1000 MT Desktop (82540EM) 

Bottom line the LTM VE 10.1.0 worked great with "   Intel PRO/1000 MT Desktop (82540EM) "


LTM VE 11.2.0 now requires VMXNET3 network adapter, which is not available in VirtualBox - this is a real show stopper for me.

Now that I have a key to use  Big-IP LTM 11.2.0 VE Edition (prior to purchase) it seems like I am being forced to switch to a VMware environment - something I don't want to do.

In all cases 11.2.0 (  VDI, VMDK and ISO install it seem like Big-IP LTM 11.2.0 VE will no longer work under VirtualBox.  It seems to require a VMware "VMXNET3" network adapter and no longer supports a "   Intel PRO/1000 MT Desktop (82540EM) " like 10.1.0 did.

In all cases the 11.2.0 VE seems to require VMware type  "VMXNET 3"  (unlike the prior version of 10.1.0).  network adapters  for the "internal" and "external" VLANs.  In VirtualBox I no longer can select an interface during setup.

looking at the URL describes this network adapter "VMXNET 3". Alas when I read the information from it appears VirtualBox will never support "VMXNET 3" or any VMXNET based appliances (or images). 

I really do not care about performance - I only use this to validate iRULEs and do some basic check before I uploaded new iRULEs onto a critical production system.

It appears that for 11.2.0 a  VMware virtual machine guest environment for the BIG-IP® VE, at minimum, must include the following: 

1 x virtual Flexible (PCnet32 LANCE) network adapter (for management) 
3 x virtual VMXNET3 network adapters 

   Adaptor (1 of 3) mgmt "adaptor type" is: PCnet-PCI II (Am79C970A) 
   Adaptor (2 of 3) - no available adapter works in VirtualBox
   Adaptor (3 of 3)  - no available adapter works in VirtualBox

Is there anything at all I can do to trick the F5 into using eth1 and eth2 which show up in my "ifconfig -a" output - but get ignored by the F5 11.2.0 VE software ?

eth1  Link encap:Ethernet  HWaddr 08:00:27:4F:EF:DE
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

eth2 Link encap:Ethernet  HWaddr 08:00:27:F3:1C:75
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)
          Interrupt:19 Base address:0xd020

Virtual Box supports the following
  • AMD PCNet PCI II (Am79C970A);

  • AMD PCNet FAST III (Am79C973, the default);

  • Intel PRO/1000 MT Desktop (82540EM);

  • Intel PRO/1000 T Server (82543GC);

  • Intel PRO/1000 MT Server (82545EM);

  • Paravirtualized network adapter (virtio-net).

Note the " Paravirtualized network adapter (virtio-net)" is not the same as VMware's VMXNET3.   Also I realize the  VMXNET3 is highly performant - but I don't care about performance in my application e.g. veriying basic iRULEs in a lab setup prior to deploying onto real F5 production HW.

Thanks  In Advance
Jon Strabala

7 Answer(s):

Supported wise, 11.2.0 works with a dataplane that is VMXNET3 (VMware), RTL8139 (XenServer) or Tulip (Hyper-V).

In a non-supported fashion and only starting with 11.2.0... you might be surprised to find that some nice folks with a couple of spare evenings have added in some "mostly functional" virtio support for the tmm, which is probably decent enough to be an iRules testbed with.  

I must stress that it's not ready for prime time traffic for anyone who's considering it for that purpose and running it on VirtualBox is strictly unsupported.

That being said, if you happen to need to boot it...

**Edited after Jon reminded me that I forgot somethings :-)**

0) mgmt can be pcnetII.  It's probably easier if you do this.   I'm not sure if you can tell virtio to just attach to one pci device.

1) all virtio NICs for the dataplane   You need a mgmt and dataplane NIC at a minimum, but the stock 11.x VE definition is: 1 (mgmt) +3 (dataplane) = 1 pcnet II + 3 virtio nics on KVM.

2) /PLATFORM should look like this:


3) I should say it again, just to be clear - running VE on Virtualbox is strictly unsupported at this time.  


This is exactly what I want to hear "yes I need almost zero bandwith to make my an iRules testbed" as such I tried to boot with VirtualBox 4.1.18r78361 running "BIG-IP 11.2.0 Build 2466.0".  

This might work for Linux KVM but it still doesn't seem to work for VirtualBox on Windows 7 - with any of the availabel interfaces.  

Maybe I need to configure something in the guest e.g. Linux VM side - I did read ( that "VirtualBox provides support for the industry-standard "virtio" networking drivers, which are part of the open-source KVM projectand "Linux kernels version 2.6.25 or later can be configured to provide virtio support;"

So here is what I did - big failure

1) all virtio NICs (from VirtualBox e.g. "Paravirtualized network adapter (virtio-net)") - the first one, eth0, will indeed mgmt.   I configured a mgmt and three dataplane NICs: 1 (mgmt) +3 (dataplane) = 4 virtio nics on VirtualBox (not on KVM).

2) Note when I do a "cat /PLATFORM" - it gives same result you indicated


Result  the license/key files didn't seem to take.  Also  the the mgmt interface was on a "Paravirtualized network adapter (virtio-net)" instead of a "AMD PCNet PCI II (Am79C970A)" I could no longer ping in either direction on eth0 the mgmt interface.

In fact on a poweroff or a reboot the VM will hang on "Shutting down interface eth0", I have to hard power off the virtual machine.

I imagine that if the VirtualBox "Paravirtualized network adapter (virtio-net)" network adaptor will not work on the managment port - then all bets are off for it to work on "Int" and "Ext" vlans.   So there is a difference between the KVM virtio nics and the VirtualBox "Paravirtualized network adapter (virtio-net)" - it just doesn't work.   

Note I had already tried (many combinations) I think I always need a Am79C970A or I never get management:

1 mgmt:  "AMD PCNet PCI II (Am79C970A)" 
2 vlan:    "Paravirtualized network adapter (virtio-net)"
3 vlan:    "Paravirtualized network adapter (virtio-net)"

and it doesn't work.   When I read your replay I was surprised that setting "all" to virtio might solve my issue but all it did was completely turn off my mgmt access via https and ssh.

- Jon

I am getting closer realizing that the module "virtio_net" was never loaded I made an adjustment in a config file in /etc/modeprobe.d specifically f5-platform-common where I added three lines to the end. Then I rebooted the VM and the "virtio_net" module loaded and more importantly I actually found the interfaces 1.1 and 1.2 in tmsh. So now it seems that I just need to get my licencing straight.

[root@bigip1:LICENSE INOPERATIVE:Standalone] config # tail -3 /etc/modprobe.d/f5-platform-common
# QSI/JAS adjust theses to virtio and fource load of virtio_net module on reboot
alias eth1 virtio_net
alias eth2 virtio_net
[root@bigip1:LICENSE INOPERATIVE:Standalone] config #

[root@bigip1:LICENSE INOPERATIVE:Standalone] config # /sbin/lsmod | grep virtio
virtio_net 10951 0
virtio_pci 5613 0
virtio_blk 5076 0
virtio 4264 3 virtio_net,virtio_pci,virtio_blk
virtio_ring 5135 3 virtio_net,virtio_pci,virtio_blk
[root@bigip1:LICENSE INOPERATIVE:Standalone] config #

[root@bigip1:LICENSE INOPERATIVE:Standalone] config # tmsh show net interface

Name Status Bits Bits Pkts Pkts Drops Errs Media
In Out In Out
1.1 uninit 0 0 0 0 0 0 none
1.2 uninit 0 0 0 0 0 0 none
mgmt up 815.6K 111.5K 1.4K 104 0 3 100TX-FD

[root@bigip1:LICENSE INOPERATIVE:Standalone] config #

- Jon

ah, ok. You've already licensed with the PCNETII interface, so I'd stick with that. As well, you found something quirky - if you load the kernel module, Linux will take over all the virtio nics on the box. Really, you just want it to takeover the one, for the mgmt port. TMM has it's own drivers for virtio, and if the Linux kernel has sucked those in, tmm won't be able to do much with them. (specify virtio module only for one nic, or use the PCNETII interface as you had been for the mgmt with the same MAC as before)

any progress on this issue?  i tried adding the the lines to the f5-platform-common but i am not seeing the virtio drivers loading in lsmod.  

BIG-IP Virtual Edition 11.3.0 works on KVM and virtio interfaces. Try that version or later.

I can confirm with BIG-IP Virtual Edition 11.4.0, I have setup the mngr interface to PCnet-FAST III and my interfaces to virtio-net. All interfaces are loaded and can be configured.

Your answer: