技术专栏
数据包抓取工具tcpdump移植和使用
1. 概述
tcpdump是一个用于抓取网络数据包的命令行工具,与带界面的Wireshark一样,基于libpcap库构建。
tcpdump的设计目标是帮你分析包头(比如Tcp包头,udp包头),同时你可以根据包头,用它支持的表达式,过渡出你感兴趣的包,从而方便你自己处理包中数据。
2.移植
分为下面三步:
(1)设置环境变量:
a. vi configure.env
b. 输入以下内容:
ARCH=xxxxxx #xxxxx为你的编译器目录
CC=${ARCH}-gcc
CXX=${ARCH}-g++
AR=${ARCH}-ar
export ARCH
export CC
export CXX
export AR
c. 保存后,配置当前shell:
source configure.env
(2)移植libpcap
a. 下载libpcap-1.0.0.tar.gz;
b. 解压:
tar xvf libpcap-1.0.0.tar.gz
c. 进入解压后的libpcap-1.0.0目录,配置项目:
ac_cv_linux_vers = 2.6.35 ./configure -host=arm-linux --with-pcap=linux --prefix=xxxxxx
#2.6.35为目标linux版本,xxxxxx为你想安装的位置
d.编译、安装:
make; make install
(3)移植tcpdump
a.下载tcpdump-4.0.0.tar.gz;
b.解压:
tar xvf tcpdump-4.0.0.tar.gz
c.进入解压后的tcpdump-4.0.0目录,配置项目:
ac_cv_linux_vers = 2.6.35 ./configure -host=arm-linux --prefix=xxxxxx #选项含义同上
d.编译:
make; #此步骤会提示"undefined reference to 'ip6_print'"
e.注释掉print-enc.c文件中的下面这段:
case AF_INET6:
ip6_print(p, length);
break;
f.编译、安装:
make; make install #完成后,可以安装目录的sbin中找到tcpdump
3.使用
(1)使用格式如下:
命令 [无参数标志] [有参数标志] [表达式]
Usage: tcpdump [-aAdDefIKlLnNOpqRStuUvxX] [ -B size ] [ -c count ]
[ -C file_size ] [ -E algo:secret ] [ -F file ] [ -G seconds ]
[ -i interface ] [ -M secret ] [ -r file ]
[ -s snaplen ] [ -T type ] [ -w file ] [ -W filecount ]
[ -y datalinktype ] [ -z command ] [ -Z user ]
[ expression ]
(2)常用标志:
-x #打印数据的16进制值,每行16个字节
-X #同上,还在每行右边显示对应的ASCII的值,如果值可显示的话
-s 0 #打印时,包括包中的数据,默认只打包的帧头(比如:tcp的帧头)
(3)常用表达式
a. 单个表达式间存在空格时,要用引号包起来
b. 表达式间要用and/or/not连接起来
src/dst #指定下一个参数(host/net/port) 作用于本地,或是远程
host/net 192.168.1.150 #指定我们关心的主机、IP等
tcp/udp port 3333 #指定我们关心的tcp或udp端口
and or not #表达式间的与、或、非
& || ! #表达式内部的与、或、非
c.示例
./tcpdump -X -s 0 host 192.168.1.153 and "tcp[tcpflags] & tcp-push != 0" and src port 3333
\#抓住所有从192.168.1.153的3333端口发过来的tcp数据包(不要同步包、结束包等),并将包头和数据的16进制值与ASCII值打印到控制台
4)详细使用说明
标志说明:http://www.tcpdump.org/tcpdump_man.html
表达式说明:http://www.tcpdump.org/manpages/pcap-filter.7.html
声明:本文内容由易百纳平台入驻作者撰写,文章观点仅代表作者本人,不代表易百纳立场。如有内容侵权或者其他问题,请联系本站进行删除。
红包
点赞
收藏
评论
打赏
- 分享
- 举报
评论
0个
手气红包
暂无数据
相关专栏
-
浏览量:2616次2017-11-23 12:45:20
-
浏览量:3772次2017-11-21 13:44:59
-
浏览量:2153次2018-06-27 17:06:49
-
浏览量:601次2024-02-23 17:34:00
-
浏览量:12681次2020-12-10 00:29:44
-
浏览量:5594次2021-05-31 17:08:23
-
浏览量:5076次2021-05-31 17:00:35
-
浏览量:2880次2019-12-05 17:38:34
-
浏览量:1859次2020-09-23 16:09:26
-
浏览量:8062次2020-08-19 22:30:28
-
浏览量:2600次2020-12-02 10:04:49
-
浏览量:3370次2020-12-01 11:05:09
-
浏览量:2386次2018-03-03 22:36:39
-
浏览量:3609次2020-08-18 15:39:19
-
浏览量:3937次2024-01-19 13:48:15
-
浏览量:473次2023-10-07 10:21:44
-
浏览量:1823次2020-05-08 10:06:42
-
浏览量:1792次2019-09-06 09:28:53
-
浏览量:728次2023-04-17 15:49:51
置顶时间设置
结束时间
删除原因
-
广告/SPAM
-
恶意灌水
-
违规内容
-
文不对题
-
重复发帖
打赏作者
程序员小贾
您的支持将鼓励我继续创作!
打赏金额:
¥1
¥5
¥10
¥50
¥100
支付方式:
微信支付
打赏成功!
感谢您的打赏,如若您也想被打赏,可前往 发表专栏 哦~
举报反馈
举报类型
- 内容涉黄/赌/毒
- 内容侵权/抄袭
- 政治相关
- 涉嫌广告
- 侮辱谩骂
- 其他
详细说明
审核成功
发布时间设置
发布时间:
请选择发布时间设置
是否关联周任务-专栏模块
审核失败
失败原因
请选择失败原因
备注
请输入备注