0

0

Linux 网络抓包在问题定位中的应用

冷漠man

冷漠man

发布时间:2026-02-11 19:44:02

|

243人浏览过

|

来源于php中文网

原创

tcpdump抓不到包主因是网卡选错或权限不足;需用ip link确认活跃网卡,sudo运行,容器场景应在宿主机抓docker0/cni0;Wireshark打不开pcap需检查时间戳精度和snaplen;分析失败时按SYN/SYN-ACK/Client Hello序列判断DNS、路由、防火墙或TLS兼容性问题。

linux 网络抓包在问题定位中的应用

tcpdump 抓不到包?先确认网卡和权限

很多情况下不是 tcpdump 不工作,而是它根本没看到流量。最常见的是抓了错误的网卡,或者没用 sudo 权限——非 root 用户默认无法访问原始套接字。

  • ip link showifconfig 看当前活跃网卡名(比如 eth0ens33enp0s3),别直接写 lo 就以为是本机通信
  • tcpdump -i any 看起来省事,但内核 3.10+ 默认禁用,会报错 tcpdump: any: No such device exists;得加 -Z root 或改 sysctl(不推荐)
  • 容器或 Kubernetes 场景下,宿主机上抓 docker0cni0 才能看到 Pod 间通信,进容器里抓往往只能看到 loopback 流量

Wireshark 打不开 tcpdump 的 .pcap?检查文件格式和截断长度

