抓包的神!Tcpdump就得这样用

科技   2024-11-16 21:00   福建  
 行业前沿 |  技术干货  | 报告解读 | 职业发展


晚上好,我的网工朋友。


在网络管理和故障排除中,抓包工具是不可或缺的工具之一。Tcpdump作为一个强大的命令行网络抓包工具,以其轻量级、高效和跨平台的特点,成为了许多网络工程师的首选。


无论是诊断网络问题、分析流量模式,还是检测安全威胁,Tcpdump都能提供丰富的功能和灵活的使用方式。


也因此,Tcpdump是抓包的“神”也是一点不为过。今天就来详细讲讲Tcpdump,看完又学到了。


今日文章阅读福利: tcpdump离线安装


需要tcpdump离线安装的朋友,添加好友,发送暗号“离线(建议复制一下直接发哈),限时获取资源哈。


 前20名粉丝 免费获得资源 




01

Tcpdump概述


Tcpdump是一个强大的命令行网络抓包工具,用于捕获和分析网络流量。


它可以在各种操作系统上运行,包括Linux、macOS和Windows(通过WinPcap或Npcap)。Tcpdump通过监听网络接口,捕获经过的数据包,并将其显示在终端或保存到文件中,供后续分析使用。


 01  特点


  • 轻量级:Tcpdump占用资源少,运行速度快,适合在资源受限的环境中使用。

  • 高效:支持丰富的过滤表达式,可以精确捕获感兴趣的流量,减少不必要的数据。

  • 跨平台:支持多种操作系统,包括Linux、macOS和Windows。

  • 支持多种协议:Tcpdump支持多种网络协议,如TCP、UDP、ICMP、ARP等,可以捕获和分析各种类型的网络流量。

  • 灵活的输出格式:提供多种输出格式选项,可以根据需要调整输出的详细程度。



02

Tcpdump的基本用法


 01  安装


Tcpdump在大多数Linux发行版和macOS中都有预装,如果没有预装,可以通过包管理器轻松安装。


在Linux上安装:
  • Debian/Ubuntu:

sudo apt-get install tcpdump
  • CentOS/RHEL:

sudo yum install tcpdump
  • Fedora:

sudo dnf install tcpdump

在macOS上安装:

  • 使用Homebrew:

brew install tcpdump

在Windows上安装:

  • 下载并安装WinPcap或Npcap,然后下载Tcpdump的Windows版本并解压到指定目录。


 02  基本命令


抓取所有流量:

tcpdump

抓取指定接口的流量:

tcpdump -i eth0

抓取指定主机的流量:

tcpdump host 192.168.1.1

抓取指定端口的流量:

tcpdump port 80

抓取指定协议的流量:

tcpdump ip or tcp or udp

 03  常用选项


 -i:指定要监听的网络接口。

 -n:不解析主机名和端口号,直接显示数字形式。

 -nn:不解析主机名和端口号,也不解析协议名称。

 -c:指定要捕获的数据包数量。

 -w:将捕获的数据包保存到文件中,而不是显示在终端。

 -r:从文件中读取捕获的数据包。



03

高级用法


 01  过滤表达式


基本过滤表达式:


  • 源地址:捕获来自特定主机的流量。

tcpdump src 192.168.1.1
  • 目的地址:捕获发往特定主机的流量。

tcpdump dst 192.168.1.1
  • 端口:捕获特定端口的流量。

tcpdump port 80
  • 协议:捕获特定协议的流量。

tcpdump ip or tcp or udp


复合过滤表达式:


  • 逻辑与:同时满足多个条件。

tcpdump src 192.168.1.1 and port 80
  • 逻辑或:满足任意一个条件。

tcpdump src 192.168.1.1 or dst 192.168.1.2
  • 逻辑非:排除特定条件。

tcpdump not port 22

 02  保存和读取抓包文件


保存抓包文件:

tcpdump -i eth0 -w capture.pcap

读取抓包文件:

tcpdump -r capture.pcap

环形缓冲区:

  • 使用环形缓冲区可以自动将数据包保存到多个文件中,每个文件达到指定大小后会自动切换到下一个文件。

tcpdump -i eth0 -C 10 -W 5 -w capture.pcap
  • -C:每个文件的最大大小(单位为MB)。

  • -W:文件的数量。


 03  流量统计


统计流量:

捕获指定数量的数据包后停止。

tcpdump -c 100

统计特定协议的流量:

捕获并统计特定协议的数据包。

tcpdump -c 100 tcp

简化的输出:

使用-q选项可以减少输出的详细程度,使输出更加简洁。

tcpdump -q



 文章声明 

本文由网络工程师俱乐部独家发布,请在获得账号管理员授权后转载。


 策划制作 

策划:老杨    丨   监制:一为

编辑:星星    丨   图片来源:Pexels及网络,侵删




熟悉老杨的小伙伴都知道,只要有空,我答疑都是免费的,不收任何粉丝的红包。

但是,为了筛选出一批真正想跟老杨学习网络的粉丝小友,给你提供一个干净高效的网络圈子,真正回归技术交流;由资深网工老杨带头发起网工圈子[网络工程师俱乐部]知识星球,面向ICT行业技术从业者们。

与1000+网工一起分享技术、经验、资源。星球内有海量项目案例分享、大佬实战经验分享、1v1有问必答、网工岗位内推、还有N多实用工具和资料干货,囊括了各种技术知识点行业数据分析报告等等。

如果你对网络感兴趣,或者正在学习网络,欢迎加入我的网工高质量交流圈。


 如何加入知识星球?

 知识星球定价:原价299元/年,限时福利价99元/年
 识别下方二维码加老杨为好友
 好友验证请备注“知识星球”
 加入前记得找老杨领取200元星球优惠券(数量有限)

网络工程师俱乐部
这里是「全国网络工程师聚集地」。提供最新的网工技术经验、最前沿的行业资讯以及大佬心路历程,欢迎关注。
 最新文章