您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 电子设计/PCB > Wireshark入门教程
Wireshark使用心得饮水思源感谢Ethereal和Wireshark的创建者GeraldCombs以及为它们的发展而做出努力的上千名开发人员!下载/安装•自动检测操作系统中已经安装的版本,建议卸载旧版本,使用安装包中的最新版本。启动抓包选择抓包的网卡定义抓包选项CapturepacketsinpromiscuousmodeHUB环境中有效交换机环境中无效•ARP欺骗•交换机端口镜像•抓包计算机双网卡桥接在客户机和交换机中间网卡混杂模式WindowsVista•1.通过单击“开始”按钮,再依次单击“控制面板”、“网络和Internet”、“网络和共享中心”,然后单击“管理网络连接”,进入“网络连接”文件夹。•2.按住Ctrl键,然后点击所有需要桥接的LAN网段。然后,右击所选择局域网连接对象中的一个,然后点击“桥接”。•3.右键单击网桥,然后单击“属性”。如果系统提示您输入管理员密码或进行确认,请键入密码或提供确认。•4.在选项卡的“适配器”下,选中要向网桥中添加的每个连接旁边的复选框,然后单击“确定”。WindowsXP•1.通过单击“开始”按钮,再依次单击“设置”、“控制面板”,打开“网络连接”。•2.按住Ctrl键,然后点击所有需要桥接的LAN网段。然后,右击所选择局域网连接对象中的一个,然后点击“桥接”。•3.右键单击网络桥,然后单击“属性”。•4.在“常规”选项卡的“适配器”下,选中要向网桥中添加的每个连接旁边的复选框,然后单击“确定”。双网卡桥接设置由于网桥工作在网络的第二层,所以两块物理网卡和网桥的IP地址可以设置成和客户不同的网段地址,抓包的计算机本身不能访问客户网络,只是作为一个二层的桥接设备。如果让抓包计算机也能够访问客户网络,只需在网桥上设置一个能够访问客户网络的有效IP地址即可。抓包时可以选择任意一个物理网卡进行抓包,不能选择网桥抓包。网桥启动后计算机不能进入休眠或睡眠状态,否则一旦网桥上的某一个连接断开,Windows将无法恢复,只能完全断电后重启。抓包工作完成后在网桥属性中将桥接的两个网络接口复选框钩掉,确认后再鼠标右键网桥选择禁用,避免网桥启动状态带来的不必要的麻烦。TipsCapturefilter直接输入抓包过滤表达式此filter非彼filterCapturefiltervsDisplayfilter•Capturefilter在抓包之前设置,是第一层过滤器,避免抓到大量的无用数据包。•Displayfilter在抓包后设置,是第二层过滤器,过滤规则更细,帮助迅速准确地找到所需记录。Capturefilter语法Capturefilter语法:ProtocolDirectionHost(s)ValueLogicalOperationsOtherexpression例子:tcpdst10.1.1.180andtcpdst10.2.2.23128Protocol(协议)•可能的值:ether、fddi、ip、arp、rarp、decnet、lat、sca、moprc、mopdl、tcpandudp.•如果没有特别指明是什么协议,则默认使用所有支持的协议。Direction(方向)•可能的值:src、dst、srcanddst、srcordst•如果没有特别指明来源或目的地,则默认使用“srcordst”作为关键字。•例如,host10.2.2.2与srcordsthost10.2.2.2是一样的CapturefilterHost(s)•可能的值:net、port、host、portrange•如果没有指定此值,则默认使用“host”关键字。•例如,src10.1.1.1与srchost10.1.1.1相同LogicalOperations(逻辑运算)•可能的值:not、and、or•否(not)具有最高的优先级。或(or)和与(and)具有相同的优先级,运算时从左至右进行。•例如,nottcpport3128andtcpport23与(nottcpport3128)andtcpport23相同。nottcpport3128andtcpport23与not(tcpport3128andtcpport23)不同。Capturefilter例子tcpdstport3128•显示目的TCP端口为3128的数据包。ipsrchost10.1.1.1•显示来源IP地址为10.1.1.1的数据包。host10.1.2.3•显示目的或来源IP地址为10.1.2.3的数据包。srcportrange2000-2500•显示来源为UDP或TCP,并且端口号在2000至2500范围内的数据包。notimcp•显示除了icmp以外的所有数据包。(icmp通常被ping工具使用)srchost10.7.2.12andnotdstnet10.200.0.0/16•显示来源IP地址为10.7.2.12,但目的地不是10.200.0.0/16的数据包。当使用关键字作为值时,需使用反斜杠“\”。“etherproto\ip”(与关键字“ip”相同)。这样写将会以IP协议作为目标。“ipproto\icmp”(与关键字“icmp”相同)。这样写将会以ping工具常用的icmp作为目标。可以在“ip”或“ether”后面使用“multicast”及“broadcast”关键字。当您想排除广播请求时,nobroadcast就会非常有用。过滤表达式可以参考(实时更新抓包列表)Automaticscrollinginlivecapture(抓包的时候自动滚动到最后一行)Hidecaptureinfodialog(不显示捕获的数据包的数量的统计数据)抓包显示选项Start开始抓包Stop停止抓包Displayfilter此filter非彼filterCapturefiltervsDisplayfilter•Capturefilter在抓包之前设置,是第一层过滤器,避免抓到大量的无用数据包。•Displayfilter在抓包后设置,是第二层过滤器,过滤规则更细,帮助迅速准确地找到所需记录。Displayfilter语法Displayfilter语法:ProtocolString1String2ComparisonoperatorValueLogicalOperationsOtherexpression例子:ftppassiveip==10.2.3.4xoricmp.typeProtocol(协议)•可以使用大量位于OSI模型第2至7层的协议。点击Expression...按钮后,可以看到它们。•比如:IP,TCP,DNS,SSH。DisplayfilterString1,String2(可选项)•协议的子类。•点击相关父类旁的+号,然后选择其子类。DisplayfilterComparisonoperators(比较运算符)•可以使用8种比较运算符。Displayfilter英文写法:C语言写法:含义:eq==等于ne!=不等于gt大于lt小于ge=大于等于le=小于等于containscontains包含matchesmatches符合Displayfilter查找数据数据包中包含Ox11:bb的TCP数据包Logicalexpressions(逻辑运算符)•可以使用4种逻辑运算符。Displayfilter英文写法:C语言写法:含义:and&&逻辑与or||逻辑或xor^^逻辑异或not!逻辑非例子snmp||dns||icmp•显示SNMP或DNS或ICMP数据包。ip.src!=10.1.2.3orip.dst!=10.4.5.6•显示来源不为10.1.2.3或者目的不为10.4.5.6的数据包。ip.src!=10.1.2.3andip.dst!=10.4.5.6•显示来源不为10.1.2.3并且目的IP不为10.4.5.6的数据包。•来源IP:除了10.1.2.3以外任意;同时须满足,目的IP:除了10.4.5.6以外任意。表达式正确表达式错误如果过滤器的语法是正确的,表达式的背景呈绿色。如果呈红色,说明表达式有误由于部分字段的定义存在一个字段包含多个字段的情况.在书写表达式的时候要特别注意其中的逻辑关系.例如ip.addr这个字段包含了ip.src和ip.dst两个字段.如果我们只想要看10.43.54.65的数据包可以这样写:ip.addr==10.43.54.65•等于ip.src==10.43.54.65orip.dst==10.43.54.65但是如果我们想看到除了10.43.54.65以外的数据包,则不能写成ip.addr!=10.43.54.65•等于ip.src!=10.43.54.65orip.dst!=10.43.54.65正确的写法应该是!(ip.addr==10.43.54.65)•等于!(ip.src==10.43.54.65orip.dst==10.43.54.65)或者ip.src!=10.43.54.65andip.dst!=10.43.54.65类似的字段还有tcp.portudp.portether.addr等等.TipsFollowTCPStream•鼠标右键菜单提供的简单TCPStream过滤方法•可以显示应用层数据DisplayfilterFollowTCPStreamDisplayfilterFollowTCPStream•Find•在数据流中查找所需内容•Saveas•以当前所选格式保存显示的数据•Direction•显示数据流的方向•双向、StoD、DtoS•Filteroutthisstream•显示剔除当前显示数据流的其它数据包•Close•关闭当前显示,返回后只显示过滤的数据包Displayfilter察看数据包找到有效数据包•Certificate,clientkeyexchange,certificateverify,changecipherspec展开数据包,找到对于数据段•certificate以相应数据格式拷贝数据•鼠标右键-Copy-Hexstream保存数据•运行16进制编辑器Hexedit•新建一个空文件•paste-Text(Hextext)•保存为后缀.cer的证书文件抓客户端证书演示抓客户端证书演示抓客户端证书演示找到有效数据包•Certificate,clientkeyexchange,certificateverify,changecipherspec展开数据包,找到对于数据段•certificate以相应数据格式拷贝数据•鼠标右键-ExportSelectedPacketBytes保存数据•保存类型:Rawdata•文件名:后缀为.cer直接抓客户端证书演示直接抓客户端证书演示如果在抓包过程中显示滚动太快,可以按这个按钮来启动/停止自动滚动Tips抓到的包中有大量TCPchecksumincorrect,可选用下面两种方式之一解决TCPchecksumoffload–网卡高级选项中禁用此项功能•TCP对整个payload+伪头部会进行校验和计算,填充到tcpchecksum这个值里后发出去,对方收到后按同样算法验算,确定数据是否完整有效。•TCPchecksumoffloadon,在网卡上进行硬件的校验和计算,节省CPU。Wireshark使用的Winpcap工作在NDIS操作系统层面,因此如果checksumoffloadon的话,Wireshark捕获到的包里的checksum的值就是无意义的数据,因为一直要等到这个包交付给网卡之后,才会有真正的tcpchecksum被计算并标记上去。•TCPchecksumoffloadoff:校验和计
本文标题:Wireshark入门教程
链接地址:https://www.777doc.com/doc-7168527 .html