tcpdump 默认用 libpcap 格式,Wireshark 理论上能读,但实际常因两个参数出问题:时间戳精度和 snaplen。

  • 老版本 tcpdump(-J 参数强制用纳秒:tcpdump -J -w trace.pcap
  • 如果只看到 TCP 头没有 payload,大概率是 -s 截断太小(如 -s 68 只抓 IP+TCP 头),Wireshark 解析时误判为异常包;建议至少 -s 1500(MTU 大小)或直接 -s 0 抓全帧
  • file trace.pcap 确认格式是否为 tcpdump capture file (little-endian) - version 2.4 (Ethernet, capture length 1500),否则可能是 stdout 重定向出错或磁盘满导致写坏

抓 HTTPS 流量只能看到 TLS 握手?别指望解密,但可以定位连接阶段问题

HTTPS 加密层之下,TCP 连接行为完全可见。tcpdump 虽不能解密应用层内容,但能精准暴露握手失败、重传、RST、零窗等关键信号。

传媒公司模板(RTCMS)1.0
传媒公司模板(RTCMS)1.0

传媒企业网站系统使用热腾CMS(RTCMS),根据网站板块定制的栏目,如果修改栏目,需要修改模板相应的标签。站点内容均可在后台网站基本设置中添加。全站可生成HTML,安装默认动态浏览。并可以独立设置SEO标题、关键字、描述信息。源码包中带有少量测试数据,安装时可选择演示安装或全新安装。如果全新安装,后台内容充实后,首页才能完全显示出来。(全新安装后可以删除演示数据用到的图片,目录在https://

下载
  • 过滤特定域名请求:HTTPS 没有明文 Host,但 SNI 在 Client Hello 里(TLSv1.2+),可用 tcpdump -i eth0 -nn -A 'port 443 and tcp[((tcp[12:1] & 0xf0) >> 2):4] = 0x16030100' 粗略匹配,不过更稳的是抓三次握手 + RST/ACK 模式
  • 快速判断是 DNS、TCP 还是 TLS 层失败:
    — 无 SYN → 查 DNS 或客户端路由
    — 有 SYN 无 SYN-ACK → 服务端未响应(防火墙、进程未监听、端口错)
    — 有 SYN-ACK 但后续全是重传 → 网络丢包或中间设备干扰
    — Client Hello 后立刻 RST → 服务端 TLS 版本/密码套件不兼容
  • 避免在高流量接口上 -w 全量写盘,用 -C 100 -W 5 自动轮转 100MB 文件,防止磁盘打爆

用 tshark 替代 tcpdump 做轻量实时分析

当只需要看连接状态、HTTP 方法或 TLS 版本,又不想保存文件再开 Wireshark,tshark 是更直接的选择——它是 Wireshark 的命令行版,解析能力更强,且支持字段提取。

  • tshark -i eth0 -Y "http.request.method == \"GET\"" -T fields -e ip.src -e http.host -e http.request.uri 可实时打印 GET 请求的来源、域名和路径
  • 注意 -Y(显示过滤)和 -f(捕获过滤)区别:前者在抓完后过滤,后者在内核态过滤,性能差一个数量级;高频场景务必用 -f "port 443" 先筛
  • 输出含中文或特殊字符时加 -G column-formats 查字段名,避免写错 http.user_agent 写成 http_ua 导致空输出
  • 别在生产环境长期跑 tshark -i any -Y "tcp",它比 tcpdump 更吃 CPU,尤其开启解析时

真正难的不是抓到包,是确定该在哪抓、以什么粒度抓、以及怎么把一屏乱码和几百兆文件对应到具体一次超时或重定向。网络栈每一层都可能静默吞掉包,而 tcpdump 只反映它看到的那一层——这个“看到”,本身就依赖你对网卡、命名空间、eBPF、甚至虚拟交换机转发逻辑的理解。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
硬盘接口类型介绍
硬盘接口类型介绍

硬盘接口类型有IDE、SATA、SCSI、Fibre Channel、USB、eSATA、mSATA、PCIe等等。详细介绍:1、IDE接口是一种并行接口,主要用于连接硬盘和光驱等设备,它主要有两种类型:ATA和ATAPI,IDE接口已经逐渐被SATA接口;2、SATA接口是一种串行接口,相较于IDE接口,它具有更高的传输速度、更低的功耗和更小的体积;3、SCSI接口等等。

1370

2023.10.19

PHP接口编写教程
PHP接口编写教程

本专题整合了PHP接口编写教程,阅读专题下面的文章了解更多详细内容。

318

2025.10.17

php8.4实现接口限流的教程
php8.4实现接口限流的教程

PHP8.4本身不内置限流功能,需借助Redis(令牌桶)或Swoole(漏桶)实现;文件锁因I/O瓶颈、无跨机共享、秒级精度等缺陷不适用高并发场景。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2208

2025.12.29

java接口相关教程
java接口相关教程

本专题整合了java接口相关内容,阅读专题下面的文章了解更多详细内容。

36

2026.01.19

堆和栈的区别
堆和栈的区别

堆和栈的区别:1、内存分配方式不同;2、大小不同;3、数据访问方式不同;4、数据的生命周期。本专题为大家提供堆和栈的区别的相关的文章、下载、课程内容,供大家免费下载体验。

409

2023.07.18

堆和栈区别
堆和栈区别

堆(Heap)和栈(Stack)是计算机中两种常见的内存分配机制。它们在内存管理的方式、分配方式以及使用场景上有很大的区别。本文将详细介绍堆和栈的特点、区别以及各自的使用场景。php中文网给大家带来了相关的教程以及文章欢迎大家前来学习阅读。

586

2023.08.10

length函数用法
length函数用法

length函数用于返回指定字符串的字符数或字节数。可以用于计算字符串的长度,以便在查询和处理字符串数据时进行操作和判断。 需要注意的是length函数计算的是字符串的字符数,而不是字节数。对于多字节字符集,一个字符可能由多个字节组成。因此,length函数在计算字符串长度时会将多字节字符作为一个字符来计算。更多关于length函数的用法,大家可以阅读本专题下面的文章。

938

2023.09.19

Golang云原生微服务Kubernetes_Golang怎么集成Kubernetes开发云原生服务
Golang云原生微服务Kubernetes_Golang怎么集成Kubernetes开发云原生服务

Golang云原生微服务Kubernetes (K8s) 是指 使用 Go 语言(Golang)编写的云原生微服务,并利用 Kubernetes 平台进行容器化部署、自动化管理、弹性伸缩和高效编排的一整套现代应用架构方案。

27

2025.12.22

2026春节习俗大全
2026春节习俗大全

本专题整合了2026春节习俗大全,阅读专题下面的文章了解更多详细内容。

68

2026.02.11

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 8.9万人学习

Git 教程
Git 教程

共21课时 | 3.5万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号