在Wireshark網上找到如何讓Intel網卡實現抓取Vlan(802.1q)包,在如下連結中可以找到,意思即是修改註冊表中的MonitorModeEnabled或者MonitorMode(依網卡而定)
http://www.intel.com/support/network/sb/CS-005897.htm
問題是我沒有找到這樣的一個項,開始以為我的網卡不支援,使用同事的一個ACER的電腦,將網卡的VLAN功能禁用後,就可以抓包了。
後來在,一英文網站論壇上找到,可以通過手動添加該項來解決這個問題。
註冊表的位置在:
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}\00nn
nn是序號,一般會有很多項,從該位置中去尋找DriverDesc的項與你網卡的描述項相同的一個目錄。
筆者的網卡為:Intel(R) 82577LM Gigabit Network Connection
位置為:HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}\0007
找到後,如果沒有該項,可手動添加一項,類型為DWORD,並修改值為:1
重起系統後,即可在WireShark中實現對802.1Q的項進行解析。
我的嘗試如下:串連的VLAN ID為:100
Ethernet II, Src: Dell_01:45:30 (00:26:b9:01:45:30), Dst: WistronI_0a:68:17 (f0:de:f1:0a:68:17)
802.1Q Virtual LAN, PRI: 0, CFI: 0, ID: 100
Internet Protocol Version 4, Src: 10.0.3.11 (10.0.3.11), Dst: 10.0.3.138 (10.0.3.138)
如果在註冊表中有多個ControlSet,只設定ControlSet001,因為別人已經做過實驗了,修改CurrentControlSet都沒有效果。