Разбирался в данном вопросе, наткнулся на официальную документацию, в которой всё описано. Само собой режим работы интерфейса должен быть Trunk, до кучи и "несущим" vlan должен быть 1й. Если вы используете этот влан на хосте гипервизора, то пробросив такой vlan в VM вы не получите с него данных, что и было со мной. Ну и соответственно vlan внутри VM у меня не работали в принципе из-за того, что основной у меня был vlan12.
Вот выдержка из документации:
To configure the switch on a VLAN network, you must configure it as follows:
*Port connected to XenServer on the switch must be configured as trunk port.
*Port on the switch must be configured for 802.1q encapsulation.
*Port security cannot be set on the trunk port.
*Port designated as trunk should be assigned a native VLAN; use 1 as default.
Note: If a Native VLAN is used on the switch trunk port, then you cannot assign that VLAN number to a Virtual Machine on the XenServer. Refer to the following example for a working tested model.