Estou tentando descobrir se criar subinterfaces VLAN para um host sniffer para filtrar pacotes para uma VLAN específica é mais prático do que usar filtros libpcap com tcpdump.
Para isso, quero configurar uma subinterface da VLAN sem um IP.
A partir de uma combinação da configuração atual da interface principal (eth1) e esta , desenvolvi o seguinte:
auto eth1
iface eth1 inet manual
up ifconfig $IFACE 0.0.0.0 up
up ip link set $IFACE promisc on
down ip link set $IFACE promisc off
down ifconfig $IFACE down
auto eth1.326
iface eth1.326 inet manual
up ifconfig $IFACE 0.0.0.0 up
up ip link set $IFACE promisc on
down ip link set $IFACE promisc off
down ifconfig $IFACE down
vlan-raw-device eth1
No entanto, ao tentar iniciar a interface com o ifup, isso me dá o seguinte:
# ifup eth1.326
SIOCSIFADDR: No such device
eth1.326: ERROR while getting interface flags: No such device
eth1.326: ERROR while getting interface flags: No such device
Failed to bring up eth1.326.
Atualmente, presumo que o método manual não crie a interface da VLAN antes de executar os comandos.
Isto parece adicionar a interface, não tenho certeza se está funcionando:
ip link add link eth1 dev eth1.326 type vlan id 326
(Depois que foi executado, ifup parece mais feliz, mas parece feio e não é fácil de reproduzir na reinicialização de uma maneira elegante)
Ubuntu 16.04