A explanation/work-around for this issue raised back in April.
It seems that if, in UCS, you configure a vNIC with a single native VLAN it
will still add an 802.1q header with tag 0 - possibly to do with QoS. And
this extra header prevents iPXE from parsing the DHCP response.
The solution for me was to present all VLANs on a single trunked vNIC to
the blade and configure VLAN tagging as per normal. The result is the tags
are stripped off the packets before being passed to the VM and DHCP now
works.
The same issue applies to VM-FEX as packets coming off the VF will have the
802.1q header. The only solution I can see here is to configure a bridged
interface for initial build of the VM and then switch to VM-FEX afterwards.
I found a discussion on the iPXE mailing list about addressing the vlan 0
issue, but I could see no agreed solution.
http://lists.ipxe.org/pipermail/ipxe-devel/2016-April/004901.html
Alan