当前位置:文档之家› wireshark抓包应用指导说明书

wireshark抓包应用指导说明书

杭州迪普科技有限公司wireshark抓包应用指导说明书拟制雷振华日期2015.4.10 评审人日期签发日期修订记录日期修订版本描述作者2015.4.10 V1.0 初稿完成雷振华目录1 WIRESHARK介绍 (5)2 功能介绍 (5)3 图形界面抓报文 (5)3.1 选择网卡抓报文 (5)3.2 显示报文抓取时间 (7)3.3 WIRESHARK界面布局 (8)3.4 报文过滤条件 (9)3.4.1 常用过滤条件 (10)3.4.2 WIRESHARK EXPRESSION (11)3.4.3 高级过滤条件 (11)3.4.4 WIRESHARK CAPTURE FILTER (14)4 命令行抓报文 (15)4.1 选择网卡 (15)4.2 命令行过滤条件 (17)4.3 常用过滤条件 (17)5 批量转换报文格式 (18)1Wireshark介绍Wireshark 是开源网络包分析工具,支持Windows/Linux/Unix环境。

网络包分析工具的主要作用是尝试捕获网络包,并尝试显示包的尽可能详细的情况。

可以从网站下载最新版本的Wireshark (/download.html 。

Wireshark通常在4-8周内发布一次新版本2功能介绍Wireshark支持图形和命令行两种抓报文方式3图形界面抓报文3.1选择网卡抓报文第一步打开wireshark抓包软件,点击“Capture-->Interfaces”,如图3-1图3-1选择网卡第二步选择抓包的网卡,点击”Strart“开始抓包,这样将抓取流经此网卡的所有报文,并临时保存在内存中。

因此,如果持续抓包将消耗掉系统所有内存。

如图3-2和图3-3图3-2启动抓包图3-3抓包界面图标说明重新抓报文停止抓报文表1-13.2显示报文抓取时间打开wireshark抓包软件,点击“View-->TimeDisplay Format-->Date and Time of Day”,如图3-4和图3-5图3-4效果图:图3-53.3Wireshark界面布局Wireshark界面主要分为三部分(如图3-6),区域一显示抓取的报文,区域二显示选中报文的包头详细信息,区域三显示选中报文的详细信息,默认以十六进制显示。

图3-6功能说明区域一显示抓取的报文区域二显示选中报文的包头详细信息区域三显示选中报文的详细信息,默认以十六进制显示Packets 抓取的所有报文计数Displayed 满足过滤条件的报文计数表1-23.4报文过滤条件Wireshark能够根据应用的需要设置灵活方便的过滤条件,迅速筛选出符合条件的报文。

Wireshark的Filter过滤能够自动检测语法合法性,如果过滤条件设置正确,则Filter输入框为绿色,如果过滤条件设置错误,则Filter输入框为红色。

如图3-7图3-73.4.1常用过滤条件功能说明ip.addr==10.23.7.113 源IP地址或目的IP地址是10.23.7.113的报文ip.src==10.23.7.113 源IP地址是10.23.7.113ip.dst==10.23.7.113 目的IP地址是10.23.7.113ip.src==10.23.7.113 and ip.dst==10.23.7.113 报文源IP地址是10.23.7.113且目的IP地址是106.28.142.181 udp/tcp.port==80 过滤udp或tcp源端口或目的端口是80的报文udp/tcp.srcport==40004 过滤udp或tcp源端口是40004的报文udp/tcp.dstport==80 过滤udp或tcp目的端口是80的报文tcp.srcport==40004 and tcp.dstport==80 过滤tcp协议源端口是40004且目的端口是80的报文tcp/udp/http 过滤tcp/udp/http报文tcp.flags.syn==0x02 抓tcp syn报文ip.id==0xadcd 过滤ip报文id是0xadcd的报文表1-33.4.2Wireshark expression当然,如果你对Filter过滤规则不熟悉或者不知道如何怎么写时,可以使用wireshark的Expression,这里列出了wireshark所支持的所有过滤协议以及过滤方式图3-83.4.3高级过滤条件上述的过滤条件都是wireshark内置的,主要是根据已知的包头字段内容过滤。

同时wireshark也支持根据报文负载内部过滤。

项目说明tcp/udp[offset:n] 从tcp或udp偏移指定字节后,命中指定n个字节的内容tcp[20:8] 表示从20开始,取8个字节udp[8:3] 表示从8开始,取3个字节udp[8:3]==81:60:03 不可以写为udp[8:3]==816003表1-4根据负载单字节过滤,如图3-9图3-9根据udp负载过滤双字节,如图3-10图3-10 根据tcp包头后3字节内容,如图3-11图3-113.4.4Wireshark capture filter根据3.1抓报文,wireshark默认抓取所选网卡的所有报文,并且保存在内存中。

如果忘记停止抓报文,会耗尽系统内存。

我们完全可以设置wireshark只抓取满足过滤条件的报文。

图3-12点击图中的“Options”选择,进入图3-13图3-13设置好过滤条件后,点击”Start“,wireshark就只抓取符合过滤条件的报文。

在”Capture Filter“输入框内输入过滤条件。

语法正确,输入框背景显示为绿色,语法错误,输入框背景显示为红色。

请注意,此处的语法与3.4.1不相同。

常用过滤条件:功能说明Host 10.23.7.113 源IP地址或目的IP地址是10.23.7.113的报文host 10.23.7.113 and tcp port 4444 源IP地址或目的IP地址是10.23.7.113的报文且tcp端口是4444的报文udp port 69 udp 端口是69的报文表1-54命令行抓报文命令行抓包可以让抓取的报文直接保存在硬盘上,这样既不用担心wireshark抓大流量报文时(例如笔记本抓1Gbps速率的报文)崩溃,又不用担心迅速耗尽系统内存的风险。

4.1选择网卡使用cmd进入wireshark的安装目录,如图4-1图4-1执行dumpcap.exe -D列出所有网卡图4-2 根据wireshark图形界面,选择你需要抓包接口ID图4-34.2命令行过滤条件Dumpcap.exe -i 1 -s 0 -B 256 filesize:10000 -w f:\1.pcap -f “ tcp port 80”图4-4项目说明-i 1 接口ID值,可使用dumpcap.exe -D查看-s 0 指定抓取报文的长度,0表示抓取报文全部长度-B 256 size of kernel buffer,即系统内核缓存。

默认是2MFilesizes:10000 每10M一个文件保存-w f:\1.pcap 抓取的报文保存在F盘,文件名为1.pcap -f “tcp port 80”抓报文的过滤条件表1-64.3常用过滤条件1、dumpcap.exe -i 4 -s 65535 -b filesize:100000 -w F:\radius_filter_test.pcap -f"udp[30:4]==0x30383734"2、dumpcap.exe -i 1 -s 65535 -B 256 -b filesize:200000 -w F:\pcap1\3.pcap -f "udp port 1813"3、dumpcap.exe" -i 2 -s 65535 -B 256 -b filesize:10000 -w F:\pcacp\3.pcap -f "host 182.244.157.105"5批量转换报文格式在我们的日常工作中排查一些局点问题,往往需要从前方局点抓一些报文在公司进行回放测试,以帮助分析和定位问题,但往往通过wireshark自动执行抓包后保存的报文格式默认是.pcapng类型,使用公司的报文回放工具SendPcap_v1.1.exe因识别不了此类格式的报文而无法进行回放,若通过手动方式将报文一个一个打开后再保存为我们能用的格式,工作量是非常大的。

这个时候我们就需要借助自动化脚本进行批量转化,大大简化工作量来达到我们的目的。

本文重点介绍通过自动化执行脚本方式来批量转化报文的方法。

按照本文介绍的方法,我们可以很轻松的实现将大批量的报文在短时间内进行转化。

步骤1、确定wireshark安装目录,如图5-1图5-1步骤2、操作方法:【计算机】=>【属性】=>【高级系统设置】=>【高级】=>【环境变量】在弹出的窗口中确认“用户变量”有没有“path”变量,如果没有则选择“新建”,在弹出的窗口中“变量名”为“path”,对应的变量值则为wireshark的安装路径。

若已经存在“path”变量,则只需要编辑“path”变量,将wireshark的安装路径作为变量值输入,注意:若“path”变量中已存在其他变量,则需要用“;”分号将各个变量隔开。

系统变量的设置方法与用户变量的设置方法一致。

【说明】“用户变量”与“系统变量”的区别:用户变量只对当前用户有效,而系统变量对所有用户都生效。

所以如果需要此设置对其他用户也生效,则只需设置系统变量即可。

图5-2图5-3图5-4步骤3、操作方法:将下面的内容复制到记事本中,然后保存为.bat格式,命名为“批量转化报文格式.bat”if exist subdirs.txt del subdirs.txt>nuldir /d /b /a:-d> subdirs.txtfor /f %%i in (subdirs.txt ) do tshark -r %%i -F pcap -w converted/%%ipausedel subdirs.txt>nul图5-5步骤4、操作方法:将上一步创建的脚本放到需要转化的报文目录下,然后新建一个文件夹并命名为“converted”,用于存放格式转化后的报文。

图5-6步骤5、操作方法:双击脚本“批量转化报文格式.bat”,弹出一个cmd窗口会显示脚本正在执行转化的状态,文件转化完成后会显示如下图所示文字提醒“请按任意键继续”,敲击任意键即可完成脚本执行,脚本自动退出。

图5-7步骤6、操作方法:脚本执行过程中会自动生成subdirs.txt,该文件内容记录的是成功完成转化的报文列表。

相关主题