一直研究lighttpd源码,顺便看下网络编程,不说太多,开始吧

第一步 设置wireshark过滤规则

tcp.port eq 81 ,然后开始捕捉

第二步  http://183.61.16.168:81/ 打开浏览器访问这个地址

第三步,分析数据

2636 17.482576000 183.27.235.172 183.61.16.168 TCP 74 4197 > hosts2-ns [SYN] Seq=0 Win=8192 Len=0 MSS=1440 WS=4 SACK_PERM=1

2638 17.498859000 183.61.16.168 183.27.235.172 TCP 74 hosts2-ns > 4197 [SYN, ACK] Seq=0 Ack=1 Win=14600 Len=0 MSS=1460 SACK_PERM=1 WS=512

2639 17.498994000 183.27.235.172 183.61.16.168 TCP 62 4197 > hosts2-ns [ACK] Seq=1 Ack=1 Win=66240 Len=0

以上就是tcp三次握手,

2696 18.028389000 183.27.235.172 183.61.16.168 TCP 463 4197 > hosts2-ns [PSH, ACK] Seq=1 Ack=1 Win=66240 Len=401

这条就是发送http请求包了

长度为401

2698 18.051721000 183.61.16.168 183.27.235.172 TCP 62 hosts2-ns > 4197 [ACK] Seq=1 Ack=402 Win=15872 Len=0

这个就是服务器响应给浏览器的数据,服务器说收到了请求,然后把ack加上401等于402返回给客户端,如果不返回,浏览器会重发给服务器

2699 18.052968000 183.61.16.168 183.27.235.172 TCP 289 hosts2-ns > 4197 [PSH, ACK] Seq=1 Ack=402 Win=15872 Len=227

到这条,服务器返回首页给浏览器,长度为227 这里可以发现只有有数据,Len肯定是大于0的

2721 18.234494000 183.27.235.172 183.61.16.168 TCP 403 4197 > hosts2-ns [PSH, ACK] Seq=402 Ack=228 Win=66012 Len=341

浏览器偷偷的发起第二个请求,get /favicon.ico 这个请求,

2722 18.259705000 183.61.16.168 183.27.235.172 TCP 541 hosts2-ns > 4197 [PSH, ACK] Seq=228 Ack=743 Win=16896 Len=479

服务器说没有这个文件,然后返回给客户端

2728 18.514549000 183.61.16.168 183.27.235.172 TCP 541 [TCP Retransmission] hosts2-ns > 4197 [PSH, ACK] Seq=228 Ack=743 Win=16896 Len=479

又重发了一次

2729 18.514663000 183.27.235.172 183.61.16.168 TCP 74 4197 > hosts2-ns [ACK] Seq=743 Ack=707 Win=65532 Len=0 SLE=228 SRE=707

浏览器说收到了,给服务器一个回答

3180 23.263527000 183.61.16.168 183.27.235.172 TCP 62 hosts2-ns > 4197 [FIN, ACK] Seq=707 Ack=743 Win=16896 Len=0

服务器主动关闭连接,发送一个fin

3181 23.263637000 183.27.235.172 183.61.16.168 TCP 62 4197 > hosts2-ns [ACK] Seq=743 Ack=708 Win=65532 Len=0

浏览器说收到了

3587 27.508143000 183.27.235.172 183.61.16.168 TCP 62 4197 > hosts2-ns [FIN, ACK] Seq=743 Ack=708 Win=65532 Len=0

然后浏览器发送一个fin

3590 27.523692000 183.61.16.168 183.27.235.172 TCP 62 hosts2-ns > 4197 [ACK] Seq=708 Ack=744 Win=16896 Len=0

然后服务端说收到了

其实有个问题就是 seq和ack有点混乱,一时加这个,一时加那个

