抓包
首先是去下载一个wireshark,这里就不放连接了(很久前下载的,网址不记得了)。
启动之后,选择自己要抓包的网络:
我电脑连的是wifi,所以我这里抓包选的是WLAN。如果你插的是网线,看你用的是本地连接几,一般是本地连接1,直接双击进去,这时候就开始抓包了。
首先,我们要确认我们抓包网站的ip,这里用nslookup查看,这里要查看的原因是我们要分析tcp的包,要知道连接的两台机器的IP,不然你连IP都不知道还这么分析呢?(虽然你可以随便抓一个来分析);这里我们访问百度:
后面我们就可以使用ping测试工具或者是直接浏览器打开百度,打开之后(页面响应以后)立马回到wireshark停止捕获。这时候就可以去看我们抓到的包了。
分析
首先,我们在主页会有一堆捕获的包,这些并不是都有用的。
因此我们还要过滤掉没用的包。
在上面的框里输入你要过滤的包就好了。
比如:ip.addr==14.215.177.38&&tcp(满足条件的留下)
然后,按下enter就可以过滤出自己需要的包了。
分析tcp三次握手的话,就要找出三次握手的包,见下图:
这里我们发送第一个包是SYN包,所以找到SYN包。(要看看目的ip地址和源ip地址是不是一致)source(源)和Destination(目的)下面的项,下面的是Protocol、length和into的内容。
但是,有两个,这里可能是由于延时太长,客户端再次发送了一个请求包,这里随便选择一个即可。
这里打开tcp头(Transmission Control Protocol),你可以看到,发送的SYN的序号是931319532,这时候要注意,我们tcp的三次握手的包的序列号是有关联的,所以,你在分析的时候,不仅要看目的ip地址和源ip地址是否对应的,还要序号和确认号相关。序号在哪,你去看看tcp包头就知道了。那后面的包我们就得找确认号为931319533的包来分析。我们可以看到底下的两个包都是[SYN,ACK],那究竟是哪一个呢?这时候就要打开包查看下确认号是否一致。
这时候我们可以看到acknowledge number(确认号)是931319533,这时候,就确认是服务器发回来的确认包。最后再发回去的包就自行分析吧。
四次挥手也是类似的,这里就不再赘述了。