I am running on a iMac host with a wired network. It is wired directly into my cable modem and this is where the second OFFER is coming from. The modem is a Hitron CGNM-2250. It has an IP Passthrough feature but it's disabled. I am assuming this is different than DHCP Passthrough. The iMac also has a WiFi network but it is disabled. This is the results of ifconfig on the iMac:
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
options=1203<RXCSUM,TXCSUM,TXSTATUS,SW_TIMESTAMP>
inet 127.0.0.1 netmask 0xff000000
inet6 ::1 prefixlen 128
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1
nd6 options=201<PERFORMNUD,DAD>
gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
stf0: flags=0<> mtu 1280
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=10b<RXCSUM,TXCSUM,VLAN_HWTAGGING,AV>
ether 38:c9:86:22:2f:0f
inet6 fe80::e4
a8e7:9669%en0 prefixlen 64 secured scopeid 0x4
inet 192.168.0.11 netmask 0xffffff00 broadcast 192.168.0.255
inet6 fd00:6477:7da6:9da2:12:bba6:cfd4:1a6c prefixlen 64 autoconf secured
inet6 fd00:6477:7da6:9da2:81e7:af72:80f1:f816 prefixlen 64 deprecated autoconf temporary
inet6 fd00:6477:7da6:9da2:8490:78b0:8e54:156f prefixlen 64 deprecated autoconf temporary
inet6 fd00:6477:7da6:9da2
1cbd:d396:a0d3 prefixlen 64 autoconf temporary
nd6 options=201<PERFORMNUD,DAD>
media: autoselect (1000baseT <full-duplex,flow-control>)
status: active
en1: flags=8823<UP,BROADCAST,SMART,SIMPLEX,MULTICAST> mtu 1500
ether 28:f0:76:27:97:b6
nd6 options=201<PERFORMNUD,DAD>
media: autoselect (<unknown type>)
status: inactive
en2: flags=963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX> mtu 1500
options=60<TSO4,TSO6>
ether 1a:00:00:eb:15:10
media: autoselect <full-duplex>
status: inactive
en3: flags=963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX> mtu 1500
options=60<TSO4,TSO6>
ether 1a:00:00:eb:15:11
media: autoselect <full-duplex>
status: inactive
bridge0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=63<RXCSUM,TXCSUM,TSO4,TSO6>
ether 1a:00:00:eb:15:10
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: en2 flags=3<LEARNING,DISCOVER>
ifmaxaddr 0 port 6 priority 0 path cost 0
member: en3 flags=3<LEARNING,DISCOVER>
ifmaxaddr 0 port 7 priority 0 path cost 0
nd6 options=201<PERFORMNUD,DAD>
media: <unknown type>
status: inactive
p2p0: flags=8803<UP,BROADCAST,SIMPLEX,MULTICAST> mtu 2304
ether 0a:f0:76:27:97:b6
media: autoselect
status: inactive
awdl0: flags=8903<UP,BROADCAST,PROMISC,SIMPLEX,MULTICAST> mtu 1484
ether 32:f5:12:ba:35:b9
nd6 options=201<PERFORMNUD,DAD>
media: autoselect
status: inactive
utun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 2000
inet6 fe80::7c09:f372:9103:c8%utun0 prefixlen 64 scopeid 0xb
nd6 options=201<PERFORMNUD,DAD>
I have two VMs on the virtual NAT. One is running dnsmasq including DHCP and PXE. The other is a VM I am trying to install from the PXE server. It seems very similar to your setup except I wish the behaviour was more similar to yours.
I have attached the vminfo from the two VMs on this network. Maybe it will be useful.
I don't really understand how it gets to the real network. I would expect the Virtual NAT to block it before it gets to real hardware.