WireShark 抓取Telnet包

用Python的Asyncore.dispatcher写了个小服务器,客户端使用telnet连接上去之后一直显示连接丢失,想抓下包看看

 

抓包结果如下:

image

 

服务器在192.168.1.102:8080 端口监听

从第二行是客户端telnet的请求,SYN seq = 0

第三行是同样的请求,表明这个包被重传或者通过其它路由到达了8080端口。

第四行是服务器对客户端连接请求的确认 SYN+ACK seq = 0 ,ack = 1

第五行是路由器发送过来的,表明当前的包有更优化的路由传递。

紧接着是客户端的ACK,三次握手表明连接建立

稍后,8080端口发送了一个FIN关闭请求,35660确认这个FIN请求,ACK=2

正常的关闭需要四次请求,客户端这边需要再发送一次FIN,但是抓的包中没有看到

在抓的包中看到8080端口发送过来的RST请求,表明服务端因为异常需要提前关闭连接,客户端收到RST之后可以不发送ACK确认,因为服务器端不会等待这个确认信息直接关闭连接了。

 

posted @   兜兜有糖的博客  阅读(3067)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示