【我的Android进阶之旅】使用Wireshark来分析TCP三次握手

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wzy901213/article/details/82684777

TCP的三次握手

TCP的三次握手大家都不陌生,下面用wireshark这个工具抓包,进一步的说明三次握手的细节。
这里写图片描述

1.由客户端发起tcp连接的请求,此时客户端发送一条报文,其中包含SYN标志位,将SYN设置为1; 以及seq位。设seq = x ; 该报文段成为SYN报文段

2.服务器收到这条报文后,返回给客户端一条报文,包含Ack位,SYN,以及seq位。 其中ack = x+1; SYN = 1; seq = y。该报文段称为SYNACK报文段

3.当客户端收到SYNACK报文段之后,客户端需要再给服务器发送另外一个报文段,进行确认。该报文段的SYN = 0, seq = x +1, ack = y+1;

使用wireshark工具

在浏览器中键入:https://blog.csdn.net/wzy901213 我的个人博客中心。

在这里,我们要知道我们所浏览的网页地址IP是多少,打开cmd命令行,去ping我们的浏览地址
blog.csdn.net

这里写图片描述

现在我们知道了咱们的目标ip地址是39.36.132.69

我们给wireshark设置过滤规则ip.addr==39.36.132.69 。

![这里写图片描述](https://img-blog.csdn.net/20180913112254342?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3d6eTkwMTIxMw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)

可以看到上方有三条tcp报文,就是tcp三次握手的具体过程。仔细看tcp报文中的信息。咱们现在只看关于这些报文里面seq,ack,SYN 的值

![这里写图片描述](https://img-blog.csdn.net/20180913113437411?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3d6eTkwMTIxMw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)

第一条TCP报文:
这里写图片描述

这里写图片描述

其中将seq设置为0 , SYN = 1 , ack = 0;

第二条TCP报文:
这里写图片描述
这里写图片描述
其中ack = 1(第一条报文中的seq+1) , SYN = 1 , 再将seq设置为1;

第三条TCP报文:
这里写图片描述
这里写图片描述

可以很明显的看到 ack = 1第二条报文中seq+1) ; seq =1(第一条报文中seq+1) ; SYN=0;

这样用wireshark工具抓包就可以很清晰的了解tcp三次握手的过程

TCP的三次握手

猜你喜欢

转载自blog.csdn.net/wzy901213/article/details/82684777