前言:前两天被面试到了,复习一下。以ping baidu.com 为例
一、过滤规则
过滤ip: ip.src eq【ip地址】
来源 ip.dst eq 【ip地址】
目的 ip.addr eq【ip地址】
都显示
过滤端口:tcp/udp.port eq【端口号】
来源跟目的的端口都显示 tcp.port eq 80 or udp.port eq 80
tcp.dstport == 80
// 只显tcp协议的目标端口80
tcp.srcport == 80
// 只显tcp协议的来源端口80
tcp.port >= 1 and tcp.port <= 80
范围过滤
过滤协议:tcp udp arp icmp http smtp ftp dns msnms ip ssl bootp
排除用!
tcp:可靠有连接 三次握手四次挥手 有重传机制和序列号确认等机制 还可进行流量控制和拥塞阻塞 适用于数据准确性高如文件传输和网页浏览等
udp:无连接不可靠 速率快延迟低效率高 如音视频通信等不要求数据准确性
arp:解析ip到mac地址,用于局域网内不跨路由通信
icmp:网络控制报文,ip和路由器之间传递控制信息如ping命令诊断检测
http:web服务端和客户端传输超文本协议,包含get和post
smtp:传输邮件时候用的
ftp:传文件协议
dns:域名协议
ssl:安全协议 网站加密等
bootp:无盘工作站的配置 后被dhcp取代
过滤mac地址:
eth.dst == A0:00:00:04:C5:84
// 过滤目标mac
eth.src eq A0:00:00:04:C5:84
// 过滤来源mac
eth.dst==A0:00:00:04:C5:84
eth.dst==A0-00-00-04-C5-84
eth.addr eq A0:00:00:04:C5:84
// 过滤来源MAC和目标MAC都等于A0:00:00:04:C5:84的
长度过滤:udp.length == 26
这个长度是指udp本身固定长度8加上udp下面那块数据包之和
http长度过滤:http.request.method == “GET”
二、左下角
(1)Frame: 物理层的数据帧概况
(2)Ethernet II: 数据链路层以太网帧头部信息
(3)Internet Protocol Version 4: 互联网层IP包头部信息
(4)Transmission Control Protocol: 传输层T的数据段头部信息,此处是TCP
(5)Hypertext Transfer Protocol: 应用层的信息,此处是HTTP协议
三、右下角
十六进制数 以及对应的ASCII编码后的字符解释
从图中右侧 ASCII 字符 “f・.z・.\・.P・..E・<DV・.・.・.・.] abcdefghijklmnopqrstuvwabcdefghi” 来看:
- “abcdefghijklmnopqrstuvwabcdefghi” 这部分连续可打印字符可能是填充数据或随机生成的数据内容。在 ICMP(ping 使用的协议)数据包中,除了必要的头部信息外,数据部分内容往往是随意填充的,用于测试网络连通性和往返时间等,不一定有特定语义。
- 其他不可打印字符 “f・.z・.\・.P・..E・<DV・.・.・.・.]” 是协议头部或填充数据对应的非 ASCII 可显示内容,主要用于协议层面的解析和处理,比如携带 ICMP 头部信息、以太网帧头部信息等,不具备直观的可读含义。
这些 ASCII 字符对于理解 ping 操作的网络连通性等核心目的作用不大,更多是数据包原始内容的呈现,重点还是在协议头部信息等方面来分析网络状况。