internal network / switch implementation
Posted: 14. May 2017, 23:34
Hi all,
I'm using virtualbox in a scenario where I use one linux guest to simulate an industrial appliance using an adhoc ethernet protocol, and one guest to simulate a linux machine receiving those packets and processing them. Both hosted on one linux host.
The appliance and the linux machine are connected together via an ethernet link. I've tried "internal networks" and "bridged nics" (with a cable between 2 dedicated nics at the back of the host). (I've always set both nics in allow promisc all in the guest settings, and have verified basic connectivity works by setting up an ip on both and doing some pings,etc...).
In both cases I hit a problem :
Any packet sent with a destination mac of 88:88:88:88:88:88 by the appliance (don't bash me, I didn't design this appliance, and I can't change this) gets silently dropped somewhere between the sending and the receiving nic. I see packets leaving the sending nic, and none reaching the receiving nic.
Note that if I try to connect a real appliance to the bridged interface of the linux guest that's supposed to receive them. it works....Also, if I use packets with a destination mac of ff:ff:ff:ff:ff:ff (the classic broadcast packet) it works in all virtualised scenarios.
Now.. when I read the manual about internal networks (chapter 6), it says "The VirtualBox support driver implements a complete Ethernet switch and supports both broadcast/multicast frames and promiscuous mode". Well.... does it ? my hardware switches (have experience with dell force10's in 3 different flavors and hp procurves in 2 flavors) do forward 88:88:88:88:88:88 but not the VB internal network switch, or is it that the 88:88:88:88:88:88 somehow don't leave the appliance VM ? (I havn't tested the virtual appliance with a real switch thru bridged networks, but have tested a real appliance into a bridged VM, and that works)
I think it could be an implementation detail in the virtual nic driver, sender side. But I fail to find any details on how to tweak this.... (I've tried all possible guest nic types on the sender side ).
Is there a way to configure virtualbox nic or switch to make this work ?
Brgds.
I'm using virtualbox in a scenario where I use one linux guest to simulate an industrial appliance using an adhoc ethernet protocol, and one guest to simulate a linux machine receiving those packets and processing them. Both hosted on one linux host.
The appliance and the linux machine are connected together via an ethernet link. I've tried "internal networks" and "bridged nics" (with a cable between 2 dedicated nics at the back of the host). (I've always set both nics in allow promisc all in the guest settings, and have verified basic connectivity works by setting up an ip on both and doing some pings,etc...).
In both cases I hit a problem :
Any packet sent with a destination mac of 88:88:88:88:88:88 by the appliance (don't bash me, I didn't design this appliance, and I can't change this) gets silently dropped somewhere between the sending and the receiving nic. I see packets leaving the sending nic, and none reaching the receiving nic.
Note that if I try to connect a real appliance to the bridged interface of the linux guest that's supposed to receive them. it works....Also, if I use packets with a destination mac of ff:ff:ff:ff:ff:ff (the classic broadcast packet) it works in all virtualised scenarios.
Now.. when I read the manual about internal networks (chapter 6), it says "The VirtualBox support driver implements a complete Ethernet switch and supports both broadcast/multicast frames and promiscuous mode". Well.... does it ? my hardware switches (have experience with dell force10's in 3 different flavors and hp procurves in 2 flavors) do forward 88:88:88:88:88:88 but not the VB internal network switch, or is it that the 88:88:88:88:88:88 somehow don't leave the appliance VM ? (I havn't tested the virtual appliance with a real switch thru bridged networks, but have tested a real appliance into a bridged VM, and that works)
I think it could be an implementation detail in the virtual nic driver, sender side. But I fail to find any details on how to tweak this.... (I've tried all possible guest nic types on the sender side ).
Is there a way to configure virtualbox nic or switch to make this work ?
Brgds.