网站首页 > 博客文章 正文
俗话说,工欲善其事,必先利其器。在Linux服务器网络运维中,经常会遇到需要获取网卡通讯报文分析的场景。在报文抓取方面,tcpdump是一款非常好用的工具,本文主要介绍tcpdump的实战应用,帮助大家快速定位和解决问题。
一、安装tcpdump
1、在线安装
直接通过yum安装即可
yum install tcpdump
2、离线安装
局域网环境下,无法通过yum安装,需要通过安装包离线安装。
步骤一、下载安装包
可从官网直接下载,依赖两个安装包libcap-1.5.3.tar.gz、tcpdump-4.5.1.tar.gz
libcap-1.5.3.tar.gz
https://www.tcpdump.org/release/libpcap-1.5.3.tar.gz
tcpdump-4.5.1.tar.gz
https://www.tcpdump.org/release/tcpdump-4.5.1.tar.gz
步骤二、解压并安装
1、安装libpcap
tar -zxvf libpcap-1.5.3.tar.gz
cd libpcap-1.5.3
./configure
sudo make install
2、安装tcpdump
tar -zxvf tcpdump-4.5.1.tar.gz
cd tcpdump-4.5.1
./configure sudo
make install
3、常用参数
tcpdump支持针对网络层、协议、主机、网络或端口的过滤。以下是一些常用参数和使用案例。
-i 指定网卡
任意网卡: tcpdump -i any
指定网卡: tcpdump -i eth1
-c 指定抓包数量,当流量比较大时,靠人工CTRL+C还是抓的太多,可能会导致服务器宕机,可以用-c参数指定抓多少个包
tcpdump -c 1000
-nn 单个 n 表示不解析域名,直接显示 IP;两个 n 表示不解析域名和端口,方便查看 IP 和端口号。
-w 将抓取的报文写入文件,为wireshark提供分析
host 指定主机(源地址、目的地址的包都会抓取)
案例1、抓取指定网卡报文,并写入tcpdump.pcap文件
tcpdump -i em3 -nn host 192.168.0.100 -c 10000 -w tcpdump.pcap
案例2、抓取任意网卡报文,并写入tcpdump.pcap文件
tcpdump -i any -nn host 192.168.0.100 -c 10000 -w tcpdump.pcap
二、常用命令
1、按主机过滤
抓取所有经过eth1,目的或源地址是192.168.1.1的网络数据
tcpdump -i eth1 host 192.168.1.1
指定源地址
tcpdump -i eth1 src host 192.168.1.1
指定目的地址
tcpdump -i eth1 dst host 192.168.1.1
2、按端口过滤
抓取所有经过eth1,目的或源端口是25的网络数据
tcpdump -i eth1 port 25
指定源端口
tcpdump -i eth1 src port 25
指定目的端口
tcpdump -i eth1 dst port 25
3、按网络过滤
所有发往网段 192.168.x.x 或从网段 192.168.x.x 发出的流量
tcpdump -i eth1 net 192.168
抓取所有从 192.168.x.x网段发出的流量
tcpdump -i eth1 src net 192.168
抓取所有发往 192.168.x.x网段的流量
tcpdump -i eth1 dst net 192.168
4、按协议过滤
tcpdump -i eth1 arp
tcpdump -i eth1 ip
tcpdump -i eth1 tcp
tcpdump -i eth1 udp
tcpdump -i eth1 icmp
5、按照dns过滤
tcpdump -i eth1 udp dst port 53
三、抓取实战
1、综合过滤
抓取所有经过eth1,目的地址是192.168.1.254或192.168.1.200端口是80的TCP数据
tcpdump -i eth1 '((tcp) and (port 80) and ((dst host 192.168.1.254) or (dst host 192.168.1.200)))'
抓取所有经过eth1,目标MAC地址是00:01:02:03:04:05的ICMP数据
tcpdump -i eth1 '((icmp) and ((ether dst host 00:01:02:03:04:05)))'
抓取所有经过eth1,目的网络是192.168,但目的主机不是192.168.1.200的TCP数据
tcpdump -i eth1 '((tcp) and ((dst net 192.168) and (not dst host 192.168.1.200)))'
2、抓取大于600字节的包
tcpdump -i eth1 'ip[2:2] > 600'
这些常用命令,可以解决实际运维过程中80%的问题,如果有定制的分析需求,可以通过man tcpdump查看更多参数说明和用法。
猜你喜欢
- 2024-11-05 抓包工具fiddler几个使用技巧(抓包工具fiddler使用方法)
- 2024-11-05 APP不给抓包,看我怎么bypass(抓包如何不被app检测到)
- 2024-11-05 快速锁定Bug!掌握Wireshark等抓包技术,提升测试效率
- 2024-11-05 分析网络协议利器,使用虚拟网卡实时抓iPhone网络通讯包的方法
- 2024-11-05 Fiddler移动端代理抓包(HTTPS篇)(fiddler抓包https协议)
- 2024-11-05 charles-抓包工具的使用(charles抓包工具详细教程)
- 2024-11-05 手机、电脑网络抓包实战教程(小白教程)!
- 2024-11-05 ibm system x3650 m2 服务器通过局域网抓包获取IP地址
- 2024-11-05 为什么Fiddler等软件能抓包Https网络数据?
- 2024-11-05 常用的抓包工具包含电脑端及手机端
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- powershellfor (55)
- messagesource (56)
- aspose.pdf破解版 (56)
- promise.race (63)
- 2019cad序列号和密钥激活码 (62)
- window.performance (66)
- qt删除文件夹 (72)
- mysqlcaching_sha2_password (64)
- ubuntu升级gcc (58)
- nacos启动失败 (64)
- ssh-add (70)
- jwt漏洞 (58)
- macos14下载 (58)
- yarnnode (62)
- abstractqueuedsynchronizer (64)
- source~/.bashrc没有那个文件或目录 (65)
- springboot整合activiti工作流 (70)
- jmeter插件下载 (61)
- 抓包分析 (60)
- idea创建mavenweb项目 (65)
- vue回到顶部 (57)
- qcombobox样式表 (68)
- vue数组concat (56)
- tomcatundertow (58)
- pastemac (61)
本文暂时没有评论,来添加一个吧(●'◡'●)