实验:WiresharkLab:IP一、实验目的1、会用wireshark分析IP协议,对IP协议有个全面的学习与了解2、学习ip报文段的各领域。二、实验器材1、接入internet的计算机主机。2、抓包工具wreshark和截图工具三、实验内容实验操作实践与步骤Capturingpacketsfromanexecutionoftraceroute1、打开wireshark开始抓包.2、启动pingpiotter,在“addresstotracewindow”中输入“gaia.cs.umass.edu”,在“#oftimetotrace”中输入3,选中”edit”选项,接着选中“advanceoptions”—packetoption输入56,按OK键,在按Trace键。3、接着在packetoption中输入2000,按OK键,在按Resume键。4、再在packetoption中输入3500,按OK键,在按Resume键。5、停止抓包。截图如下:Alookatthecapturedtrace1.SelectthefirstICMPEchoRequestmessagesentbyyourcomputer,andexpandtheInternetProtocolpartofthepacketinthepacketdetailswindow.WhatistheIPaddressofyourcomputer?答:第一条ICMP回显请求报文如下:由上图可知,我的电脑的IP地址是10.135.87.1902.WithintheIPpacketheader,whatisthevalueintheupperlayerprotocolfield?答:由可知,上层协议的值为1.3.HowmanybytesareintheIPheader?HowmanybytesareinthepayloadoftheIPdatagram?Explainhowyoudeterminedthenumberofpayloadbytes.答:由上图可知IP数据报首部长度为20比特,有效载荷量为56-20=36比特。4.HasthisIPdatagrambeenfragmented?Explainhowyoudeterminedwhetherornotthedatagramhasbeenfragmented.由上图知flag和offset都为0,所以没有分片。5.WhichfieldsintheIPdatagramalwayschangefromonedatagramtothenextwithinthisseriesofICMPmessagessentbyyourcomputer?通过多次分析,如上两图所示,标识、TTL、首部检验和都在不断变化。6.Whichfieldsstayconstant?Whichofthefieldsmuststayconstant?Whichfieldsmustchange?Why?答:分析可知保持不变的有:版本号首部长度,服务类型,标志,偏移,上层协议,目的和源IP地址必须保持不变的是:版本号源和目的IP地址必须改变的是:标识,首部检验和7.Describethepattern(模式)youseeinthevaluesintheIdentificationfieldoftheIPdatagram。由上两图可知标识字段模式:每一个IP数据报头部的标识号域都不一样,每次加1。8.WhatisthevalueintheIdentificationfieldandtheTTLfield?答:标识字段的值是:1417TTL字段的值是:359.DothesevaluesremainunchangedforalloftheICMPTTL-exceededrepliessenttoyourcomputerbythenearest(firsthop)router?Why?答:没有改变。因为每一个固定的路由器都有一个固定的TTL值,所以最近的那个路由器回复的给主机所有的ICMPTTL-exceeded的TTL的值都不会改变。10.FindthefirstICMPEchoRequestmessagethatwassentbyyourcomputerafteryouchangedthePacketSizeinpingplottertobe2000.HasthatmessagebeenfragmentedacrossmorethanoneIPdatagram?由上图可知,当数据包大小改为2000后数据报被分成2片。11.PrintoutthefirstfragmentofthefragmentedIPdatagram.WhatinformationintheIPheaderindicatesthatthedatagrambeenfragmented?WhatinformationintheIPheaderindicateswhetherthisisthefirstfragmentversusalatterfragment?HowlongisthisIPdatagram?由数据报首部的flag不为0可知数据报被分片,flag为0时表示这是最后一片,offset为0表示这是第一片。这个IP数据报的长度为1480+500+20=2000字节。12.PrintoutthesecondfragmentofthefragmentedIPdatagram.WhatinformationintheIPheaderindicatesthatthisisnotthefirstdatagramfragment?Arethemorefragments?Howcanyoutell?答:从这片的片内偏移量不为0可以看出这不是第一片,又因为这片的标志位已经是0所以它已经是最后一片。13.WhatfieldschangeintheIPheaderbetweenthefirstandsecondfragment?NowfindthefirstICMPEchoRequestmessagethatwassentbyyourcomputerafteryouchangedthePacketSizeinpingplottertobe3500.截图如下:答:改变的头部字段有:数据报总长度,标识,片偏移,首部检验和等14.Howmanyfragmentswerecreatedfromtheoriginaldatagram?答:由上图可知是3个。15.WhatfieldschangeintheIPheaderamongthefragments?答:IP数据报首部改变的有:数据报总长度,标识,片偏移,首部检验和。四、实验总结通过本次实验,在详细分析IP协议,IP数据报的过程中,进一步对IP协议以及IP数据报有了更深的理解。更加细致深入地了解了IP数据报首部的各个字段的含义,明白了IP分片的具体情况。