wireshark http过程的更多相关文章

  1. wireshark使用过程中,卡死未响应

    原因 : 未知 处理办法:1.重装wireshark ----------无效果 2.卸载有道词典-----------成功,wireshark正常运行,重装有道词典该问题必现,所以问题由有道词典引起 ...

  2. Wireshark:couldn't run dumpcap in child process(附带Linux下探索过程)

    之前都是直接使用Kali里面安装好的Wireshark和Win下的,Ubuntu的来个小计 PS:解决方法不重要,我觉得更重要的是这个摸索的过程 解决方法 # 安装wireshark sudo apt ...

  3. Wireshark协议分析工具应用

    一.Wireshark简介与安装 Wireshark(前称Ethereal)是一个网络封包分析软件.网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料.Wireshark使用W ...

  4. Wireshark数据抓包教程之安装Wireshark

    Wireshark数据抓包教程之安装Wireshark 安装Wireshark 通过上一节的学习可以根据自己的操作系统来下载安装Wireshark了.本书中已开发版1.99.7(中文版)为主,下面介绍 ...

  5. Ubuntu16.04安装wireshark

    Wireshark是一个非常强大的抓包工具,适用于各种场合,安装配置也简单.这里仅对在Ubuntu上的安装做介绍. 首先通过apt安装WireShark: $ sudo apt-add-reposit ...

  6. unbutu下wireshark编译安装(已更新)

    今天下午在ubuntu下进行编译安装wireshark,过程中出了很多错误,但最终安装成功了,这里写下自己的安装步骤和方法,有参考博文的安装编译方法,也有自己的总结和心得. 1 安装编译工具 $sud ...

  7. Wireshark漫谈(一)

    可能有人会说,一个软件的安装有什么好谈的,无非就是"同意,同意,同意......是,是,是"诸如此类的选项.的确,Wireshark软件的安装步骤是挺简单的,不过本文不是想谈安装步 ...

  8. Ubuntu 16.04安装Wireshark进行抓包

    技巧: 1.可以通过tcpdump抓取某个网卡的包,然后输出日志文件,通过Wireshark进行分析. 2.可以设置Wifi热点,然后通过手机连接这个热点,然后进行tcpdump的分析,然后输出日志文 ...

  9. 使用WireShark进行网络流量安全分析

    WireShark的过滤规则 伯克利包过滤(BPF)(应用在wireshark的捕获过滤器上) ** 伯克利包过滤中的限定符有下面的三种:** Type:这种限定符表示指代的对象,例如IP地址,子网或 ...

随机推荐

  1. Mahout学习之Mahout简介、安装、配置、入门程序测试

    一.Mahout简介 查了Mahout的中文意思——驭象的人,再看看Mahout的logo,好吧,想和小黄象happy地玩耍,得顺便陪陪这位驭象人耍耍了... 附logo: (就是他,骑在象头上的那个 ...

  2. iOS开发网络篇-NSURLSession介绍

    NSURLSession: 作用: 和NSURLConnection一样 1.负责发送请求,建立客户端和服务器的连接发送数据给服务器 2.并收集来自服务器的响应数据 步骤: 1.创建NSURLSess ...

  3. Failed to execute goal.....webxml attribute is required...

    maven在打包项目的时候报错 Failed to execute goal org.apache.maven.plugins:maven-war-plugin:2.2:war (default-wa ...

  4. OpenCV码源笔记——RandomTrees (二)(Forest)

    源码细节: ● 训练函数 bool CvRTrees::train( const CvMat* _train_data, int _tflag,                        cons ...

  5. 进程间通信的WM_COPYDATA的使用

    http://blog.csdn.net/ao929929fei/article/details/6316174 接收数据的一方 ON_WM_COPYDATA() afx_msg BOOL OnCop ...

  6. 终极解决方案:windows10开机黑屏,死机

    windows10开机黑屏,死机一般情况都是由于双显卡中的独立显卡驱动造成的! 那么试着升级一下你的BIOS吧!一定要在官网下载你对应的BIOS驱动,然后双击安装,这个时候就别再动机子了,让他自己刷新 ...

  7. 配置IIS服务器,APK文件下载

    解决方法:在IIS的MIME类型中添加扩展名.apk,MIME类型application/vnd.android即可

  8. MYSQL的分区字段,必须包含在主键字段内

    MYSQL的分区字段,必须包含在主键字段内   MYSQL的分区字段,必须包含在主键字段内 在对表进行分区时,如果分区字段没有包含在主键字段内,如表A的主键为ID,分区字段为createtime ,按 ...

  9. Java [Leetcode 58]Length of Last Word

    题目描述: Given a string s consists of upper/lower-case alphabets and empty space characters ' ', return ...

  10. 【经典DFS】NYOJ-1058-部分和问题

    [题目链接:NYOJ-1058] 看到题目难度是2,所以想也没想,直接循环比较...结果果然... 是错的. #include<cstdio> #include<cstring> ...