使用windows抓取带有VLAN标记的报文

最近遇到一个case,需要使用windows抓交换机span过来的流量,但是无论交换机怎么配置,windows上wireshark抓到的报文总是没有VLAN tag,让我一度怀疑交换机的配置是否出了问题,查了一些资料,发现需要修改下注册表,才能改变网卡的模式,让其捕获报文后不主动去掉VLAN tag。

TOPO

IXIA(VLAN)——–(Trunk)Switch(default)——–PC


IXIA打封装VLAN tag的报文,到达交换机的trunk口,SPAN的配置如下,将trunk接口的流量span到连接PC的接口,连接PC的接口配置默认即可。

交换机配置

WS3850-C#show run | section monitor
monitor session 66 source interface GigabitEthernet0/0
monitor session 66 destination interface Gi1/0/1 encapsulation dot1q

Windows配置

找到需要capture数据包的网卡,例如我需要抓以太网的网卡上的流量,我的网卡是Intel(R) 1219-LM

打开注册表

找到以下的路径,由于该路径下有很多文件夹,每个文件夹对应PC上的各个网卡,所以我们需要一个一个打开找到DriverDesc描述的是我们需要的网卡,例如我这边对应0006这个文件夹。

HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Class\{4d36e972-e325-11ce-bfc1-08002be10318}\

新建两个DWORD项,name和date如下图所示:

效果如下:

重启电脑后再进行抓包,就会发现VLAN tag不会被网卡移除了.