VirtualBox

Opened 15 years ago

Closed 9 years ago

#4552 closed defect (obsolete)

Virtual machine fails to start with bridged networking if there is one already running

Reported by: David Gutzmann Owned by:
Component: network Version: VirtualBox 3.0.2
Keywords: Cc:
Guest type: Linux Host type: Linux

Description (last modified by Valery Ushakov)

I have a bridged setup with 3 identical machines utilizing bridged networking, linux software bridges and tap interfaces. The first machine just starts fine but the second one fails to start every time. This was not a problem with 2.2.4.

The error message says:

Failed to start the virtual machine Testbed-aFirstTest-vb1. Failed to open/create the internal network 'HostInterfaceNetworking-vb1_ch0' (VERR_INTNET_INCOMPATIBLE_TRUNK). Unknown error creating VM (VERR_INTNET_INCOMPATIBLE_TRUNK).

Tap interfaces are named vb0_ch0, vb1_ch0 and vb2_0.

Attachments (2)

Testbed-aFirstTest-vb1-2009-07-16-20-36-59.log (29.3 KB ) - added by David Gutzmann 15 years ago.
Testbed-aFirstTest-vb0-2009-07-20-16-41-41.log (30.0 KB ) - added by David Gutzmann 15 years ago.

Download all attachments as: .zip

Change History (9)

in reply to:  description comment:1 by David Gutzmann, 15 years ago

Replying to gutzmann:

This was not a problem with 2.2.4.

I removed 3.0.2 to give 2.2.4 a try again. 2.2.4 fails with this very error message, too!

I recently upgraded from lenny/stable to squeeze/testing.

I would love to provide any information which could help resolving this issue. Going back to lenny/stable is unfortunately no option for me.

in reply to:  description ; comment:2 by David Gutzmann, 15 years ago

Tap interfaces are named vb0_ch0, vb1_ch0 and vb2_0.

VirtualBox even fails to start when only one machine is involved which is configured to use two of the tap interfaces. Same error message. (tested with 2.2.4 only)

in reply to:  2 ; comment:3 by David Gutzmann, 15 years ago

Replying to gutzmann:

Tap interfaces are named vb0_ch0, vb1_ch0 and vb2_0.

VirtualBox even fails to start when only one machine is involved which is configured to use two of the tap interfaces. Same error message. (tested with 2.2.4 only)

The Testbed-aFirstTest-vb0-2009-07-20-16-41-41.log log file is the result of trying to start a virtual machine with three tap-interfaces (bridged networking) attached to it. Prior to the failed start I executed the following commands in order to setup the tap interfaces, add them to a bridge and force the bridge to form a chain-of-3 network topology:

echo Starting tap-interfaces ...
sudo tunctl -t vb0_ch0 -u dvd
sudo tunctl -t vb1_ch0 -u dvd
sudo tunctl -t vb2_ch0 -u dvd
sudo ifconfig vb0_ch0 0.0.0.0 promisc up
sudo ifconfig vb1_ch0 0.0.0.0 promisc up
sudo ifconfig vb2_ch0 0.0.0.0 promisc up
echo Starting bridge ...
sudo brctl addbr ch0
sudo ifconfig ch0 10.0.0.100 netmask 255.255.255.0 broadcast 10.0.0.255 up
echo Adding interfaces to bridge
sudo brctl addif ch0 vb0_ch0
sudo brctl addif ch0 vb1_ch0
sudo brctl addif ch0 vb2_ch0
echo Starting visibility procedures ...
echo Setting default policy of ebtables FORWARD chain to DROP and flushing it ...
sudo ebtables -P FORWARD DROP
sudo ebtables -F FORWARD
echo Ensuring visibility between the vboxes ...
sudo ebtables -A FORWARD -i vb0_ch0 -o vb1_ch0 -j ACCEPT
sudo ebtables -A FORWARD -i vb1_ch0 -o vb0_ch0 -j ACCEPT
sudo ebtables -A FORWARD -i vb1_ch0 -o vb2_ch0 -j ACCEPT
sudo ebtables -A FORWARD -i vb2_ch0 -o vb1_ch0 -j ACCEPT

Right now, I don't have any clue what the problem *could* be.

in reply to:  3 comment:4 by David Gutzmann, 15 years ago

Replying to gutzmann:

Replying to gutzmann: Right now, I don't have any clue what the problem *could* be.

Ok, I finally figured it out. The problem was with the interface names I used.

More specific: There has to be a bug in virtualbox preventing me from choosing perfectly fine names (as far as the linux kernel is concerned) for the tap interfaces. The only restrictions linux places on the interface names is length <= 15 characters, so vb0_ch0, vb1_ch0, cb2_ch0 should be perfectly fine as interface names. If I rename the tap interfaces to tap0, tap1, tap2 everything works like a charm.

Maybe a solution could be incorporated somehow into future virtualbox releases.

Cheers,

David

comment:5 by Frank Mehnert, 15 years ago

Interesting. I can't find such restriction in the code. AFAICS, the maximum size of a network interface is 63 characters...

comment:6 by Frank Mehnert, 15 years ago

Connecting from two different VMs to a TAP device with vb0_ch0 works just fine here on a Linux host. You didn't try to start a VM with different users, did you?

comment:7 by Valery Ushakov, 9 years ago

Description: modified (diff)
Resolution: obsolete
Status: newclosed
Note: See TracTickets for help on using tickets.

© 2023 Oracle
ContactPrivacy policyTerms of Use