Hi.
When I connect my Macbook Pro 2013 to my iMac 2011 with a thunderbolt cable, networking works fine between the two Macs. Normally, Mavericks uses a "Thunderbolt Bridge" device, where both thunderbolt ports are bundled into. Unfortunately, VM-Ware Fusion doesn't recognize this Mavericks bridge device as network adapter. As soon as I use the single thunderbolt network devices, Fusion can see them, but I loose the bridging ability and have to set up a dedicated network for the thunderbolt connection, very unconvenient 🙂
Any suggestions where to tweak vmx files or similar to get Fusion to recognize the bridge device?
Thanks in advance.
Hi MrNane,
Welcome to the community. Thanks for reporting this. Currently, VM could only bridged to ethernet interface or wi-fi. I will forward this question to our dev and see if he could do something.
Hi MrNane,
You could try NAT networking if you want your VM to use thunderbolt cable on your Mac.
On your Mac, open System Preferences -> Network. Click the gear in the lower left, then select "Set Service Order...", drag Thunderbolt Bridge to the top. Then set up your VM to NAT, you could use the thunderbolt bridge now.
Hi nancyz,
thank you, this seems to work for now, even though all NAT configurations in the network adapter selection are shown disabled/inactive (non coloured ball at the left), and I didn't try this yet because of this.
Now, I can't really find the port forwarding options in VM-Ware Fusion Pro, where are they hidden, can you please tell me or point me to the manual? 🙂
Will there be an update for bridged connection over the thunderbolt bridge shortly?
Thanks again.
Update: When my VM (Windows 8.1 64-bit) is running, the little ball left of my NAT vmnet2 (custom) is coloured in red. Networking is still available, though...
VMWare doesn't virtualize Thunderbolt devices yet...and they don't comment on upcoming features. But it's a good item to put in a request for 🙂
Hi.
Sure, but I only need the fast network connection between my two Macs at the moment, no need for me to have native access to the thunderbolt devices out of any VM 🙂
Concerning the networking I found a solution for my needs right now, maybe anybody will find this configuration helpful, so I will describe it here (use at your own risk, please)
1.) Unassign the Thunderbolt networking ports from the Thunderbolt bridge device (clear the checkmarks)
2.) Add one of the Thunderbolt *ports* as a network device in OSX to the list of network devices, has to be the connected one, of course 🙂
3.) Do the same on the other Mac Computer
4.) Assign manual IP adresses to the Thunderbolt port devices on each Mac, make sure the IP-Network fits, no gateway, no dhcp
5.) Give some name to the IP addresses in your /etc/hosts preferrably on each side
6.) My configuration now is Thunderbolt-Port-2 on Macbook 192.168.225.2, Thunderbolt-Port-2 on iMac 192.168.225.1, named macpro and imac in /etc/hosts for example
7.) I can now connect via SMB by using "connect to server" in the Finder and get an really fast SMB connection (up to 5.3GBit according to iperf)
8.) The VMs can see and bridge to the Thunderbolt-Port network devices, have to try that but could use shared folders if this doesn't work
The problem with VM-Ware Fusion seems to be the bridging to OSX bridge devices, not the thunderbolt network per se.
I hope this helps somebody out for now, until VM-Ware will eventually support bridging to Bridge-Devices in OSX, will you? 😉
Have a nice Christmas and a happy new year 2014 🙂
MrNane wrote:
Hi nancyz,
thank you, this seems to work for now, even though all NAT configurations in the network adapter selection are shown disabled/inactive (non coloured ball at the left), and I didn't try this yet because of this.
But my NAT VMs worked well. Could you please upload a screenshot of your Network Preferences of your Mac and VM settings? Thanks.
Now, I can't really find the port forwarding options in VM-Ware Fusion Pro, where are they hidden, can you please tell me or point me to the manual? 🙂
Will there be an update for bridged connection over the thunderbolt bridge shortly?
Thanks again.
Hi MrNane,
You could conf port forwarding by editing nat.conf in /Library/Preferences/VMware Fusion/vmnetX, in your case, its vmnet2 folder.
So I just ran into this. VMware Fusion 6.02 combined with Mac OS X Mavericks 10.9.2.
My existing networking configuration was a bridge of the wired ethernet and both thunderbolts.
I didn't want to lose this and wanted my virtual machines to join this bridge.
Here's the solution I came up with.
btw. I upgraded to fusion 6 professional to get the 'enhanced network configuration ui', but I think it's not actually necessary.
First let me link to two posts where I found most of my information:
http://binarynature.blogspot.com/2013/09/integrate-vmware-fusion-with-gns3-on-your-mac.html
http://thornelabs.net/2013/10/18/manually-add-and-remove-vmware-fusion-virtual-adapters.html
Now, on to what I did.
We configure the VM like so (using a text editor while fusion isn't running):
Fedora.vmwarevm/Fedora 64-bit.vmx:
...
ethernet0.address = "00:50:56:XX:XX:XX"
ethernet0.addressType = "static"
ethernet0.connectionType = "custom"
ethernet0.linkStatePropagation.enable = "FALSE"
ethernet0.pciSlotNumber = "33"
ethernet0.present = "TRUE"
ethernet0.virtualDev = "e1000"
ethernet0.vnet = "vmnet2"
ethernet0.wakeOnPcktRcv = "FALSE"
Not sure how much of the above is required, but probably the "custom" and "vmnet2" are the key points.
We configure vmnet2 like so:
sudo /Applications/VMware\ Fusion.app/Contents/Library/vmnet-cfgcli vnetcfgadd VNET_2_DHCP no
sudo /Applications/VMware\ Fusion.app/Contents/Library/vmnet-cfgcli vnetcfgadd VNET_2_HOSTONLY_SUBNET 192.0.2.0
sudo /Applications/VMware\ Fusion.app/Contents/Library/vmnet-cfgcli vnetcfgadd VNET_2_HOSTONLY_NETMASK 255.255.255.0
sudo /Applications/VMware\ Fusion.app/Contents/Library/vmnet-cfgcli vnetcfgadd VNET_2_NAT no
sudo /Applications/VMware\ Fusion.app/Contents/Library/vmnet-cfgcli vnetcfgadd VNET_2_VIRTUAL_ADAPTER yes
I think the 'nat no' might be not needed. the host only lines are needed for this to work, even though the precise values don't matter, since we'll manually delete them later on.
We apply the following patch:
--- /Applications/VMware Fusion.app/Contents/Library/services.sh_
+++ /Applications/VMware Fusion.app/Contents/Library/services.sh
@@ -661,6 +661,10 @@
if retString=`"$LIBDIR/vmnet-cli" --start`; then
echo "Started network services"
+ ifconfig vmnet2 down
+ ifconfig vmnet2 inet delete
+ ifconfig bridge0 addm vmnet2
+ ifconfig vmnet2 up
else
logger -s -t "VMware Fusion 1398658" \
"Error: Unable to start the network services. Error: $retString [$?]"
@@ -682,6 +686,9 @@
--stop)
"$LIBDIR/vmware-usbarbitrator" --kill || true
+ ifconfig vmnet2 down
+ ifconfig bridge0 deletem vmnet2
+ ifconfig vmnet2 up
"$LIBDIR/vmnet-cli" --stop
vmware_stop_pidfile /var/run/vmnet-bridge.pid
-----
You'll probably have to apply it by hand, since I doubt formatting will survive the posting process.
This is probably a good point to reboot, although might not be strictly required if you did all of the above with fusion turned off.
For verification purposes, here's ifconfig output when fusion isn't running:
$ ifconfig
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
options=3<RXCSUM,TXCSUM>
inet6 ::1 prefixlen 128
inet 127.0.0.1 netmask 0xff000000
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1
nd6 options=1<PERFORMNUD>
gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
stf0: flags=0<> mtu 1280
en0: flags=8963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
options=10b<RXCSUM,TXCSUM,VLAN_HWTAGGING,AV>
ether 68:5b:35:xx:xx:xx
media: autoselect (1000baseT <full-duplex>)
status: active
en1: flags=8823<UP,BROADCAST,SMART,SIMPLEX,MULTICAST> mtu 1500
ether c8:e0:eb:xx:xx:xx
nd6 options=1<PERFORMNUD>
media: autoselect (<unknown type>)
status: inactive
en2: flags=8963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
options=60<TSO4,TSO6>
ether 32:00:13:xx:xx:xx
media: autoselect <full-duplex>
status: inactive
en3: flags=8963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
options=60<TSO4,TSO6>
ether 32:00:13:xx:xx:xx
media: autoselect <full-duplex>
status: inactive
bridge0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=3<RXCSUM,TXCSUM>
ether 6a:5b:35:xx:xx:xx
inet6 fe80::xxxx%bridge0 prefixlen 64 scopeid 0x8
inet 192.168.1.44 netmask 0xffffff00 broadcast 192.168.1.255
inet6 2001:xxxx prefixlen 64 autoconf
inet6 2001:xxxx prefixlen 64 autoconf temporary
Configuration:
id 0:0:0:0:0:0 priority 0 hellotime 0 fwddelay 0
maxage 0 holdcnt 0 proto stp maxaddr 100 timeout 1200
root id 0:0:0:0:0:0 priority 0 ifcost 0 port 0
ipfilter disabled flags 0x2
member: en3 flags=3<LEARNING,DISCOVER>
ifmaxaddr 0 port 7 priority 0 path cost 0
member: en2 flags=3<LEARNING,DISCOVER>
ifmaxaddr 0 port 6 priority 0 path cost 0
member: en0 flags=3<LEARNING,DISCOVER>
ifmaxaddr 0 port 4 priority 0 path cost 0
nd6 options=1<PERFORMNUD>
media: autoselect
status: active
p2p0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> mtu 2304
ether 0a:e0:eb:xx:xx:xx
media: autoselect
status: inactive
and when fusion is running:
$ ifconfig
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
options=3<RXCSUM,TXCSUM>
inet6 ::1 prefixlen 128
inet 127.0.0.1 netmask 0xff000000
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1
nd6 options=1<PERFORMNUD>
gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
stf0: flags=0<> mtu 1280
en0: flags=8963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
options=10b<RXCSUM,TXCSUM,VLAN_HWTAGGING,AV>
ether 68:5b:35:xx:xx:xx
media: autoselect (1000baseT <full-duplex>)
status: active
en1: flags=8823<UP,BROADCAST,SMART,SIMPLEX,MULTICAST> mtu 1500
ether c8:e0:eb:xx:xx:xx
nd6 options=1<PERFORMNUD>
media: autoselect (<unknown type>)
status: inactive
en2: flags=8963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
options=60<TSO4,TSO6>
ether 32:00:13:xx:xx:xx
media: autoselect <full-duplex>
status: inactive
en3: flags=8963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
options=60<TSO4,TSO6>
ether 32:00:13:xx:xx:xx
media: autoselect <full-duplex>
status: inactive
bridge0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=3<RXCSUM,TXCSUM>
ether 6a:5b:35:xx:xx:xx
inet6 fe80::xxxx%bridge0 prefixlen 64 scopeid 0x8
inet 192.168.1.44 netmask 0xffffff00 broadcast 192.168.1.255
inet6 2001:xxxx prefixlen 64 autoconf
inet6 2001:xxxx prefixlen 64 autoconf temporary
Configuration:
id 0:0:0:0:0:0 priority 0 hellotime 0 fwddelay 0
maxage 0 holdcnt 0 proto stp maxaddr 100 timeout 1200
root id 0:0:0:0:0:smileylaugh: priority 0 ifcost 0 port 0
ipfilter disabled flags 0x2
member: en3 flags=3<LEARNING,DISCOVER>
ifmaxaddr 0 port 7 priority 0 path cost 0
member: en2 flags=3<LEARNING,DISCOVER>
ifmaxaddr 0 port 6 priority 0 path cost 0
member: en0 flags=3<LEARNING,DISCOVER>
ifmaxaddr 0 port 4 priority 0 path cost 0
member: vmnet2 flags=3<LEARNING,DISCOVER>
ifmaxaddr 0 port 11 priority 0 path cost 0
nd6 options=1<PERFORMNUD>
media: autoselect
status: active
p2p0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> mtu 2304
ether 0a:e0:eb:xx:xx:xx
media: autoselect
status: inactive
vmnet1: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether 00:50:56:c0:00:01
inet 172.16.103.1 netmask 0xffffff00 broadcast 172.16.103.255
vmnet2: flags=8963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
ether 00:50:56:c0:00:02
vmnet8: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether 00:50:56:c0:00:08
inet 192.168.2.1 netmask 0xffffff00 broadcast 192.168.2.255
en0 is the wired ethernet
en1 is the unused wireless interface
en2/en3 are the thunderbolt ports
bridge0 is the 'Thunderbolt Bridge' (ie. bridge of en0/en2/en3, we're adding vmnet2 to it)
vmnet0 is the 'vmware auto configured bridge' switch end point (which is failing to come up here, because fusion is confused by the thunderbolt bridge I think)
vmnet1 is the 'vmware host only' switch end point
vmnet8 is the 'vmware nat' switch end point
vmnet2 is the 'custom' switch end point (created above)
This continues to work with VMWare Fusion 6.03
--- /Applications/VMware Fusion.app/Contents/Library/services.sh_ | 2014-04-22 00:57:53.000000000 -0700 |
+++ /Applications/VMware Fusion.app/Contents/Library/services.sh | 2014-04-22 00:59:23.000000000 -0700 |
@@ -661,6 +661,11 @@
if retString=`"$LIBDIR/vmnet-cli" --start`; then
echo "Started network services"
+ ifconfig vmnet2 down \
+ && ifconfig vmnet2 inet delete \
+ && ifconfig bridge0 addm vmnet2 \
+ && ifconfig vmnet2 up \
+ || true
else
logger -s -t "VMware Fusion 1747349" \
"Error: Unable to start the network services. Error: $retString [$?]"
@@ -682,6 +687,10 @@
--stop)
"$LIBDIR/vmware-usbarbitrator" --kill || true
+ ifconfig vmnet2 down \
+ && ifconfig bridge0 deletem vmnet2 \
+ && ifconfig vmnet2 up \
+ || true
"$LIBDIR/vmnet-cli" --stop
vmware_stop_pidfile /var/run/vmnet-bridge.pid
Hello everybody !
Does the brigde word and E1000 virtual adapter mean that my 10Gb/s ethernet adapter will work only at one Gb/s ?
Is it the same problem with the config of similary post about Thunderbolt Bridge and VMWare-Fusion 7 ?
Kind regards