如何通过wireshark进行抓包的分析
发布网友
发布时间:2022-04-21 21:37
我来回答
共3个回答
懂视网
时间:2022-04-09 20:12
1、抓取oracle相关报文
从本机抓取发往本机oracle的报文
命令:tcpdump -w dumpfile -i lo -A -s 0 host 172.20.61.2
生成的报文文件为dumpfile。
2、Wireshark网络分析
tcpdump命令详解,请参考以下网址:http://www.cnblogs.com/ggjucheng/archive/2012/01/14/2322659.html
本文出自 “小小知识库” 博客,请务必保留此出处http://babyhanggege.blog.51cto.com/11741640/1899310
tcpdump抓取oracle报文以及使用Wireshark分析
标签:tcpdump;wireshark;抓包
热心网友
时间:2022-04-09 17:20
启动wireshark后,选择工具栏中的快捷键(红色标记的按钮)即可Start a new live capture。
主界面上也有一个interface list(如下图红色标记1),列出了系统中安装的网卡,选择其中一个可以接收数据的的网卡也可以开始抓包。
在启动时候也许会遇到这样的问题:弹出一个对话框说 NPF driver 没有启动,无法抓包。在win7或Vista下找到C: \system\system32下的cmd.exe 以管理员身份运行,然后输入 net start npf,启动NPf服务。
重新启动wireshark就可以抓包了。
抓包之前也可以做一些设置,如上红色图标记2,点击后进入设置对话框,具体设置如下:
Interface:指定在哪个接口(网卡)上抓包(系统会自动选择一块网卡)。
Limit each packet:*每个包的大小,缺省情况不*。
Capture packets in promiscuous mode:是否打开混杂模式。如果打开,抓 取所有的数据包。一般情况下只需要监听本机收到或者发出的包,因此应该关闭这个选项。
Filter:过滤器。只抓取满足过滤规则的包。
File:可输入文件名称将抓到的包写到指定的文件中。
Use ring buffer: 是否使用循环缓冲。缺省情况下不使用,即一直抓包。循环缓冲只有在写文件的时候才有效。如果使用了循环缓冲,还需要设置文件的数目,文件多大时回卷。
Update list of packets in real time:如果复选框被选中,可以使每个数据包在被截获时就实时显示出来,而不是在嗅探过程结束之后才显示所有截获的数据包。
单击“OK”按钮开始抓包,系统显示出接收的不同数据包的统计信息,单击“Stop”按钮停止抓包后,所抓包的分析结果显示在面板中,如下图所示:
为了使抓取的包更有针对性,在抓包之前,开启了QQ的视频聊天,因为QQ视频所使用的是UDP协议,所以抓取的包大部分是采用UDP协议的包。
3、对抓包结果的说明
wireshark的抓包结果整个窗口被分成三部分:最上面为数据包列表,用来显示截获的每个数据包的总结性信息;中间为协议树,用来显示选定的数据包所属的协议信息;最下边是以十六进制形式表示的数据包内容,用来显示数据包在物理层上传输时的最终形式。
使用wireshark可以很方便地对截获的数据包进行分析,包括该数据包的源地址、目的地址、所属协议等。
上图的数据包列表中,第一列是编号(如第1个包),第二列是截取时间(0.000000),第三列source是源地址(115.155.39.93),第四列destination是目的地址(115.155.39.112),第五列protocol是这个包使用的协议(这里是UDP协议),第六列info是一些其它的信息,包括源端口号和目的端口号(源端口:58459,目的端口:54062)。
中间的是协议树,如下图:
通过此协议树可以得到被截获数据包的更多信息,如主机的MAC地址(Ethernet II)、IP地址(Internet protocol)、UDP端口号(user datagram protocol)以及UDP协议的具体内容(data)。
最下面是以十六进制显示的数据包的具体内容,如图:
这是被截获的数据包在物理媒体上传输时的最终形式,当在协议树中选中某行时,与其对应的十六进制代码同样会被选中,这样就可以很方便的对各种协议的数据包进行分析。
4、验证网络字节序
网络上的数据流是字节流,对于一个多字节数值(比如十进制1014 = 0x03 f6),在进行网络传输的时候,先传递哪个字节,即先传递高位“03”还是先传递低位“f6”。 也就是说,当接收端收到第一个字节的时候,它是将这个字节作为高位还是低位来处理。
下面通过截图具体说明:
最下面是物理媒体上传输的字节流的最终形式,都是16进制表示,发送时按顺序先发送00 23 54 c3 …00 03 f6 …接收时也按此顺序接收字节。
选中total length:1014, 它的十六进制表示是0x03f6, 从下面的蓝色选中区域可以看到,03在前面,f6在后面,即高字节数据在低地址,低字节数据在高地址(图中地址从上到下从左到右依次递增),所以可知,网络字节序采用的是大端模式。
热心网友
时间:2022-04-09 18:38
Wireshark是一个网络协议检测工具,支持Windows平台和Unix平台,我一般只在Windows平台下使用Wireshark,如果是Linux的话,我直接用tcpmp了,因为我工作环境中的Linux一般只有字符界面,且一般而言Linux都自带的tcpmp,或者用tcpmp抓包以后用Wireshark打开分析。
tcpmp是基于Unix系统的命令行式的数据包嗅探工具。如果要使用tcpmp抓取其他主机MAC地址的数据包,必须开启网卡混杂模式,所谓混杂模式,用最简单的语言就是让网卡抓取任何经过它的数据包,不管这个数据包是不是发给它或者是它发出的。