赞
踩
1、掌握UDP协议数据格式;
2、掌握UDP首部各字段含义;
3、了解网卡offload技术;
4、熟悉Linux下nc命令的使用方法。
要求:根据实验指导书中的实验内容和步骤,认真完成实验。采取截图、拍照等形式记录自己的实验步骤和结果。(可根据需要加页)
步骤1:创建虚拟网络拓扑。
1.使用script3.1.sh 脚本,创建如图所示的网络拓扑结构。
在Linux中,该虚拟网络拓扑的实现如图所示。
运行脚本,创建虚拟网络拓扑。
2.执行Linux命令,ip netns list 查询已经建立的NS列表,在所有NS内执行ifconfig -a 命令查看NS内的网络接口配置,执行Linux命令 brctl show 查看交换机桥接状态,验证网络拓扑。
步骤2:为虚拟网络拓扑中的各路由器配置静态路由。
1. 使用script3.2.sh 脚本,为各路由器配置静态路由。
步骤3:关闭网卡offload功能,将运输层封装时需要的计算还给CPU
1. 使用script3.3.sh 脚本,关闭网卡offload功能。
步骤4:打开两个终端窗口,分别模拟主机ns56A和主机ns57C。
1.打开一个终端窗口,利用Linux命令bash将本窗口模拟成主机ns56A的终端 执行以下命令 。
ip netns exec ns56A bash
执行上述命令后,Linux将在网络命名空间ns56A中开启bash交互,之后输入的Linux命令均在ns56A中执行,相当于模拟了主机ns56A的终端。
2.然后输入 ifconfig -a ,确认是否成功模拟成主机ns56A。
为了避免混淆,可以改变终端窗口名字。
3. 再打开一个终端窗口,利用Linux命令bash将本窗口模拟成主机ns57C的终端 执行以下命令
ip netns exec ns57C bash
模拟主机ns57C的终端。
4.然后输入ifconfig -a ,确认是否成功模拟成主机ns57C,并修改终端名。
步骤5:在主机ns57C上启动Wireshark,在接口tap57C上启动抓包。
1.新开一个终端窗口,执行以下命令,在主机ns57C上后台启动Wireshark
ip netns exec ns57C wireshark &
2.在Wireshark窗口中选择接口tap57C,启动抓包。
步骤6:在主机ns57C上打开UDP服务程序,在主机ns56A上打开UDP客户程序,与ns57C上的UDP服务程序通信。
1.在主机ns57C的模拟终端中,执行如下命令,在4499端口打开UDP服务程序 nc -lvu 4499 。
2.在主机ns56A的模拟终端中,执行如下命令,打开UDP客户程序,并指定UDP服务程序的IP地址和端口 。
nc -u 192.168.57.254 4499
3.在主机ns56A的模拟终端中,输入任意一行字符,然后回车确认,将输入的字符发给给主机ns57C。
4.在主机ns57C的模拟终端中,输入任意一行字符,然后回车确认,将输入的字符发给给主机ns56A。
步骤7:在Wireshark中停止抓包,保存抓包结果并分析本次UDP通信,理解UDP用户数据报格式
1.停止抓包,保存抓包结果,开始分析数据报。
1.在步骤6中,你从主机ns56A发给主机ns57C的一行字符是什么?主机ns57C收到了么?在Wireshark截获的UDP用户数据报中能看到么?截图说明你的分析过程。
发送的字符是hello。
主机ns57C收到了。
在Wireshark截获的UDP用户数据报中能看到,如下图所示。
2.在步骤6中,操作系统为主机ns56A上的UDP客户程序分配的端口号是多少?这个端口属于哪种类型的端口?主机ns57C上的服务程序什么时候能获知这个端口号?截图说明你的分析过程。
如图所示,分配的端口号是37744,该端口属于临时端口。
当ns57C接收到来自ns57A的UDP报文的时候知道的,此时得到源端口号为37744,并且在后面ns57C向ns57A发送数据时作为目的端口号。
3.在你的实验结果中,一共截获了几个UDP用户数据报?分析一个UDP客户发给UDP服务器的,一个UDP服务器发给UDP客户的用户数据报首部,截图并填写表3.1和表3.2。
一共截获了两个UDP用户数据报。
按照上图填写数据。
表3.1 UDP客户发给UDP服务器的用户数据报首部 | |
字段名 | 值 |
源端口 | 37744 |
目的端口 | 4499 |
长度 | 14 |
校验和 | 0x2325 |
按照上图填写数据。
表3.2 UDP服务器发给UDP客户的用户数据报首部 | |
字段名 | 值 |
源端口 | 4499 |
目的端口 | 37744 |
长度 | 11 |
校验和 | 0xf49d |
4、在上一个问题中,UDP客户发给UDP服务器的用户数据报校验通过了么?请给出接收方校验这个用户数据报的方法,并手动计算校验和。说明你的分析和计算过程。
打开检测校验和功能,即可得知是否通过校验和
由图可知该用户数据报校验通过了。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。