Virtualbox, IPv6 + bridged Wireless (WiFi)

Discussions related to using VirtualBox on Windows hosts.

Virtualbox, IPv6 + bridged Wireless (WiFi)

Postby jsburwell » 24. Jun 2011, 09:53

Hi,

The documentation says that IPv6 won't work from a guest OS from a bridged wireless interface from a Linux or Mac based host OS. Is this also true for Windows 7 64-bit?

I'm running VirtualBox on a Win 7 64-bit host. I have a Linux guest OS running with an interface bridged to the wireless interface of the Windows 7 host. I'm using a virtio type interface and drivers under the guest OS.

IPv4 works just fine, but IPv6 doesn't work. It configures an address via SLAAC just fine, but I can't ping6 anything but the host OS's own IPv6 address.

Is this a bug (or lack of feature) in the bridged networking driver, or is it some issue with Wifi itself? I haven't tried it on a wired interface yet, but I presume it works on that.

At first I thought the problem was failing neighbor discovery, but even if I manually add neighbor table entries for various IPv6 hosts on the LAN, I still can't ping6 them.

The only layer 2 difference between an IPv6 packet and an IPv4 packet should be the ethertype (0x86DD for IPv6 vs. 0x0800 for IPv4). Maybe the driver simply isn't passing this ethertype through?

Thanks,
Jim
jsburwell
 
Posts: 1
Joined: 24. Jun 2011, 09:33
Primary OS: MS Windows 7
VBox Version: OSE other
Guest OSses: Linux, Windows

Re: Virtualbox, IPv6 + bridged Wireless (WiFi)

Postby Sasquatch » 25. Jun 2011, 12:26

As you say, it doesn't specify Windows Host for this. But, if the wireless interface doesn't work well with bridged, and VB uses it's fallback option, then it makes sense that IPv6 doesn't work. Since IPv6 uses auto-discover and auto-configure based on part of the interface MAC address, this can prevent proper configuration on the Guest when in bridged fallback method. This method means that VB will identify the Guest using the Host's MAC address to get network access, instead of using the Guest's own MAC address. Since the Host has an IPv6 address based on it's MAC, the Guest won't configure itself with that same IP to avoid conflicts.
Have you tried assigning a static IPv6 address? I've never heard of requiring to configure the neighbour discovery on any OS other than the one providing the subnet and responds to auto-configure requests. And even there it's only configured to broadcast the subnet and routing information. Not much else to configure. IPv6 configures itself.
Read the Forum Posting Guide before opening a topic.
VirtualBox FAQ: Check this before asking questions.
Online User Manual: A must read if you want to know what we're talking about.
Howto: Install Linux Guest Additions
Howto: Use Shared Folders on Linux Guest
See the Tutorials and FAQ section at the top of the Forum for more guides.
Try searching the forums first with Google and add the site filter for this forum.
E.g. install guest additions site:forums.virtualbox.org

Retired from this Forum since OSSO introduction.
Sasquatch
Volunteer
 
Posts: 17800
Joined: 17. Mar 2008, 13:41
Location: /dev/random
Primary OS: Debian other
VBox Version: PUEL
Guest OSses: Windows XP, Windows 7, Linux

Re: Virtualbox, IPv6 + bridged Wireless (WiFi)

Postby tjmerritt » 27. Jul 2011, 01:52

Sasquatch wrote:As you say, it doesn't specify Windows Host for this. But, if the wireless interface doesn't work well with bridged, and VB uses it's fallback option, then it makes sense that IPv6 doesn't work. Since IPv6 uses auto-discover and auto-configure based on part of the interface MAC address, this can prevent proper configuration on the Guest when in bridged fallback method. This method means that VB will identify the Guest using the Host's MAC address to get network access, instead of using the Guest's own MAC address. Since the Host has an IPv6 address based on it's MAC, the Guest won't configure itself with that same IP to avoid conflicts.

I don't think that this is actually a problem. The guest will get its MAC from the virtual interface. And that interface specific guest MAC address will be used for autoconfiguration. The correct auto configured address is getting set in the guest OS and the packet makes it into the air with the correct IPv6 address. The problem is that the MAC address in the ethernet header get rewritten to the host wireless interface MAC address, and the neighbor announcement gets sent back not to the guest interface specific MAC address but to the host's wireless MAC address. VB picks up the packet and then should rewrite the correct guest iface MAC into the packet based upon the IPv6 address of the destination. VB doesn't do this yet, because the code hasn't yet been written to do this.
Have you tried assigning a static IPv6 address? I've never heard of requiring to configure the neighbour discovery on any OS other than the one providing the subnet and responds to auto-configure requests. And even there it's only configured to broadcast the subnet and routing information. Not much else to configure. IPv6 configures itself.

Indeed it does, and this works just fine. The problem is that VB does switching based upon IP address for wireless rather than the more normal switching based upon MAC address. The code for doing the switching for IPv6 has yet to be written.

I'm more than willing to help write it, but I don't have experience developing VirtualBox and don't currently have a way to build and test VB on my laptop.
tjmerritt
 
Posts: 2
Joined: 27. Jul 2011, 00:12
Primary OS: MS Windows 7
VBox Version: PUEL
Guest OSses: Ubuntu 10.10, FreeBSD 8.1

Re: Virtualbox, IPv6 + bridged Wireless (WiFi)

Postby simon_vetter » 4. Apr 2013, 01:23

Old thread, but the issue is still present in 4.2.10.

I can confirm that it is not windows-specific and that some code has to be added for this to work.
I actually wrote a patch implementing the feature, it is attached to ticket #5503. It works as expected on Mac OSX, but the code is not OS-specific and should work on any platform.

It will hopefully make its way into the main distribution when reviewed by the vbox development team. In the meantime, your only option is to patch the source and compile it yourself.
Last edited by noteirak on 4. Apr 2013, 08:53, edited 1 time in total.
Reason: Added ticket link
simon_vetter
 
Posts: 1
Joined: 4. Apr 2013, 01:16


Return to VirtualBox on Windows Hosts

Who is online

Users browsing this forum: boucherle and 50 guests