Ethereal中分析协议

  1. 在主操作系统中使用ping 192.168.126.128 –t 的命令,来ping 虚拟机。好,我们来看看抓取的数据包。


    Ethereal中分析协议_第1张图片
    图1-5 ARP 广播包
    从Ethereal 的第一栏中,我们看到这是个ARP 解析的广播包,如图1-5。由于这个版本的Ethereal 使用的是Ethernet II 来解码的,我们先看看Ethernet II 的封装格式。如下图1-6: 


    Ethereal中分析协议_第2张图片
    图1-6 以太网封包格式
    注意这个和802.3 是有区别的,802.3 的封包格式如图1-7:


    Ethereal中分析协议_第3张图片
    图1-7 802.3 封包格式
    尽管Ethernet II 和802.3 的封包格式不同,但Ethereal 在解码时,都是从“类型”字段来判断一个包是IP 数据报还是ARP 请求/应答或RARP 请求/应答。
    从Ethernet II 知道了是ARP 解析以后,我们来看看Ethereal 是如何判断是ARP 请求呢还是应答的。
    我们先复习一下以太网的ARP 请求和应答的分组格式,如图1-8。



    图1-8 分组格式
    从上图中我们了解到判断一个ARP 分组是ARP 请求还是应答的字段是“op”,当其值为0×0001 时是请求,为0×0002 时是应答。如图1-9、1-10。


    Ethereal中分析协议_第4张图片
    图1-9 ARP 请求 


    Ethereal中分析协议_第5张图片
    图1-10 ARP 应答 
    我们看看第三个帧的内容。第三帧“类型”显示是IP 数据报,如图1-11: 


    Ethereal中分析协议_第6张图片
    图1-11 ICMP ping 包
    同样,我们先复习一下IP 包的封包格式,如图1-12:


    Ethereal中分析协议_第7张图片
    图1-12 IP 封包格式
    关于IP 封包各字段的内容及意义,这里就不再详述了,可以参见三卷本的TCP/IP, www.cnpaf.net 的“资源共享”版里有下载。
    我们主要看看TTL,从图1-13 和1-14 的比较来看,图1-13 中的TTL 是128,而图1-14 中的TTL 却是64,什么原因呢?
    原来图1-13 中的主机是Windows2000 ,而1-14 中的主机是Linux,看来不同操作系统的TTL 是不同的。


    Ethereal中分析协议_第8张图片
    图1-13 Windows 主机的TTL 


    Ethereal中分析协议_第9张图片
    图1-14 Linux 主机的TTL 
    好了我们来看看ICMP 报文吧,先看看它的封包格式,如图1-15: 


    Ethereal中分析协议_第10张图片
    图1-15 ICMP 封包类型
    关于ICMP 的“类型”和“代码”字段,这里有一个表,如图1-16: 


    Ethereal中分析协议_第11张图片
    图1-16 ICMP 报文类型
    ICMP 报文,我们主要对照图1-16 看抓包的情况。 


    Ethereal中分析协议_第12张图片
    图1-17 ping 请求


    Ethereal中分析协议_第13张图片
    图1-18 ping 应答

你可能感兴趣的:(Ethereal中分析协议)