栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

计算机网络实验四

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

计算机网络实验四

《计算机网络》

实验报告

郑州大学信息工程学院

实验四:TCP协议探索和连接管理分析 【实验目的】

1、掌握TCP协议数据格式;

2、掌握TCP首部各字段含义;

3、掌握TCP建立连接和释放连接的过程;

4、熟悉Linux下truncate命令的使用方法;

5、了解Linux中利用nc命令开启远程shell的方法。

【实验步骤与结果记录】

要求:根据实验指导书中的实验内容和步骤,认真完成实验。采取截图、拍照等形式记录自己的实验步骤和结果。(可根据需要加页)

步骤1:创建虚拟网络拓扑。

(1) 本实验和实验三采用相同的网络拓扑。

拓扑结构如图所示:

![](media/image2.png){width="4.278472222222222in" height="4.31875in"}

(2) 利用脚本程序 script3.1可以创建本实验的虚拟网络拓扑。

执行script3.1.sh脚本,创建网络拓扑结构

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LKoKjErB-1637049051206)(media/image3.png)]{width=“4.6715277777777775in” height=“2.7875in”}

步骤2:为虚拟网络拓扑中的各路由器配置静态路由。

(1) 本实验和实验三采用相同的网络拓扑,路由配置也一样。

(2) 利用脚本程序script3.2可以配置各路由器的静态路由。

执行脚本配置静态路由

![](media/image4.png){width="4.972916666666666in" height="1.5104166666666667in"}

步骤3:关闭网卡 offload功能,将运输层封装时需要的计算还给CPU.

(1) 本实验关闭 offload的方法与实验三相同。

(2) 利用脚本程序 script3.3可以关闭网卡 offload功能

执行脚本script3.3关闭网卡的offload

![](media/image5.png){width="3.884027777777778in" height="2.7694444444444444in"}

步骤4:打开两个终端窗口,分别模拟主机ns56A和主机ns57C.

(1) 本实验与实验三一样,利用网络命名空间ns56A和ns57C模拟两台通信

的主机,模拟主机的方法与实验三相同。

(2) 打开一个终端窗口,利用Linux命令bash将本窗口模拟成主机ns56A的

终端.

执行如下 Linux命令

ip netns exec ns56A bash

执行上述命令后,该终端窗口模拟了主机ns56A的终端

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OhRCabyY-1637049051207)(media/image6.png)]{width=“4.949305555555555in” height=“2.504861111111111in”}

(3) 再打开一个终端窗口,利用 Linux命令bash将本窗口模拟成主机ns57C

的终端。

执行如下 Linux命令:

ip netns exec ns57c bash

执行上述命令后,该终端窗口模拟了主机ns57C的终端。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-e01WnAUb-1637049051208)(media/image7.png)]{width=“5.7652777777777775in” height=“1.8333333333333333in”}

步骤5:在主机ns57C上创建一个3500字节长度的文件备用

(1) 在主机ns57C的模拟终端中,执行如下命令,创建一个3500字节长度的

文件,命名为3500.0

truncate -s 3500 3500.0

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FzMYuyKG-1637049051209)(media/image8.png)]{width=“5.764583333333333in” height=“1.8111111111111111in”}

步骤6:在主机ns57C上启动 Wireshark,在接口tap57C上启动抓包。

(1) 新开一个终端窗口,执行如下命令,在主机ns57上后台启动 Wireshark.

ip nets exec ns57c wireshark &

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bBC2YAfR-1637049051211)(media/image9.png)]{width=“5.09375in” height=“0.3958333333333333in”}

(2) 在 Wireshark窗口中选择接口tap57,启动抓包。

![](media/image10.png){width="4.74375in" height="2.6791666666666667in"}

步骤7:在主机ns57C上打开TCP服务程序。在主机nsS6A上打开TCP客户

程序,然后通过网络将主机ns57c上的3500.0文件读取到主机ns56A.

(1) 在主机ns57C的模拟终端中,执行如下命令,在4499端口打开TCP服

务,并开启 shell 程序。

nc -e /bin/sh -lv 4499

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OMZe1tp8-1637049051211)(media/image11.png)]{width=“4.026388888888889in” height=“1.1319444444444444in”}

执行上述命令后,通过TCP连接收到的字符将被发送到主机的shell中执行。

(2) 在主机ns56A的模拟终端中,执行如下命令,打开TCP客户程序,并指

定TCP服务程序的IP地址和端口。

nc 192.168.57.25 4499

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zZM5SYka-1637049051212)(media/image12.png)]{width=“4.229166666666667in” height=“0.75in”}

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5Cb1vLqn-1637049051212)(media/image13.png)]{width=“4.6875in” height=“1.625in”}

(3) 在主机ns56A的模拟终端中,输入如下命令,将该命令被发送到主机

ns57C的shell中,读取文件3500.0,命令执行结果通过TCP连接发送回主机ns56A

cat 3500.0

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-E5Ugw8E7-1637049051213)(media/image14.png)]{width=“4.677083333333333in” height=“0.59375in”}

(4) 文件传输完毕后,在主机ns57C和ns56A上,先后用"Ctrl+C"终止TCP通信。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Obyz68Vj-1637049051213)(media/image15.png)]{width=“5.7659722222222225in” height=“3.4541666666666666in”}

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FxQ2kGUt-1637049051214)(media/image16.png)]{width=“5.666666666666667in” height=“1.96875in”}

步骤8:在 Wireshark中停止抓包,保存抓包结果文件并分析本次TCP通信,

