Bridged VLAN on OS X
Posted: 16. Feb 2012, 18:21
I have an OS X (10.7.2) host, with an Ubuntu guest. Let's call those "Host A" and "Guest A"
I also have a Windows 7 host, with an Ubuntu guest. Call those "Host B" and "Guest B"
Both hosts are running Virtualbox 4.1.8
Host A and Host B each have a NIC with a VLAN configured. They can talk to each other happily using IP addresses on the VLAN.
Guest A and Guest B each have a network interface (eth1) attached to a bridged interface on the VLAN NIC, but not configured to use VLAN tags.
Host B can talk to Host A, Guest A and Guest B.
Host A can talk to Host B, Guest B, and Guest A.
Guest B can talk to Host A and Host B (but not Guest A).
Guest A can only talk to Host A.
(In all cases "talk to" is shorthand for "establish IPv4 connectivity, enabling both ICMP and TCP connections", i.e. I can ping and ssh)
If I make no other change but remove the VLAN adapters and bind the adapters to host NICs using untagged IP (on which the hosts can also talk to each other), then the guests can talk to each other, but obviously not the hosts.
There is no firewall configured.
In Virtualbox on the Mac; Adapter 2 is shown as Enabled, attached to "Bridged Adapter", name "vlan0", using the "Intel 82540EM" (as is the guest that's working on the Windows side). "vlan0" shows up in ifconfig, and as I said, there's no problem using that interface from the host, so basic IP connectivity is there.
It appears that the OS X host is not correctly bridging the network from the guest to the rest of the world if, and only if, the host adapter is a VLAN. In an equivalent configuration, this is working on a Windows host.
Have I missed anything? Is this a bug? Can anybody offer a workaround/solution/verification?
(I have good reasons for wanting to use a VLAN, and would prefer both hosts to be able to talk to the guests on the private network rather than having to have .)
I also have a Windows 7 host, with an Ubuntu guest. Call those "Host B" and "Guest B"
Both hosts are running Virtualbox 4.1.8
Host A and Host B each have a NIC with a VLAN configured. They can talk to each other happily using IP addresses on the VLAN.
Guest A and Guest B each have a network interface (eth1) attached to a bridged interface on the VLAN NIC, but not configured to use VLAN tags.
Host B can talk to Host A, Guest A and Guest B.
Host A can talk to Host B, Guest B, and Guest A.
Guest B can talk to Host A and Host B (but not Guest A).
Guest A can only talk to Host A.
(In all cases "talk to" is shorthand for "establish IPv4 connectivity, enabling both ICMP and TCP connections", i.e. I can ping and ssh)
If I make no other change but remove the VLAN adapters and bind the adapters to host NICs using untagged IP (on which the hosts can also talk to each other), then the guests can talk to each other, but obviously not the hosts.
There is no firewall configured.
In Virtualbox on the Mac; Adapter 2 is shown as Enabled, attached to "Bridged Adapter", name "vlan0", using the "Intel 82540EM" (as is the guest that's working on the Windows side). "vlan0" shows up in ifconfig, and as I said, there's no problem using that interface from the host, so basic IP connectivity is there.
It appears that the OS X host is not correctly bridging the network from the guest to the rest of the world if, and only if, the host adapter is a VLAN. In an equivalent configuration, this is working on a Windows host.
Have I missed anything? Is this a bug? Can anybody offer a workaround/solution/verification?
(I have good reasons for wanting to use a VLAN, and would prefer both hosts to be able to talk to the guests on the private network rather than having to have .)