用 PC 抓 VLAN 报文 设置以外网卡来抓取带 802.1Q 标记的报文 解 决 方 案 应用中心 刘春龙 2012年 11月 19日 用 PC 以太网卡抓取带 tag 标记的 802.1Q 报文 问题描述: 用 sniffer/Ethereal(WireShark)/EtherPeek等软件,在接入层设备的以太网口镜像抓包是分析问题的基本方法之一,然而很多维护人员在实际操作时发现,自己的台式机或笔记本抓到的数据报看不到VLAN标记。难以区分数据流是从哪个vlan过来的。给问题分析造成不便。 问题分析: VLAN tag是在802.1Q中定义的标签,支持VLAN的设备(例如以太网交换机)可以在数据包的报文头部分,目的mac和源mac之后,插入2个字节的报文类型标识TPID(通常为81 00)、和两个字节的 VLAN号 (包含优先级标示),用于实现区分数据流、分割广播域、标示报文优先级等功能。 近几年的笔记本电脑,尤其是带千兆以太网卡的电脑,所采用的千兆网卡不仅10/100/1000M自适应、直联/交叉自适应,而且网卡驱动会自动识别并剔除数据包中的vlan标记。功能是很强大的,但却给我们二层网络抓包的数据分析造成了不便之处。 解决方法: 1.修改网卡的注册表 2.设置允许PC抓取的vlan 注意事项: 此外,我在这里强调一下,vlan数据包有802.1Q封装的,还有ISL(思科私有)封装的。我们在此能抓的都指的是802.1Q封装的vlan数据包。 一、在PC上设置允许抓取的vlan 先介绍PC设置允许接入的vlan方法,但网卡的注册表没有改特定的参数值的话,还是无法抓取vlan的 tag的。 由于不同网卡有不同的注册表修改方法,比较棘手,最后介绍,所以先介绍简单的: 1.首先,选择需要修改的网卡(以Intel网卡为例,其他的类似),右击进入“属性” 2.在网卡的属性中的“常规”栏下,选择“配置” 3.然后选择“VLAN”那一栏 4.在“VLAN”栏下选择“新建” 5.在弹出的“新VLAN”中,选择你需要虚拟的VLAN网卡,以便抓取该VLAN。 6.“新VLAN”中可以新建“未标记的VLAN”,就是抓取取出tag的报文,跟普通网卡一样 7.在新建过程中,电脑处理会比较慢,因为在虚拟此特定VLAN的网卡。如弹出这个对话框,点”仍然继续“ 8.这就是电脑虚拟出来的专门的VLAN网卡,最多可以建64个(不同网卡可能不同) 9.在上图中,建立了一大堆VLAN虚拟网卡,很乱!所以,不用的VLAN虚拟网卡就请删掉: 右击主网卡的“属性”——“配置”——“VLAN”——选择vlan点击删除 二、修改网卡的注册表项 不同网卡需要修改不同的注册...