理解TCP报文段格式,理解TCP建立连接和释放连接的过程。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GSiXNJUc-1637049051214)(media/image17.png)]{width=“5.7625in” height=“4.101388888888889in”}

【问题与分析】

1、在步骤7中,操作系统为主机ns56A上的TCP客户程序分配的端口号是多少?截图说明你的分析过程。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cuMJFt6A-1637049051215)(media/image15.png)]{width=“5.7659722222222225in” height=“3.4541666666666666in”}

从服务端接收到的连接可以看到,ns56A的IP为192.168.56.126,端口为53614

  1. 在步骤7中,你一共截获了几个TCP报文段?分析连接建立后,第一个TCP客户发给TCP服务器的报文段,以及第一个TCP服务器发给TCP客户的报文段的首部,截图并填写表4.1和表4.2。

    19个TCP报文段

    经过三次握手,第八号报文即为TCP客户发给TCP服务器的第一个报文

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1VhfcpOb-1637049051215)(media/image18.png)]{width=“5.897222222222222in” height=“3.6368055555555556in”}


表4.1 TCP客户发给TCP服务器的报文段首部

字段名 值

源端口 53614

目的端口 4499

序号(真实序号) 3333308170

确认号(真实确认号) 3470369203

数据偏移 32 bytes

窗口 229

校验和 0x9e85

包含什么选项 NOP,NOP,Timestamps


服务器发给客户的第一个报文为第九号报文

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hgueu53g-1637049051216)(media/image19.png)]{width=“4.875in” height=“3.6180555555555554in”}


表4.2 TCP服务器发给TCP客户的报文段首部

字段名 值

源端口 4499

目的端口 53614

序号(真实序号) 3470369203

确认号(真实确认号) 3333308181

数据偏移 32 bytes

窗口 227

校验和 0xcc25

包含什么选项 NOP,NOP, Timestamps


3、在你的实验结果中,TCP建立连接时,双方是否使用了MSS选项,主机ns56A和主机ns57C发送给对方的MSS选项值时多少?ns57C将3500字节数据发送给ns56A用了几个报文段?每个报文段中包含多少字节的数据?请计算ns57C的有效最大报文段长度,并验证是否与实验结果一致?截图说明你的分析过程。

使用了

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CFHv5Waj-1637049051216)(media/image20.png)]{width=“4.54375in” height=“2.7888888888888888in”}

ns56A发送给ns57C时的MSS值为 1460 bytes

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Ws6oJfRH-1637049051216)(media/image21.png)]{width=“4.7131944444444445in” height=“2.8805555555555555in”}

Ns67C发送给ns56A时的MSS值为 1460 bytes

发送长度为3500字节数据用了三个报文段

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0MrDGfMb-1637049051217)(media/image22.png)]{width=“5.7625in” height=“1.5875in”}

有两个数据长度为1448的报文段和一个数据长度为604的报文段

最大有效报文段长度

由上述分析,可知RMSS = RMTU - 40 = 1460

MSS_S = 发送方MTU - 20 = 1480

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-12qIksIy-1637049051217)(media/image23.png)]{width=“2.7604166666666665in” height=“4.395138888888889in”}

由截图分析知,TCP首部长度为32,IP首部选项长度为0

EMSS = min (RMSS + 20 , MSS_S) - TCPhdsize - IPhdsize

= min (1460 + 20, 1480) - 32 - 0

= 1448

与实验结果中发送最大报文段长度相等

4、在你的实验结果中,通信双方使用窗口扩大选项了么?双方的窗口移位值时各是多少?双方的窗口各扩大了多少倍?截图说明你的分析过程。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fzUqmjAn-1637049051218)(media/image24.png)]{width=“4.083333333333333in” height=“2.65625in”}

客户端使用了窗口扩大选项

移位值是7,扩大了128倍

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UxMCnYbF-1637049051218)(media/image25.png)]{width=“4.208333333333333in” height=“2.6979166666666665in”}

服务端使用了窗口扩大选项

移位值为7,扩大了128倍

  1. 在步骤7中,你截获TCP建立连接和释放连接的报文段了么?分析建立连接和释放连接的几个报文段,截图并填写表4.3和表4.4。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EzX4TiK6-1637049051219)(media/image26.png)]{width=“5.761805555555555in” height=“3.1479166666666667in”}

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4j1lpdyF-1637049051219)(media/image27.png)]{width=“5.275in” height=“4.316666666666666in”}

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XfKuO3hz-1637049051219)(media/image28.png)]{width=“5.7652777777777775in” height=“3.625in”}


表4.3 TCP建立连接的分析

报文段序号 SYN位 ACK位 序号(真实序号) 确认号(真实确认号)

1 1 0 3333308169

2 1 1 3470369202 3333308170

3 0 1 3333308170 3470369202


[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xcwfqByt-1637049051220)(media/image29.png)]{width=“5.758333333333334in” height=“3.3375in”}

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QH9kIyPj-1637049051220)(media/image30.png)]{width=“5.764583333333333in” height=“3.1777777777777776in”}

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9jUoCn13-1637049051221)(media/image31.png)]{width=“5.7659722222222225in” height=“3.147222222222222in”}

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oJeNntp7-1637049051221)(media/image32.png)]{width=“5.763888888888889in” height=“3.2319444444444443in”}


表4.4 TCP释放连接的分析

报文段序号 FIN位 ACK位 序号(真实序号) 确认号(真实确认号)

16 1 1 3470372703 3333308181

17 0 1 3333308181 3470372704

18 1 1 3333308181 3470372704

19 0 1 3470372704 3333308182


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/513526.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号