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
 
hi

Thank you for reporting issue with routing, it is reall important and should be addressed.

what about
Depricated addresses
Parallels configures the IPv6 addresses ::0.0.0.1 and ::0.0.0.2 on vnic0 and vnic1.
Where did you see this? I don't see where these addresses are on vnics.

and the things you described about network.xml are internal and don't affect anything.
 
Thank you for reporting issue with routing, it is reall important and should be addressed.

Investigation shown, that this occurs only if Parallels Adapters are configured to be shown in System Preferences.

Please send a problem report (menu of Parallels Desktop Help -> Report a Problem) if it is not your case and post here its number
 
why would you want to have ipv6 being ON ??
I very muchdoubt that your Mac has an ipv6 address.
so, what's tha point ??
 
why would you want to have ipv6 being ON ??
I very muchdoubt that your Mac has an ipv6 address.
so, what's tha point ??

IPv6 is on per default on Mac OSX and on Parallels.

I have the same issue like Djinah, sometimes my Mac doesn't install the new IPv6 default route for my en0/1 and keeps a default route to vnic0. I manually delete the default route to vnic0 to get IPv6 internet access.

I understand that for a working IPv6 setup a router advertisement daemon and a DHCPv6 server are needed, but the downside is, that the Mac receives this packets also on its vnic0 interface and acts as a client then installing the default route for this interface. The only solution i now would be dropping all incoming ICMPv6 Router-advertisements packets (ICMPv6 Code 134), so the Mac never knows that there is a router on this interface. I don't know if this can be done by Parallels daemons or if it has to happen on the Mac side (ip6fw).

Another mistake in Parallels IPv6:
vnic0 and vnic1 use the fec0::/10 prefix for addressing. This prefix is deprecated with RFC 3879! Please use the Unique-local prefix fc00::/7 instead!

My vnics are not shown in the System Preferences.

Parallels Build 6.0.11994 (german version)
 
IPv6 is on per default on Mac OSX and on Parallels.

all very well, but what's the point in keeping IPv6 ON on your Mac ??
I assume yr local network/router is IPv4, so you don't need IPv6 being ON.
in other words: turn it OFF and see what happens.
you would not be the first having strange network issues, just because IPv6 is ON.
 
all very well, but what's the point in keeping IPv6 ON on your Mac ??
I assume yr local network/router is IPv4, so you don't need IPv6 being ON.
in other words: turn it OFF and see what happens.
you would not be the first having strange network issues, just because IPv6 is ON.

And you assume wrong. I won't turn IPv6 off, I have IPv6 access at my home networks and at my company's network (we are network consulter ;) ) so I know IPv6 as we are deploying and teaching it at our customers...
 
Last edited:
I have the same issue like Djinah, sometimes my Mac doesn't install the new IPv6 default route for my en0/1 and keeps a default route to vnic0. I manually delete the default route to vnic0 to get IPv6 internet access.

My vnics are not shown in the System Preferences.
It is strange, because I don't see how this can happen at least on 10.6.7..

Could you please send a problem report?
 
Hi,

Firstly, my mac has IPv4 and IPv6 connectivity, both in the office and at home. Frankly, with IPv4 depletion around the corner (and already a month in the past in the Asia-Pacific region), anyone who isn't working on deploying IPv6 is going to have some real problems soon.

Anyway, to answer some questions:

I saw 0.0.0.1 and 0.0.0.2 configured on the interfaces, in the ifconfig output.

My problems went away after I deleted the interfaces using 'prlsrvctl net del Shared/HostOnly'

When I have some time I'll see about putting them back and try to recreate the situation.

Alex
 
well now, aren't we all connected to internet through a router ??
this router has NAT and converts ouside ip-adddresses to local ip-adresses.
so, if you connect to an outside IPv6 adddress, you can still uses this locally as an IPv4-adres.
provided the router can handle IPv6 and translate them to IPv4.
 
@Fredv:

At home my IPv4 is NATed. My IPv6 is native, no translation or tunneling going on, I have a /48 at home.

At work there is no NAT, both IPv4 and IPv6 are fully native.

Let's get back to the issue at hand, shall we?

Alex
 
Hello,

Did you have already an answer for the problem you reported about Ipv6 by Parallels?

We have also a network problem with Parallels v6, latest build.

We use Parallels on an iMac. The user of the iMac logs in as a OD network user on a Snow Leopard server, with his home folder on an AFP Share on the server. The login procedure is mostly blocked after installing Parallels! No problem when we log in using a local user account.

