AndrewBurns
Contributor
Contributor

Fusion 3.1.1 on OSX 10.6.8 does not honor custom vnet

I have been attempting to setup a virtual lab for testing some RouterOS configs and have been banging my head over this as everything i have read says this should work.

My intent is to add multiple vmnet2-4 host-only networks that are independantly isolated from each other.  In my testing I have only tried to add vmnet2 without success.

I have added the following lines to /Library/Application Support/VMware Fusion/networking

answer VNET_2_DHCP no
answer VNET_2_VIRTUAL_ADAPTER yes

i then do a sudo boot.sh --restart and get a (non descript) error message:  Failed to enable hostonly virtual adapter on vmnet2

So I change my network file to:

answer VNET_2_DHCP yes

answer VNET_2_HOSTONLY_NETMASK 255.255.255.0

answer VNET_2_HOSTONLY_SUBNET 192.168.18.0

answer VNET_2_VIRTUAL_ADAPTER yes

Which allows the boot restart to succeed.  My VMX ethernet lines:

ethernet0.addressType = "generated"

ethernet0.connectionType = "custom"

ethernet0.generatedAddress = "00:0c:29:6e:cb:47"

ethernet0.generatedAddressOffset = "0"

ethernet0.linkStatePropagation.enable = "FALSE"

ethernet0.pciSlotNumber = "33"

ethernet0.present = "TRUE"

ethernet0.vnet = "VMnet2"

ethernet0.wakeOnPcktRcv = "FALSE"

In the UI it shows the NIC as Custom(bridged) and does indeed pull an IP from the DHCP on my bridged network.  Everything I have read states that this *should* work.  Am I missing something here?  For those that missed it this is Snow Leopard (not lion) with the newest Fusion 3.1.3.

0 Kudos
6 Replies
WoodyZ
Immortal
Immortal

Have  look at my reply: Re: Custom Virtual Networks under 3.1.1

0 Kudos
AndrewBurns
Contributor
Contributor

WoodyZ, thank you for the indepth information.  However this did not resolve my problems.  The steps I took were:

  1. Using your script to shutdown / open the file I reverted my networking file to a backup I had made before I started all of this
  2. Used your script again to add the VMNET_2 section to the very BOTTOM of the file
    1. The cat then showed this being moved up in numerical order
  3. Changed the ISO image path to point to the DSL ISO.
  4. At this point your instructions technically worked; HOWEVER the VMs were still pulling an IP from the DHCP server on my bridged network so while I could assign static IPs and ping each other (your instructions) this did not solve my problem as they were obivously not isolated to VMNET2.

I also tried rebooting to see if that would have any affect, which it did not.

For sanity here is the entire contents of my networking file as it sits now:

VERSION=1,0
answer VNET_1_DHCP yes
answer VNET_1_DHCP_CFG_HASH 9C72EE794DD1E3078CDC18E475AC7698A97BE507
answer VNET_1_HOSTONLY_NETMASK 255.255.255.0
answer VNET_1_HOSTONLY_SUBNET 172.16.55.0
answer VNET_1_VIRTUAL_ADAPTER yes
answer VNET_2_DHCP no
answer VNET_2_HOSTONLY_NETMASK 255.255.255.0
answer VNET_2_HOSTONLY_SUBNET 10.20.30.0
answer VNET_2_VIRTUAL_ADAPTER no
answer VNET_8_DHCP yes
answer VNET_8_DHCP_CFG_HASH 9668F15D1C353F6888ADA525D0EA9DBD76A584F5
answer VNET_8_HOSTONLY_NETMASK 255.255.255.0
answer VNET_8_HOSTONLY_SUBNET 192.168.82.0
answer VNET_8_NAT yes
answer VNET_8_VIRTUAL_ADAPTER yes
add_bridge_mapping en0 2
add_bridge_mapping en1 3

This is very strange as the VMs show the Custom adapter description if I hover over the network connection, it is just like they refuse to use it.

0 Kudos
WoodyZ
Immortal
Immortal

Just to be sure, for your testing you use the Virtual Machine(s) in the Custom_Host_Only_Test_Virtual_Machines.zip file from the link previously provided, correct?  Also you only added the VMNET_2 section and pointed to the dsl-4.4.10.iso file and did nothing else, correct?

You did not go into the Virtual Machine's Network setting and touch anything did you as this will break the custom modifications.

Just as a stab in the dark, what happens if to temporarily remove the following two lines from the networking file?

add_bridge_mapping en0 2
add_bridge_mapping en1 3
0 Kudos
AndrewBurns
Contributor
Contributor

WoodyZ,

I redid all of the steps again, re-extracting the VMs and even moving the DSL iso into the folders so I didn't have to go into settings at all.

Removing the add_bridge_mapping lines seemed to do the trick.  I am not sure of the syntax; however after those lines were removed VMNet2 functions as expected and bridging still works.  As a side note they were not auto-readded to the networking file.

Thank you!

0 Kudos
WoodyZ
Immortal
Immortal

Removing the add_bridge_mapping lines seemed to do the trick.

I had a strong gut feeling that it was at the root of the issue however I just didn't have time to test it, hence the comment "Just as a stab in the dark..." Smiley Happy

As a side note they were not auto-readded to the networking file.

No and they shouldn't be unless you specifically bridge VMnet0 to the AirPort or Ethernet via the Network Settings GUI where it shows (Bridged).

BTW The thread I pointed you to obviously was to help someone else however you can now use the information to create/add/modify your custom VMnets, however don't forget that you cannot modify these custom VMnets via the Network Settings GUI and selecting them from there usually will break the custom settings for the selected target.  So this is something that needs to be done manually via the CLI with both VMware Fusions networking files and the .vmx configuration file for each Virtual Machine.  Also remember the status light on the Custom VMnets from the Network Settings GUI will show it as not connected even though it is.

It is very sad that VMware has not provided an proper Virtual Network Manager in VMware Fusion like is available in VMware Workstation and even the free VMware Player for Windows, albeit with VMware Player it's not installed by default in the 3.x version while it was with the 2.x version.

0 Kudos
AndrewBurns
Contributor
Contributor

I had specified the bridge in the past... so that makes sense as to why they are there.

Also I noticed that I had to have:

ethernetX.linkStatePropagation.enable = "FALSE"

as a value of TRUE would cause the vmnet to not route packets.

Thanks again!

0 Kudos