Parallels IPv6 networking mess

Djinh

Bit poster
Hi,

Since installing Parallels 6 on my Mac, I've been having strange networking issues. Today I finally had the time to investigate. I wish I hadn't. It's all quite a mess:

Parallels version: Build 6.0.11994
OSX version: 10.6.7

System status: Parallels NOT running

1. Router advertisements

Somehow Parallels thinks it's a good idea to send IPv6 Router Advertisements on vnic0. This means that there'll be an IPv6 default route pointing to vnic0 on the OSX host:

Destination Gateway Flags Netif Expire
default fe80::21c:42ff:fe00:18%vnic0 UGc vnic0

This messes with IPv6 connectivity. Even if you then disable IPv6 on your primary ethernet interface, the host system will still assume there is IPv6 connectivity, causing lengthy timeouts for anything that has an AAAA record in the DNS.

2. Depricated addresses

Parallels configures the IPv6 addresses ::0.0.0.1 and ::0.0.0.2 on vnic0 and vnic1. These are IPv4-compatible-IPv6 addresses and have been depricated in RFC 4191 way back in 2006. Even *if* the developers have been living under a stone since then, RFC3513 demands:

Note: The IPv4 address used in the "IPv4-compatible IPv6 address" must be a globally-unique IPv4 unicast address. must be a globally-unique IPv4 unicast address.

0.0.0.1 and 0.0.0.2 can of course hardly be called "globally-unique IPv4 unicast addresses"

3. While digging around I found the network.desktop.xml file. A nice mess there as well:
- Six of the eight defined interfaces there have a VLAN tag of 65535. I don't know if that's meant seriously, as VLAN tags are only 12 bits, so 0-4095, not 65535.
- While it's great that Parallels supports DHCPv6, I'm not sure what this is about:

<DHCPv6Server dyn_lists="">
<Enabled>0</Enabled>
<IPScopeStart>127.0.0.1</IPScopeStart>
<IPScopeEnd>127.0.0.1</IPScopeEnd>
<IPReservations dyn_lists="IPReservation 0"/>
</DHCPv6Server>

- 127.0.0.1 isn't a very nice IPv6 address. I also supect that network is already in use on another interface.

- A little further down we find:

<DHCPv6Server dyn_lists="">
<Enabled>0</Enabled>
<IPScopeStart>0:0:0:0:0:0:0:1</IPScopeStart>
<IPScopeEnd>0:0:0:0:0:0:0:1</IPScopeEnd>
<IPReservations dyn_lists="IPReservation 0"/>
</DHCPv6Server>

Why is the loopback address the DHCP scope?

While it is commendable that Parallels tries to build IPv6 support into its software, this design and implementation could still use a bit of work. With this setup, my OSX Host's IPv6 connectivity is broken, even with Parallels NOT running. As APNIC has already run out of its available supply of unallocated IPv4 space and the other RIRs will follow shortly, this issue could use a bit of attention.

Best regards,

Alex
 
RobinDaugherty@mac.com thanks for the solution. This problem manifested itself on my machine in slowness when using Facebook's Oauth on an application that I'm working on. It has been driving me nuts for over a week. When trying to connect to graph.facebook.com my system was trying to resolve 2a03:2880:2110:3f04:face:b00c::1... and that is what tipped me off that it was some sort of ipv6 shenanigans and thats what ultimately led me to this thread.

Anyway, your solution worked great. :-)

- Francois
 
Back
Top