We have created a work around:

There is a LaunchDaemon (com.parallels.launchdaemon.plist) that starts the network virtual network interfaces during boot, executed as Root. We have disabled this LaunchDaemon by moving it out of the LaunchDaemon folder. Now, if we need to run Parallels we will start this LaunchDaemon manually using a applescript that starts the Daemon. (do shell script "launchctl load /new_path/to/launchdaemon.plist" user name "local_administrator" password "mypassword" with administrator privileges)

At this moment we can only use Parallels during the time we need it to run a windows program. The network performance is very bad, also other users on the network have problems. Because off that we need to disable the network interfaces again after using parallels. We do this by stopping the LaunchDaemon using an other applescript. (do shell script "launchctl unload /new_path/to/launchdaemon.plist" user name "local_administrator" password "mypassword" with administrator privileges)


On the iMac we run OS X version 10.6.7. On the server runs SLS X 10.6.8.

The iMac has a permanent Ip4 address. On the SLS is running a DNS server. On a router is running a DHCP server.

Is it possible that our problems are also addressed to the reported IPv6 issue?
We know that Parallels has changed the way it handles virtual network interfaces in v6.

On another place we use v5 of Parallels also on a SLS with one difference that this user is a mobile home user and there are no problems, but we want to upgrade (upgrade is already bought)
 
Hi Peter,

Can you show the output of:

ifconfig -a

netstat -rn

When the parallels interfaces are loaded?

Alex
 
Is it possible that our problems are also addressed to the reported IPv6 issue?
We know that Parallels has changed the way it handles virtual network interfaces in v6.

On another place we use v5 of Parallels also on a SLS with one difference that this user is a mobile home user and there are no problems, but we want to upgrade (upgrade is already bought)

Hello Peter,
yes, it is likely related with IPv6, because it is the main networking difference between v5 and v6.

Unfortunately it is not possible to disable IPv6 support in the current version of Parallels Desktop. As a workaround I can suggest to try to use Bridged networking (to default adater) and disable shared and host-only networkings in Parallels.

To disable Shared and Host-Only, execute the following two commands in /Application/Utilities/Terminal

sudo prlsrvctl net del Shared
sudo prlsrvctl net del Host-Only

note: it is possible to restore them back in the Parallels Gui, menu Parallels Desktop -> Preferences -> Adanced -> Change Network Settings -> Restore Default

PS: and the ouput of the commands by Alex in the message above - netstat -nr and ifconfig -a - is greatly appreciated
 
is this problem solved in version 7?

Hi, the problem you described could be conencted with IPv6 and could be not. It is impossible to say anything about your case without information we request few posts above..
 
information

Hello,

Here is the requested information:


Last login: Sat Sep 24 14:01:24 on ttys001
iMac-01:~ jeu$ ifconfig -a
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
inet 127.0.0.1 netmask 0xff000000
inet6 ::1 prefixlen 128
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1
gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
stf0: flags=0<> mtu 1280
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether c8:2a:14:1f:56:38
inet6 fe80::ca2a:14ff:fe1f:5638%en0 prefixlen 64 scopeid 0x4
inet 192.168.175.51 netmask 0xffffff00 broadcast 192.168.175.255
media: autoselect (1000baseT <full-duplex,flow-control>)
status: active
fw0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 4078
lladdr c8:2a:14:ff:fe:85:8d:7a
media: autoselect <full-duplex>
status: inactive
en1: flags=8823<UP,BROADCAST,SMART,SIMPLEX,MULTICAST> mtu 1500
ether 10:9a:dd:a5:7b:f8
media: autoselect (<unknown type>)
status: inactive
vnic0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether 00:1c:42:00:00:08
inet6 fe80::21c:42ff:fe00:8%vnic0 prefixlen 64 scopeid 0x7
inet6 fec0:0:0:fea9::2 prefixlen 64
inet 10.211.55.2 netmask 0xffffff00 broadcast 10.211.55.255
media: autoselect
status: active
vnic1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether 00:1c:42:00:00:09
inet6 fe80::21c:42ff:fe00:9%vnic1 prefixlen 64 scopeid 0x8
inet6 fec0:0:0:feaa::2 prefixlen 64
inet 10.37.129.2 netmask 0xffffff00 broadcast 10.37.129.255
media: autoselect
status: active
iMac-01:~ jeu$ netstat -rn
Routing tables

