当前位置: 首页 > news >正文

tcpdump 常用用法

简要记录下tcpdump用法

监控某个ip上的某个端口的流量

tcpdump  -i enp0s25  tcp port 5432 -nn -S

各个参数作用

-i enp0s25 指定抓包的网卡是enp0s25

-nn  显示ip地址和数字端口 ,如果只 -n 则显示ip,但是端口为services文件中的服务名

如果一个n也不指定,则显示域名以及服务名

port 抓取该端口中的信息

-S TCP的seq以及ack显示绝对值

更详细的参数信息可以参考

Linux系统 tcpdump 抓包命令使用教程 - 知乎

https://www.cnblogs.com/wongbingming/p/13212306.html

客户端telnet  192.186.100.138 命令下,服务器端显示如下

tcp三步握手SYN=1 seq=3967800135
客户端处于SYN_SEND状态
16:38:20.116860 IP 192.168.100.182.7109 > 192.168.100.51.5432: Flags [S], seq 3967800135, win 64240, options [mss 1460,nop,wscale 8,nop,nop,sackOK], length 0SYN=1 ACK=1 seq=504220911(随机值) ack=3967800136(上一步seq+1), 服务器端处于SYN_RCVD,这步完成后客户端的状态为ESTABLISHED
16:38:20.116915 IP 192.168.100.51.5432 > 192.168.100.182.7109: Flags [S.], seq 504220911, ack 3967800136, win 65535, options [mss 1460,nop,nop,sackOK,nop,wscale 6], length 0ACK=1 ack=504220912(上一步的seq+1),完成这步后服务器端状态也变成了ESTABLISHED16:38:20.117243 IP 192.168.100.182.7109 > 192.168.100.51.5432: Flags [.], ack 504220912, win 8212, length 0tcp结束链接,由于tcp属于全双工通讯,所以关闭实际上分为4步骤,此例子由于使用telnet链接的5432端口的pg服务,因此服务器端超时后,服务器端主动关闭链接,因此前两步为关闭服务器
服务器发起断开链接FIN=1 ACK=1 seq=504220912 完成后服务器状态为FIN_WAIT_1,客户端状态为CLOSE_WAIT
16:39:20.118195 IP 192.168.100.51.5432 > 192.168.100.182.7109: Flags [F.], seq 504220912, ack 3967800136, win 1024, length 0客户端回复ACK=1 ack=504220913(上一步seq+1),完成后服务器的状态为FIN_WAIT_2, 客户端状态为LAST_ACK
16:39:20.118419 IP 192.168.100.182.7109 > 192.168.100.51.5432: Flags [.], ack 504220913, win 8212, length 0
此时服务器端已经不能再发送应用数据给客户端了,但是客户端是可以发送数据给服务器端的,因此现在的状态处于半双工状态后两步是关闭客户端客户端发送断开链接请求FIN=1 ACK=1 ack=504220913(上一步的ack) seq=3967800136(随机),此时服务器端状态为TIME_WAIT
16:39:20.118551 IP 192.168.100.182.7109 > 192.168.100.51.5432: Flags [F.], seq 3967800136, ack 504220913, win 8212, length 0服务器端回复请求ACK=1 ack=3967800137 (上一步seq+1), 此时客户端的状态为CLOSED,服务器的状态TIME_WAIT等待2MSL时间后变成CLOSED
16:39:20.118575 IP 192.168.100.51.5432 > 192.168.100.182.7109: Flags [.], ack 3967800137, win 1024, length 0

借用网络上的一个图

当然这个图是客户端先发起关闭链接请求,跟实际测试例子不同,因此仅仅为了参考使用。

http://www.lryc.cn/news/308502.html

相关文章:

  • Opencv实战(5)平滑处理与常见函数
  • 音频PCM介绍与运用
  • 计算机专业大学四年应该如何规划(Java方向)
  • 算法D27|回溯算法4| 93.复原IP地址 78.子集 90.子集II
  • C++实现XOR加解器
  • Kubernetes的Sevice管理
  • C# 高阶语法 —— Winfrom链接SQL数据库的存储过程
  • vue3+vite+ts配置多个代理并解决报404问题
  • 开创未来:探索OpenAI首个AI视频模型Sora的前沿技术与影响
  • Redis---持久化
  • 从 Flask 切到 FastAPI 后,起飞了!
  • 状态码转文字!!!(表格数字转文字)
  • Pytorch 复习总结 4
  • YOLOv9中加入SCConv模块!
  • 代码随想录算法训练营第四十七天丨198. 打家劫舍、​ 213. 打家劫舍 II​、337. 打家劫舍 III
  • 龙蜥Anolis 8.4 anck 安装mysql5.7
  • 【踩坑】修复xrdp无法关闭Authentication Required验证窗口
  • python学习笔记 - 标准库常量
  • 视频和音频使用ffmpeg进行合并和分离(MP4)
  • 02| JVM堆中垃圾回收的大致过程
  • R语言数据可视化之美专业图表绘制指南(增强版):第1章 R语言编程与绘图基础
  • 网站添加pwa操作和配置manifest.json后,没有效果排查问题
  • MongoDB聚合运算符:$cosh
  • Jenkins配置在远程服务器上执行shell脚本(两种方式)
  • Java+SpringBoot,打造社区疫情信息新生态
  • js ES6判断字符串是否以某个字符串开头或者结尾startsWith、endsWith
  • 预研项目完成后小批量验证(技术变更流程)
  • Bert-as-service 实战
  • 微信小程序(四十七)多个token存储
  • 机器学习(II)--样本不平衡