VMware Communities
A_Consultant
Contributor
Contributor

Any fix for non-working bridged IPv6 with Mac guest

I was asked to post this here with a promise that the VMware engineers will provide a solution (quote from email via VMware Support Request # 16111698005):

---

I recommend that you post your query on VMware Communities. The query will be reviewed and the resolution will be provided by the VMware engineers. Once again I apologize for the inconvenience caused.

---

Here's the problem as I reported it:

This is likely an in-depth problem that will need to be escalated to someone with IPv6 networking expertise in VMware Fusion.  Solving this issue could also lead to significant revenue for VMware.

I'm a consultant working under contract for an organization that wants to virtualize a significant number of OS X 10.8.5 systems.  Initially, the host systems will also be running OS 10.8.5 but, ultimately, will be updated to something newer.

Everything is working well on VMware except for bridging of multi-homed, manually-defined IPv6 addresses.  However, this is a "must have" requirement for this project.  It should also be noted that Parallels does not have this problem.

I am in need of a solution where the following tests won't fail ...

From external test system 1:

- ping6 -v x:y:z:1::99

- ping6 -v x:y:z:4::99

- ping6 -v x:y:z:5::99

From external test system 2:

- ping6 -v x:y:z:1::99

- ping6 -v x:y:z:4::99

- ping6 -v x:y:z:5::99

... in the following configuration ...

-----

Note that we only test and care about manually configured addresses.  The IPv6 x:y:z:? prefix indicates a publicly routable prefix (e.g., 2001:abcd:1234:?).

The virtual host is running OS X 10.8.5 and has the following host-native networking configuration:

- 1 ethernet interface (en0) configured with 3 VLANs: VLAN 1, VLAN 4 and VLAN 5

  + VLAN 1 (on en0):

    * IPv4 addr: 172.16.1.10

    * IPv4 router & DNS: 172.16.1.1

    * IPv4 Subnet mask: 255.255.255.0  (LAN1 is 172.16.16.0/24)

    * IPv6 addr is x:y:z:1::10  (LAN1 is x:y:z:1::/64)

    * IPv6 router & DNS are x:y:z:1::1

  + VLAN 4 (on en0):

    * IPv4: OFF

    * IPv6 addr: x:y:z:4::10  (LAN4 is x:y:z:4::/64)

    * IPv6 router and DNS are x:y:z:4::1

  + VLAN 5 (on en0):

    * IPv4: OFF

    * IPv6 addr: x:y:z:5::10  (LAN5 is x:y:z:5::/64)

    * IPv6 router and DNS are x:y:z:5::1

On the above-configured virtual host, a virtualized system that's running OS X 10.8.5 in VMware Fusion 7.1.3 (3204469, dated 2015-11-2) that has the following network configuration:

- 3 VMware network adapters defined:

  + adapter 1: bridged to VLAN 1 (en0)

  + adapter 2: bridged to VLAN 4 (en1)

  + adapter 3: bridged to VLAN 5 (en2)

- virtualized system's networking configured as:

  + LAN 1 (on en0):

    * IPv4 addr: 172.16.1.99

    * IPv4 router and DNS are 172.16.1.1

    * IPv4 Subnet mask: 255.255.255.0  (LAN1 is 172.16.16.0/24)

    * IPv6 addr: x:y:z:1::99  (LAN1 is x:y:z:1::/64)

    * IPv6 router and DNS are x:y:z:1::1

  + LAN 4 (on en1):

    * IPv4: OFF

    * IPv6 addr: x:y:z:4::99  (LAN4 is x:y:z:4::/64)

    * IPv6 router and DNS are x:y:z:4::1

  + LAN 5 (on en2):

    * IPv4: OFF

    * IPv6 addr: x:y:z:5::99  (LAN5 is x:y:z:5::/64)

    * IPv6 router and DNS are x:y:z:5::1

External test system 1 is running OS X 10.8.5 and has the following networking configuration:

- 1 ethernet interface (en0) configured with 3 VLANs: VLAN 1, VLAN 4 and VLAN 5

  + VLAN 1 (on en0):

    * IPv4 addr: 172.16.1.100

    * IPv4 router and DNS are 172.16.1.1

    * IPv4 Subnet mask: 255.255.255.0  (LAN1 is 172.16.16.0/24)

    * IPv6 addr: x:y:z:1::100  (LAN1 is x:y:z:1::/64)

    * IPv6 router and DNS are x:y:z:1::1

  + VLAN 4 (on en0):

    * IPv4: OFF

    * IPv6 addr: x:y:z:4::100  (LAN4 is x:y:z:4::/64)

    * IPv6 router and DNS are x:y:z:4::1

  + VLAN 5 (on en0):

    * IPv4: OFF

    * IPv6 addr: x:y:z:5::100  (LAN5 is x:y:z:5::/64)

    * IPv6 router and DNS are x:y:z:5::1

External test system 2 is running OS X 10.8.5 and has the following networking configuration:

- 1 ethernet interface (en0) configured as:

    * IPv4 addr: 172.16.1.200

    * IPv4 router and DNS are 172.16.1.1

    * IPv4 Subnet mask: 255.255.255.0  (LAN1 is 172.16.16.0/24)

    * IPv6 addr: x:y:z:1::200  (LAN1 is x:y:z:1::/64)

    * IPv6 router and DNS are x:y:z:1::1

Obviously, this setup also requires a suitable switch with the applicable VLAN configuration, a router configured to perform VLAN-to-VLAN routing and a DNS.

-----

Test-setup comments ...

---

I'd guess that this setup would also fail without the use of VLANs -- i.e., with either mixed subnets on the same "wire" or with different NICs for different LANs on the virtual host.  I did run a "quick 'n dirty" test using an additional Thunderbolt to Ethernet adapter and it did seem to fail the same way, but that test was not thorough.  Still, it might be easier to test a multiple-NIC virtual host first, with the hope that that could prevent having to setup a VLAN environment, if you don't already have it.  It's relatively easy for me to test any proposed solution in the VLAN setup I have.

It's also true that the same kinds of failures will be seen when there are only 2 IPv6 addresses/LANs configured, instead of 3, but my testing was for the most common real scenario which requires 3-LAN/3-IP support.

Failure details ...

---

In reality, if the routing is working correctly, both external test systems should always yield the same results.

What we're seeing is completely "flakey" results in that "ping6 -v" nearly always fails with "Destination Host Unreachable" and that the x:y:z:?::99 addresses are not in the router's NDP table.

I say "nearly always" because sometimes 1 (or rarely even 2) of the x:y:z:?::99 IPs will be "pingable"/visible but this seems to change with each reboot and/or any network configuration updates.  In addition, a non-"pingable"/non-visible x:y:z:?::99 IP will sometimes become externally "pingable"/visible after the test system's x:y:z:?::?00 IP is pinged from the virtualized system -- e.g., scenarios similar to the following occur:

- ping6 -v x:y:z:4::99 from test system 2 fails

- ping6 -v x:y:z:4::200 is run from the virtualized system and succeeds

- now ping6 -v x:y:z:4::99 from test system 2 succeeds

Speculation ...

---

(I think it's consistent that) When you look at ifconfig on the virtualized system, you'll see that the IPv6 interface that's initially "pingable" -- there's normally 1 of the 3 that'll work -- is the IP on the interface that appears first in the list of interfaces produced by ifconfig.

It seems that the bridging is somehow only passing router advertisements for one of the multi-homed, manually-configured IPv6 addresses.

If we can get this to work, I'd be happily recommending VMware for this project.  Assuming the project proceeds, it could mean significant business for VMware (my confidentiality agreement prohibits me from providing details about the project).

0 Kudos
10 Replies
nancyz
VMware Employee
VMware Employee

Hi There,

Welcome to Fusion community.

The virtual host is running OS X 10.8.5 and has the following host-native networking configuration:

- 1 ethernet interface (en0) configured with 3 VLANs: VLAN 1, VLAN 4 and VLAN 5

Do you mean you configured a truck port and let your ethernet interface plug to that port?

0 Kudos
A_Consultant
Contributor
Contributor

Re: Do you mean you configured a truck port and let your ethernet interface plug to that port?

---

Sorry, but I don't understand the question ... I don't know what a "truck port" is (but we have a sea-going container port, nearby ... and it gets lots of container trucks at the port!  #;-)).

The test system upon which VMware is running (the virtual host) has the exact networking configuration indicated ... i.e., it's an iMac and there's the normal motherboard ethernet.  There are 3 VLANs configured (as detailed) and all 3 of the VLANs are created "against" the motherboard ethernet port (OS X shows "Ethernet" as the interface that's selected when adding each of the VLANs via "Manage Virtual Interfaces" in the "Network" panel of "System Preferences").

Does that clarify?

0 Kudos
nancyz
VMware Employee
VMware Employee

sorry, A ConsultantA Consultant

Sorry, but I don't understand the question ... I don't know what a "truck port" is (but we have a sea-going container port, nearby ... and it gets lots of container trucks at the port!  #;-)).

It's typo. I wanted to say 'trunk'.

I now know your environment.Smiley Happy

0 Kudos
A_Consultant
Contributor
Contributor

Good to hear.  Never thought of that typo.  Guess my brain doesn't work at full tilt after 2 in the morning.

Let me know if there's any way I can help.

0 Kudos
nancyz
VMware Employee
VMware Employee

Hi A ConsultantA Consultant,

How about the result if add -I ,

- ping6 -v -I x:y:z:1::99?

0 Kudos
A_Consultant
Contributor
Contributor

ping6 -v -I x:y:z:1::99 is not a valid command as '-I' requires an interface.  Hoping that's what you meant (i.e., that it's not a typo and you wanted something else entirely), I ran a collection of tests and have included the results in the attached text file.


For redundency, I've also pasted the results, below (have no idea what'll happen to formatting, special characters, etc.):

---

From system that has IPv6: x:y:z:1::200

(with sanitizing search 'n replace, for security)

-----

root # ping6 -v -I en0 x:y:z:1::99

PING6(56=40+8+8 bytes) x:y:z:1::200 --> x:y:z:1::99

136 bytes from fe80::ec4:7aff:fe17:18d4%en0: Router Advertisement

64 bytes from x:y:z:1::200: Destination Host Unreachable

Vr TC  Flow Plen Nxt Hlim

6 00 00000 0010  3a   40

x:y:z:1::200->x:y:z:1::99

ICMP6: type = 128, code = 0

64 bytes from x:y:z:1::200: Destination Host Unreachable

Vr TC  Flow Plen Nxt Hlim

6 00 00000 0010  3a   40

x:y:z:1::200->x:y:z:1::99

ICMP6: type = 128, code = 0

64 bytes from x:y:z:1::200: Destination Host Unreachable

Vr TC  Flow Plen Nxt Hlim

6 00 00000 0010  3a   40

x:y:z:1::200->x:y:z:1::99

ICMP6: type = 128, code = 0

64 bytes from x:y:z:1::200: Destination Host Unreachable

Vr TC  Flow Plen Nxt Hlim

6 00 00000 0010  3a   40

x:y:z:1::200->x:y:z:1::99

ICMP6: type = 128, code = 0

^C

--- x:y:z:1::99 ping6 statistics ---

17 packets transmitted, 0 packets received, 100.0% packet loss

From VMware virtual host system that has IPv6: x:y:z:1::10

(with sanitizing search 'n replace, for security)

-----

root # ping6 -v -I en0 x:y:z:1::99

PING6(56=40+8+8 bytes) x:y:z:1::10 --> x:y:z:1::99

ping6: sendmsg: No route to host

ping6: wrote x:y:z:1::99 16 chars, ret=-1

ping6: sendmsg: No route to host

ping6: wrote x:y:z:1::99 16 chars, ret=-1

ping6: sendmsg: No route to host

ping6: wrote x:y:z:1::99 16 chars, ret=-1

136 bytes from fe80::ec4:7aff:fe17:18d4%vlan0: Router Advertisement

ping6: sendmsg: No route to host

ping6: wrote x:y:z:1::99 16 chars, ret=-1

ping6: sendmsg: No route to host

ping6: wrote x:y:z:1::99 16 chars, ret=-1

136 bytes from fe80::ec4:7aff:fe17:18d4%vlan3: Router Advertisement

ping6: sendmsg: No route to host

ping6: wrote x:y:z:1::99 16 chars, ret=-1

ping6: sendmsg: No route to host

ping6: wrote x:y:z:1::99 16 chars, ret=-1

ping6: sendmsg: No route to host

ping6: wrote x:y:z:1::99 16 chars, ret=-1

ping6: sendmsg: No route to host

ping6: wrote x:y:z:1::99 16 chars, ret=-1

ping6: sendmsg: No route to host

ping6: wrote x:y:z:1::99 16 chars, ret=-1

ping6: sendmsg: No route to host

ping6: wrote x:y:z:1::99 16 chars, ret=-1

ping6: sendmsg: No route to host

ping6: wrote x:y:z:1::99 16 chars, ret=-1

136 bytes from fe80::ec4:7aff:fe17:18d4%vlan4: Router Advertisement

136 bytes from fe80::ec4:7aff:fe17:18d4%vlan3: Router Advertisement

ping6: sendmsg: No route to host

ping6: wrote x:y:z:1::99 16 chars, ret=-1

^C

--- x:y:z:1::99 ping6 statistics ---

13 packets transmitted, 0 packets received, 100.0% packet loss

COMMENT(s):

- since the virtual host has the VLANs, the above seems to make sense

- ifconfig shows that the named 'VLAN 1' setup is actually vlan0 (on en0),

  so I ran the following (and get the same results as running simply

  ping6 -v x:y:z:1::99):

root # ping6 -v -I vlan0 x:y:z:1::99

PING6(56=40+8+8 bytes) x:y:z:1::10 --> x:y:z:1::99

32 bytes from x:y:z:1::99: Neighbor Advertisement

16 bytes from x:y:z:1::99, icmp_seq=0 hlim=64 dst=x:y:z:1::10 time=0.696 ms

136 bytes from fe80::ec4:7aff:fe17:18d4%vlan4: Router Advertisement

136 bytes from fe80::ec4:7aff:fe17:18d4%vlan0: Router Advertisement

16 bytes from x:y:z:1::99, icmp_seq=1 hlim=64 dst=x:y:z:1::10 time=0.590 ms

16 bytes from x:y:z:1::99, icmp_seq=2 hlim=64 dst=x:y:z:1::10 time=0.601 ms

16 bytes from x:y:z:1::99, icmp_seq=3 hlim=64 dst=x:y:z:1::10 time=0.766 ms

16 bytes from x:y:z:1::99, icmp_seq=4 hlim=64 dst=x:y:z:1::10 time=0.502 ms

16 bytes from x:y:z:1::99, icmp_seq=5 hlim=64 dst=x:y:z:1::10 time=0.614 ms

32 bytes from x:y:z:1::99: Neighbor Solicitation

16 bytes from x:y:z:1::99, icmp_seq=6 hlim=64 dst=x:y:z:1::10 time=0.487 ms

16 bytes from x:y:z:1::99, icmp_seq=7 hlim=64 dst=x:y:z:1::10 time=0.523 ms

16 bytes from x:y:z:1::99, icmp_seq=8 hlim=64 dst=x:y:z:1::10 time=0.412 ms

136 bytes from fe80::ec4:7aff:fe17:18d4%vlan3: Router Advertisement

16 bytes from x:y:z:1::99, icmp_seq=9 hlim=64 dst=x:y:z:1::10 time=0.500 ms

16 bytes from x:y:z:1::99, icmp_seq=10 hlim=64 dst=x:y:z:1::10 time=0.460 ms

16 bytes from x:y:z:1::99, icmp_seq=11 hlim=64 dst=x:y:z:1::10 time=0.556 ms

16 bytes from x:y:z:1::99, icmp_seq=12 hlim=64 dst=x:y:z:1::10 time=0.351 ms

16 bytes from x:y:z:1::99, icmp_seq=13 hlim=64 dst=x:y:z:1::10 time=0.464 ms

16 bytes from x:y:z:1::99, icmp_seq=14 hlim=64 dst=x:y:z:1::10 time=0.720 ms

^C

--- x:y:z:1::99 ping6 statistics ---

15 packets transmitted, 15 packets received, 0.0% packet loss

round-trip min/avg/max/std-dev = 0.351/0.549/0.766/0.112 ms

... and just for "completeness":

From virtualized system that has IPv6: x:y:z:1::99

(with sanitizing search 'n replace, for security)

-----

root # ping6 -v -I en0 x:y:z:1::99

PING6(56=40+8+8 bytes) x:y:z:1::99 --> x:y:z:1::99

16 bytes from x:y:z:1::99: Echo Request

16 bytes from x:y:z:1::99, icmp_seq=0 hlim=64 dst=x:y:z:1::99 time=0.223 ms

16 bytes from x:y:z:1::99: Echo Request

16 bytes from x:y:z:1::99, icmp_seq=1 hlim=64 dst=x:y:z:1::99 time=0.277 ms

16 bytes from x:y:z:1::99: Echo Request

16 bytes from x:y:z:1::99, icmp_seq=2 hlim=64 dst=x:y:z:1::99 time=0.345 ms

16 bytes from x:y:z:1::99: Echo Request

16 bytes from x:y:z:1::99, icmp_seq=3 hlim=64 dst=x:y:z:1::99 time=0.256 ms

16 bytes from x:y:z:1::99: Echo Request

16 bytes from x:y:z:1::99, icmp_seq=4 hlim=64 dst=x:y:z:1::99 time=0.279 ms

^C

--- x:y:z:1::99 ping6 statistics ---

5 packets transmitted, 5 packets received, 0.0% packet loss

round-trip min/avg/max/std-dev = 0.223/0.276/0.345/0.040 ms

COMMENT(s):

- to illustrate what I suspect is an important behavior, I did the following:

From virtualized system that has IPv6: x:y:z:1::99

(with sanitizing search 'n replace, for security)

-----

root # ping6 -v -I en0 x:y:z:1::200

PING6(56=40+8+8 bytes) x:y:z:1::99 --> x:y:z:1::200

24 bytes from x:y:z:1::10: Neighbor Advertisement

32 bytes from x:y:z:1::200: Neighbor Advertisement

16 bytes from x:y:z:1::200, icmp_seq=0 hlim=64 dst=x:y:z:1::99 time=636.677 ms

32 bytes from x:y:z:1::10: Neighbor Solicitation

16 bytes from x:y:z:1::200, icmp_seq=1 hlim=64 dst=x:y:z:1::99 time=0.878 ms

16 bytes from x:y:z:1::200, icmp_seq=2 hlim=64 dst=x:y:z:1::99 time=0.897 ms

16 bytes from x:y:z:1::200, icmp_seq=3 hlim=64 dst=x:y:z:1::99 time=0.865 ms

^C

--- x:y:z:1::200 ping6 statistics ---

4 packets transmitted, 4 packets received, 0.0% packet loss

round-trip min/avg/max/std-dev = 0.865/159.829/636.677/275.308 ms

COMMENT(s):

- ONLY AFTER doing the above, the first-listed test, above, now works, yielding

  (and is the the same without '-I en0'):

root # ping6 -v x:y:z:1::99

PING6(56=40+8+8 bytes) x:y:z:1::200 --> x:y:z:1::99

16 bytes from x:y:z:1::99, icmp_seq=0 hlim=64 dst=x:y:z:1::200 time=0.925 ms

16 bytes from x:y:z:1::99, icmp_seq=1 hlim=64 dst=x:y:z:1::200 time=1.079 ms

136 bytes from fe80::ec4:7aff:fe17:18d4%en0: Router Advertisement

16 bytes from x:y:z:1::99, icmp_seq=2 hlim=64 dst=x:y:z:1::200 time=1.055 ms

16 bytes from x:y:z:1::99, icmp_seq=3 hlim=64 dst=x:y:z:1::200 time=1.069 ms

^C

--- x:y:z:1::99 ping6 statistics ---

4 packets transmitted, 4 packets received, 0.0% packet loss

round-trip min/avg/max/std-dev = 0.925/1.032/1.079/0.062 ms

0 Kudos
nancyz
VMware Employee
VMware Employee

ping6 -v -I x:y:z:1::99 is not a valid command as '-I' requires an interface. 

Yes, I meant ping6 -v -I vlanX x:y:z:1::99.

0 Kudos
A_Consultant
Contributor
Contributor

From the virtual host, I ping'd x:y:z:1::99 via the other 2 VLANs, as well -- both yield the same results of "No route to host"

From the virtual host, I also ping'd x:y:z:4::4 via the 3 VLANs (i.e., the vlanx interfaces), all with 100% packet loss.

However (from the virtual host), pinging x:y:z:5::5 via its vlan interface worked, but not via the other 2 vlan interfaces.

Hope that helps.

0 Kudos
nancyz
VMware Employee
VMware Employee

From the virtual host, I also ping'd x:y:z:4::4 via the 3 VLANs (i.e., the vlanx interfaces), all with 100% packet loss.

So, x:y:z:4::4 is a physical interface but not a vlan interface?

0 Kudos
A_Consultant
Contributor
Contributor

Re: So, x:y:z:4::4 is a physical interface but not a vlan interface?

---

x:y:z:4::4 is an IPv6 address that's on LAN 1/VLAN 1 -- the tests I referred to are:

ping6 -v -I vlan0 x:y:z:4::4  [vlan0 is the ifconfig interface used to create VLAN 1, see additional config detail, below/attached)]

ping6 -v -I vlan3 x:y:z:4::4  [vlan0 is the ifconfig interface used to create VLAN 4, see additional config detail, below/attached)]

ping6 -v -I vlan4 x:y:z:4::4  [vlan0 is the ifconfig interface used to create VLAN 5, see additional config detail, below/attached)]


I've attached a text file containing the additional config detail and also inserted it below:

---

The configuration is exactly as detailed in my initial report, no more, no less.

By far, the easiest way to understand all this is to simply configure a system

the same as in the originally provided config information.

Overall, there are 5 LANs, 3 of which we're using in these tests -- from the

original config info:

LAN 1 (which is also VLAN 1): 172.16.16.0/24 and x:y:z:1::/64

LAN 4 (which is also VLAN 4): only x:y:z:4::/64

LAN 5 (which is also VLAN 5): only x:y:z:5::/64

Here's the detail not provided by the originally supplied config information ...

Pertinent/sanitized information from ifconfig on the virtual host:

---

lo0: <snip'd>

gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280

stf0: flags=0<> mtu 1280

en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500

  options=2b<RXCSUM,TXCSUM,VLAN_HWTAGGING,TSO4>

  ether <snip'd>

  media: autoselect (1000baseT <full-duplex,flow-control>)

  status: active

en1: flags=8822<BROADCAST,SMART,SIMPLEX,MULTICAST> mtu 1500

  ether <snip'd>

  media: autoselect (<unknown type>)

  status: inactive

p2p0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> mtu 2304

  ether <snip'd>

  media: autoselect

  status: inactive

fw0: flags=8822<BROADCAST,SMART,SIMPLEX,MULTICAST> mtu 4078

  lladdr <snip'd>

  media: autoselect <full-duplex>

  status: inactive

vlan0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500

  options=23<RXCSUM,TXCSUM,TSO4>

  ether <snip'd>

  inet6 fe80::ca2a:14ff:fe51:c79%vlan0 prefixlen 64 scopeid 0x8

  inet6 x:y:z:1::10 prefixlen 64

  inet 172.16.16.234 netmask 0xffffff00 broadcast 172.16.16.255

  vlan: 16 parent interface: en0

  media: autoselect (1000baseT <full-duplex,flow-control>)

  status: active

vlan2: <not applicable>

vlan4: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500

  options=23<RXCSUM,TXCSUM,TSO4>

  ether <snip'd>

  inet6 fe80::ca2a:14ff:fe51:c79%vlan4 prefixlen 64 scopeid 0xa

  inet6 x:y:z:5::10 prefixlen 64

  vlan: 5 parent interface: en0

  media: autoselect (1000baseT <full-duplex,flow-control>)

  status: active

vlan1: flags=8842<BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500

  options=23<RXCSUM,TXCSUM,TSO4>

  ether <snip'd>

  vlan: 17 parent interface: en0

  media: autoselect (1000baseT <full-duplex,flow-control>)

  status: active

vlan3: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500

  options=23<RXCSUM,TXCSUM,TSO4>

  ether <snip'd>

  inet6 fe80::ca2a:14ff:fe51:c79%vlan3 prefixlen 64 scopeid 0xc

  inet6 x:y:z:4::10 prefixlen 64

  vlan: 4 parent interface: en0

  media: autoselect (1000baseT <full-duplex,flow-control>)

  status: active

vmnet1: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500

  ether 00:50:56:c0:00:01

  inet 192.168.11.1 netmask 0xffffff00 broadcast 192.168.11.255

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

E.G., from this and the original config info we see that the network setup item

(in system preferences) named 'VLAN 1' is ifconfig's vlan0 (this will depend

upon the order in which things were created) and has the virtual host addresses

of; IPv4: 172.16.1.10 and IPv6: x:y:z:1::10 (and some link-locals, but we don't

care about anything except manually assigned addresses) and operates on LAN 1,

using VLAN 1 where applicable (i.e., non-server type systems only operate on one

LAN and therefore let the switch do the VLAN tagging, rather than setting up a

VLAN configuration on those systems).

Pertinent/sanitized information from ifconfig on the virtualized system:

---

lo0: <snip'd>

gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280

stf0: flags=0<> mtu 1280

en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500

  options=b<RXCSUM,TXCSUM,VLAN_HWTAGGING>

  ether 00:0c:29:c4:8d:16

  inet 172.16.16.166 netmask 0xffffff00 broadcast 172.16.16.255

  inet6 fe80::20c:29ff:fec4:8d16%en0 prefixlen 64 scopeid 0x4

  inet6 x:y:z:16::166 prefixlen 64

  media: autoselect (1000baseT <full-duplex>)

  status: active

en2: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500

  options=b<RXCSUM,TXCSUM,VLAN_HWTAGGING>

  ether 00:0c:29:c4:8d:05

  inet6 fe80::20c:29ff:fec4:8d05%en2 prefixlen 64 scopeid 0x5

  inet6 x:y:z:5::5 prefixlen 64

  media: autoselect (1000baseT <full-duplex>)

  status: active

en1: <not applicable>

en3: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500

  options=b<RXCSUM,TXCSUM,VLAN_HWTAGGING>

  ether 00:0c:29:c4:8d:04

  inet6 fe80::20c:29ff:fec4:8d04%en3 prefixlen 64 scopeid 0x7

  inet6 x:y:z:4::4 prefixlen 64

  media: autoselect (1000baseT <full-duplex>)

  status: active

The network adapter information from the virtual machine's .vmx file:

---

ethernet0.address = "00:0C:29:C4:8D:16"

ethernet0.addressType = "static"

ethernet0.bsdName = "vlan0"

ethernet0.connectionType = "custom"

ethernet0.displayName = "VLAN 1"

ethernet0.generatedAddressOffset = "0"

ethernet0.linkStatePropagation.enable = "TRUE"

ethernet0.pciSlotNumber = "160"

ethernet0.present = "TRUE"

ethernet0.startConnected = "TRUE"

ethernet0.virtualDev = "e1000e"

ethernet0.vnet = "vmnet2"

ethernet0.wakeOnPcktRcv = "FALSE"

ethernet1.address = "00:0C:29:C4:8D:18"

ethernet1.addressType = "static"

ethernet1.bsdName = "vlan2"

ethernet1.connectionType = "custom"

ethernet1.displayName = <not applicable -- IPv4 only and not in our tests>

ethernet1.linkStatePropagation.enable = "TRUE"

ethernet1.pciSlotNumber = "224"

ethernet1.present = "TRUE"

ethernet1.startConnected = "TRUE"

ethernet1.virtualDev = "e1000e"

ethernet1.vnet = "vmnet3"

ethernet1.wakeOnPcktRcv = "FALSE"

ethernet2.address = "00:0C:29:C4:8D:04"

ethernet2.addressType = "static"

ethernet2.bsdName = "vlan3"

ethernet2.connectionType = "custom"

ethernet2.displayName = "VLAN 4"

ethernet2.generatedAddressOffset = "20"

ethernet2.linkStatePropagation.enable = "TRUE"

ethernet2.pciSlotNumber = "256"

ethernet2.present = "TRUE"

ethernet2.startConnected = "TRUE"

ethernet2.virtualDev = "e1000e"

ethernet2.vnet = "vmnet6"

ethernet2.wakeOnPcktRcv = "FALSE"

ethernet3.address = "00:0C:29:C4:8D:05"

ethernet3.addressType = "static"

ethernet3.bsdName = "vlan4"

ethernet3.connectionType = "custom"

ethernet3.displayName = "VLAN 5"

ethernet3.linkStatePropagation.enable = "TRUE"

ethernet3.pciSlotNumber = "1184"

ethernet3.present = "TRUE"

ethernet3.startConnected = "TRUE"

ethernet3.virtualDev = "e1000e"

ethernet3.vnet = "vmnet7"

ethernet3.wakeOnPcktRcv = "FALSE"

0 Kudos