Internet:
Destination Gateway Flags Refs Use Netif Expire
default 192.168.175.1 UGSc 34 0 en0
default link#7 UCSI 0 0 vnic0
default link#8 UCSI 0 0 vnic1
10.37.129/24 link#8 UCS 0 0 vnic1
10.37.129.2 127.0.0.1 UHS 0 0 lo0
10.211.55/24 link#7 UCS 0 0 vnic0
10.211.55.2 127.0.0.1 UHS 0 0 lo0
127 127.0.0.1 UCS 0 0 lo0
127.0.0.1 127.0.0.1 UH 0 135 lo0
169.254 link#4 UCS 0 0 en0
192.168.175 link#4 UCS 5 0 en0
192.168.175.1 0:17:c5:79:71:c UHLWI 4 0 en0 1130
192.168.175.11 10:9a:dd:60:c8:2d UHLWI 17 8597 en0 1129
192.168.175.51 127.0.0.1 UHS 0 3 lo0
192.168.175.255 ff:ff:ff:ff:ff:ff UHLWbI 0 2 en0

Internet6:
Destination Gateway Flags Netif Expire
::1 ::1 UH lo0
fe80::%lo0/64 fe80::1%lo0 Uc lo0
fe80::1%lo0 link#1 UHL lo0
fe80::%en0/64 link#4 UC en0
fe80::129a:ddff:fe60:c82d%en0 10:9a:dd:60:c8:2d UHLW en0
fe80::ca2a:14ff:fe1f:5638%en0 c8:2a:14:1f:56:38 UHL lo0
fe80::%vnic0/64 link#7 UC vnic0
fe80::21c:42ff:fe00:8%vnic0 0:1c:42:0:0:8 UHL lo0
fe80::%vnic1/64 link#8 UC vnic1
fe80::21c:42ff:fe00:9%vnic1 0:1c:42:0:0:9 UHL lo0
fec0:0:0:fea9::/64 link#7 UC vnic0
fec0:0:0:fea9::2 0:1c:42:0:0:8 UHL lo0
fec0:0:0:feaa::/64 link#8 UC vnic1
fec0:0:0:feaa::2 0:1c:42:0:0:9 UHL lo0
ff01::/32 ::1 Um lo0
ff02::/32 ::1 UmC lo0
ff02::/32 link#4 UmC en0
ff02::/32 link#7 UmC vnic0
ff02::/32 link#8 UmC vnic1
iMac-01:~ jeu$


Peter Spaan
 
Hello,

Here is the requested information:

Hi,
In the currently available build of paralells 7 it is possible to disable IPv6 and this should fix the problem.

In the next upcoming updated (I can't say any date though), the problem should not appear without any additional actions from user.
 
version 7

thank you for your information

I have also bought version 6 couple months ago but did not install because of the problem we examine.
I have on my work exactly the same situation as were we discovered the IP6 problem by another client of me?

How can i get instead of version 6 a good working version 7 without paying the amount for the upgrade?
And also my other client can he get also rebate for version 7? He has make a workaround with many IT cost of another firm!!!!

Peter Spaan
 
Finally a solution

I find this lack of response completely unacceptable. I will not be upgrading from Parallels 6 until this IPv6 problem is resolved. Being able to disable IPv6 in Parallels 7 is not an answer.

The problem is that Parallels is advertising a route to the Internet via IPv6, when it actually has no route to the Internet.

Disabling Shared and Host-Only networking in Parallels preferences does not remove the vnic0 and vnic1 interfaces. Disabling IPv6 does not remove the IPv6 addresses from the interfaces. And the interfaces can't be removed using ifconfig. However, I found an answer by experimenting with commands I found in Parallels 4 documentation.

(Keep in mind that you must use Bridged networking and disabled Shared and Host-Only networking in Parallels Desktop preferences for this to work.)

prlsrvctl net list
Will give you a list of all interfaces. My example:

Network ID Type Bound To
Shared shared vnic0
HostOnly host-only vnic1
Ethernet (en0) bridged en0
Wi-Fi (en1) bridged en1
vnic0 (vnic0) bridged vnic0
vnic1 (vnic1) bridged vnic1
Default bridged FF:FF:FF:FF:FF:FF

To remove them, use the following commands:
prlsrvctl net del "HostOnly"
prlsrvctl net del "Shared"
prlsrvctl net del "vnic0 (vnic0)"
prlsrvctl net del "vnic1 (vnic1)"

And connecting to IPv6+IPv4 hosts will finally work!
 
Last edited:
Back
Top