Wireshark网络抓包与过滤教程

需积分: 20 1 下载量 151 浏览量 更新于2024-09-11 收藏 286KB PDF 举报
Wireshark是一款强大的网络抓包工具,用于捕获和分析网络数据包,帮助诊断网络问题。它提供了丰富的过滤规则,使得用户能够精准地筛选出所需的信息。 1. 过滤IP Wireshark允许你根据来源IP或目标IP进行过滤。例如,`ip.srceq192.168.1.107` 或 `ip.dsteq192.168.1.107` 可以分别过滤出源IP或目标IP为指定地址的数据包。同时,`ip.addreq192.168.1.107` 会显示包含该IP的所有数据包。在输入过滤规则时,如果语法正确,过滤器编辑框会显示绿色。 2. 过滤端口 你可以通过端口号来过滤数据包。比如,`tcp.porteq80` 会显示所有TCP端口80的通信,`tcp.port==80` 和 `tcp.porteq2722` 也是同样的效果。使用 `tcp.porteq80orudp.porteq80` 可同时过滤TCP和UDP的80端口。`tcp.dstport==80` 和 `tcp.srcport==80` 分别针对TCP协议的目标端口和源端口。此外,还可以设定端口范围,如 `tcp.port>=1andtcp.port<=80`。 3. 过滤协议 Wireshark支持多种协议过滤,包括 `tcp`、`udp`、`arp`、`icmp`、`http`、`smtp`、`ftp`、`dns`、`msnms`、`ip`、`ssl`、`oicq`、`bootp` 等。如果你希望排除特定协议,如ARP,可以使用 `!arp` 或 `notarp`。 4. 过滤MAC地址 你可以过滤以太网头部的MAC地址。例如,`eth.dst==A0:00:00:04:C5:84` 会过滤目标MAC为指定地址的数据包,而 `eth.srceqA0:00:00:04:C5:84` 过滤源MAC。同时,`eth.addreqA0:00:00:04:C5:84` 会筛选出源和目标MAC都匹配的数据包。MAC地址可以使用冒号或短横线分隔。 5. 包长度过滤 根据数据包的长度进行过滤也是可能的。如 `udp.length==26` 指的是UDP数据包(包括固定长度的头部和数据部分)的总长度。`tcp.len>=7` 适用于IP数据包(不包括TCP头部),`ip.len==94` 是指从IP头部到数据尾部的总长度,而 `frame.len==119` 则表示整个数据包的总长度,包括以太网头部。 通过这些过滤规则,Wireshark让用户能够深入洞察网络流量,有效地定位和解决网络问题。在实际操作中,可以根据具体需求组合使用这些规则,以达到更精确的过滤效果。