After a lot of study of "VM@Work Tokamak.pdf" and trial, I discovered that I have to use "wizard" when I execute "sudo ./tokamak.sh --modify", which is something not documented, to add additional vmnet. Here below is the terminal output:
BMBP:tokamak200 boyce$ sudo ./tokamak.sh --modify
Password:
You have already setup networking.
Would you like to skip networking setup and keep your old settings as they are?
(yes/no)
no n
Do you want networking for your virtual machines? (yes/no/help)
yes y
Would you prefer to modify your existing networking configuration using the
wizard or the editor? (wizard/editor/help)
editor w
The following bridged networks have been defined:
. vmnet0 is bridged to en0
Do you wish to configure another bridged network? (yes/no)
no y
Configuring a bridged network for vmnet2.
Your computer has multiple ethernet network interfaces available: en2, en1.
Which one do you want to bridge to vmnet2?
en0 en1
The following bridged networks have been defined:
. vmnet0 is bridged to en0
. vmnet2 is bridged to en1
Do you wish to configure another bridged network? (yes/no)
no y
Configuring a bridged network for vmnet3.
The following bridged networks have been defined:
. vmnet0 is bridged to en0
. vmnet2 is bridged to en1
. vmnet3 is bridged to en2
All your ethernet interfaces are already bridged.
Do you want to be able to use NAT networking in your virtual machines? (yes/no)
yes n
Removing a NAT network for vmnet8.
This program previously created the directory /Library/Application
Support/VMware Fusion/vmnet8/, and was about to remove it. Since there are files
in that directory that this program did not create, it will not be removed.
Do you want to be able to use host-only networking in your virtual machines?
no n
Removing a host-only network for vmnet1.
VM@Work Tokamak 2.0.0: Display settings
The following virtual networks have been defined:
. vmnet0 is bridged to en0
. vmnet2 is bridged to en1
. vmnet3 is bridged to en2
VM@Work Tokamak 2.0.0: Extended network scripting - Dave Parsons
Bridged networking on vmnet0 using en0 is running
Bridged networking on vmnet2 using en1 is running
Bridged networking on vmnet3 using en2 is running
However, as Dave has ever mentioned that it is not good to delete vmnet1 and vmnet8, so I run "sudo ./tokamak.sh --install" again.
BMBP:tokamak200 boyce$ sudo ./tokamak.sh --install
VM@Work Tokamak 2.0.0: Installer started
VM@Work Tokamak 2.0.0: Stop daemons and kexts
VM@Work Tokamak 2.0.0: Create backup folders
VM@Work Tokamak 2.0.0: Save original files
VM@Work Tokamak 2.0.0: Set boot script
You have already setup networking.
Would you like to skip networking setup and keep your old settings as they are?
(yes/no)
no
Do you want networking for your virtual machines? (yes/no/help)
yes
Would you prefer to modify your existing networking configuration using the
wizard or the editor? (wizard/editor/help)
editor
The following bridged networks have been defined:
. vmnet0 is bridged to en0
. vmnet2 is bridged to en1
. vmnet3 is bridged to en2
All your ethernet interfaces are already bridged.
Do you want to be able to use NAT networking in your virtual machines? (yes/no)
yes
Configuring a NAT network for vmnet8.
Do you want this program to probe for an unused private subnet? (yes/no/help)
yes
'ping' -q -t 10 172.16.184.1 > /dev/null status = 2
The subnet 172.16.184.0/255.255.255.0 appears to be unused.
The following NAT networks have been defined:
. vmnet8 is a NAT network on private subnet 172.16.184.0.
Do you wish to configure another NAT network? (yes/no)
no
Do you want to be able to use host-only networking in your virtual machines?
yes
Configuring a host-only network for vmnet1.
Do you want this program to probe for an unused private subnet? (yes/no/help)
yes
'ping' -q -t 10 172.16.125.1 > /dev/null status = 2
The subnet 172.16.125.0/255.255.255.0 appears to be unused.
The following host-only networks have been defined:
. vmnet1 is a host-only network on private subnet 172.16.125.0.
Do you wish to configure another host-only network? (yes/no)
no
VM@Work Tokamak 2.0.0: Display settings
The following virtual networks have been defined:
. vmnet0 is bridged to en0
. vmnet1 is a host-only network on private subnet 172.16.125.0.
. vmnet2 is bridged to en1
. vmnet3 is bridged to en2
. vmnet8 is a NAT network on private subnet 172.16.184.0.
VM@Work Tokamak 2.0.0: Extended network scripting - Dave Parsons
Bridged networking on vmnet0 using en0 is running
Host-only/NAT networking on vmnet1 using 172.16.125.1/255.255.255.0 is running
DHCP server on vmnet1 is running
Bridged networking on vmnet2 using en1 is running
Bridged networking on vmnet3 using en2 is running
Host-only/NAT networking on vmnet8 using 172.16.184.1/255.255.255.0 is running
DHCP server on vmnet8 is running
NAT networking on vmnet8 is running
VM@Work Tokamak 2.0.0: Installer completed
BMBP:tokamak200 boyce$ ifconfig
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1
inet 127.0.0.1 netmask 0xff000000
inet6 ::1 prefixlen 128
gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
stf0: flags=0 mtu 1280
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether 00:25:4b:d2:96:a0
media: autoselect status: inactive
supported media: none autoselect 10baseT/UTP <half-duplex> 10baseT/UTP <full-duplex> 10baseT/UTP <full-duplex,flow-control> 10baseT/UTP <full-duplex,hw-loopback> 100baseTX <half-duplex> 100baseTX <full-duplex> 100baseTX <full-duplex,flow-control> 100baseTX <full-duplex,hw-loopback> 1000baseT <full-duplex> 1000baseT <full-duplex,flow-control> 1000baseT <full-duplex,hw-loopback>
en2: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether 00:25:00:ec:08:f3
media: autoselect (<unknown type>) status: inactive
supported media: none autoselect 10baseT/UTP <half-duplex> 10baseT/UTP <full-duplex> 10baseT/UTP <full-duplex,flow-control> 100baseTX <half-duplex> 100baseTX <full-duplex> 100baseTX <full-duplex,flow-control>
fw0: flags=8822<BROADCAST,SMART,SIMPLEX,MULTICAST> mtu 4078
lladdr 00:25:4b:ff:fe:d2:96:a0
media: autoselect <full-duplex> status: inactive
supported media: autoselect <full-duplex>
en1: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
inet6 fe80::226:8ff:fedd:d65e%en1 prefixlen 64 scopeid 0x7
inet 192.168.1.10 netmask 0xffffff00 broadcast 192.168.1.255
ether 00:26:08:dd:d6:5e
media: autoselect status: active
supported media: autoselect
vmnet8: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
inet 172.16.184.1 netmask 0xffffff00 broadcast 172.16.184.255
ether 00:50:56:c0:00:08
vmnet1: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
inet 172.16.125.1 netmask 0xffffff00 broadcast 172.16.125.255
ether 00:50:56:c0:00:01
After that, I started to use VMX Extras to modify the VMX file. Originally I did not pay attention that seting is the key point to map vmnet to any ethernet specified in VMX file. So, I was failed originally. After some trials, I found that when I set , VMware cannot recognize . Only when I set it back to "custom", then it works. Here below is ethernet portion of my working VMX by adding and mapping additional two ethernet interface.
ethernet0.addressType = "generated"
ethernet0.connectionType = "custom"
ethernet0.generatedAddress = "00:0c:29:e8:cf:19"
ethernet0.generatedAddressOffset = "0"
ethernet0.linkStatePropagation.enable = "TRUE"
ethernet0.pciSlotNumber = "33"
ethernet0.present = "TRUE"
ethernet0.vnet = "VMnet0"
ethernet0.wakeOnPcktRcv = "FALSE"
ethernet1.addressType = "generated"
ethernet1.connectionType = "custom"
ethernet1.generatedAddress = "00:0c:29:e8:cf:23"
ethernet1.generatedAddressOffset = "10"
ethernet1.pciSlotNumber = "37"
ethernet1.present = "TRUE"
ethernet1.vnet = "VMnet2"
ethernet2.addressType = "generated"
ethernet2.connectionType = "custom"
ethernet2.generatedAddress = "00:0c:29:e8:cf:2d"
ethernet2.generatedAddressOffset = "20"
ethernet2.pciSlotNumber = "38"
ethernet2.present = "TRUE"
ethernet2.vnet = "VMnet3"
FYI..... en0 = Onboard Ethernet port, en1 = Airport Wireless port, en2 = Apple USB-Ethernet port
So, now I can feel free to connect my MacBook Pro VMWare image to three different physical subnets.