姓名:张越
班级:计算1811
学号:201821121006
1. 实验目的
1.使用路由器连接不同的网络
2.使用命令行操作路由器
3.通过抓取HTTP报文,分析TCP连接建立的过程
2.实验内容
1.使用Packet Tracer,正确配置网络参数,通过抓取HTTP数据包,分析TCP连接建立过程。建立网络拓扑结构。
2.配置参数实验内容
3.抓包
4.分析数据包
3.1 建立网络拓扑结构
3.2配置相应参数
配置路由器参数:
首先点击路由器打开CLU,接着在命令行中依次输入不同的命令;
根据指令:Router>enable 进入特权模式
Router#config t 进入全局配置模式
Router(config)#interface Fa 0/0 进入以太网接口0/0
Router(config-if)#ip address 192.168.1.7 255.255.255.0 添加IP地址
Router(config-if)#no shutdown 激活端口
Router(config-if)#exit返回上一级
Router(config)#interface Fa 0/1 进入以太网接口0/1
Router(config-if)#ip address 192.168.2.7 255.255.255.0 添加IP地址
Router(config-if)#no shutdown 激活端口
抓包,分析TCP建立过程
TCP建立连接示意图:
分析序号和确认号的变化
第一次握手:客户端首先创建传输控制模块,建立TCP连接;这时首部中的同步位SYN=1,同时选择一个初始序号seq=x
第二次握手:在服务端向客户端发送的确认报文中,SYN位和ACK位都置为1,确认号是ack=x+1,同时也为自己选择一个初始序号seq=y
第三次握手:客户端受到确认报文后,还要给服务端回应;ACK置为1,确认号ack=y+1,而自己的序号seq=x+1
为什么连接建立要三次握手?
答:防止已经失效的连接请求报文段突然又传到服务端,因而产生错误”,这种情况是:一端(client)A发出去的第一个连接请求报文并没有丢失,而是因为某些未知的原因在某个网络节点上发生滞留,导致延迟到连接释放以后的某个时间才到达另一端(server)B。本来这是一个早已失效的报文段,但是B收到此失效的报文之后,会误认为是A再次发出的一个新的连接请求,于是B端就向A又发出确认报文,表示同意建立连接。如果不采用“三次握手”,那么只要B端发出确认报文就会认为新的连接已经建立了,但是A端并没有发出建立连接的请求,因此不会去向B端发送数据,B端没有收到数据就会一直等待,这样B端就会白白浪费掉很多资源。如果采用“三次握手”的话就不会出现这种情况,B端收到一个过时失效的报文段之后,向A端发出确认,此时A并没有要求建立连接,所以就不会向B端发送确认,这个时候B端也能够知道连接没有建立。
原文地址:https://www.cnblogs.com/hltz/p/11679086.html