[Linux] tcpdump命令

关于tcpdump的参考:
官网->  https://www.tcpdump.org/
tcpdump抓包使用小结         https://www.jianshu.com/p/21b5cbba60d7
一文搞定tcpdump基本用法  https://blog.csdn.net/chinaltx/article/details/87469933
tcpdump的用法                    https://www.cnblogs.com/shichangming/p/10964238.html
tcpdump抓包分析                 https://www.cnblogs.com/pyng/p/9698723.html

================================================================= 

参数:
-w  保持到指定的文件
-r  从文件中读取,在读取文件的时候
-i  指定监听的网卡,缺省显示第一块网卡
-n  显示IP,不把网络地址换成名字(不进行域名解析,速度更快)
-nn 显示IP和Port
-v  显示详细信息
-s  指定数据包大小,缺省是65535
-t  不显示时间 ,缺省是显示时间戳
-c  获取数据包数量,缺省不限制,需要用Ctrl+c来终止
-D  列出可以抓包的网络接口
-E  通过给定的密钥解密 IPSEC 数据流。


协议 + [传输方向] + 类型 + 具体数值
类型:host、net、port、ip proto、protochain等
传输方向:src、dst、dst or src、dst and src等
协议:ip、arp、rarp、tcp、udp、icmp等

[例] 

1.协议
过滤抓取协议类型是ospf的数据包
tcpdump -i ens192 ip proto ospf
1)直接在tcpdump中使用的协议关键字只有ip、igmp、tcp、udp、icmp、arp等,其他的传输层协议没有可直接识别的关键字
2)可以使用关键字proto或者ip proto加上在/etc/protocols中能够找到的协议或者相应的协议编号进行过滤。
3)更加高层的协议,例如http协议需要用端口号来过滤

2.host、net、port
抓取包含10.192.54.133/24网段的数据包
tcpdump -i ens192 -vnn net 10.192.54.133/24
tcpdump -i ens192 -vnn net 10.192.54.133 mask 255.255.255.0

tcpdump tcp -i eth1 -t -c 100 and dst port ! 22 and src net 10.192.54.133/24
只抓经过接口eth1的tcp包
-t : 不显示时间戳
dst port ! 22 : 不抓取目标端口是22的数据包
src net 10.192.54.133/24: 数据包的源网络地址为10.192.54.133/24

3.选项-w和-r
把抓取的数据包记录存到/tmp/file.pcap文件中,当抓取100个数据包后就退出程序
tcpdump -i ens192 -c 100 -w /tmp/file.pcap

从/tmp/file.pcap记录中读取tcp协议的数据包。
tcpdump -i ens192 -r /tmp/file.pcap tcp
从/tmp/file.pcap记录中读取包含10.192.54.133的数据包。
tcpdump -i ens192 -r /tmp/file.pcap host 10.192.54.133

[root@recv135 ~]# tcpdump -i ens192 src host 10.192.54.133 and port 11162 -w test.pcap
tcpdump: listening on ens192, link-type EN10MB (Ethernet), capture size 262144 bytes
1 packet captured
1 packet received by filter
0 packets dropped by kernel
[root@recv135 ~]#
[root@recv135 ~]# tcpdump -r test.pcap
reading from file test.pcap, link-type EN10MB (Ethernet)
18:31:54.467155 IP 10.192.54.133.41590 > recv135.suncacao-jmxmp: UDP, length 764
[root@recv135 ~]#
[root@recv135 ~]# tcpdump -i ens192 src host 10.192.54.133 and port 11162 -ttttnnvvS
tcpdump: listening on ens192, link-type EN10MB (Ethernet), capture size 262144 bytes
2019-11-19 18:36:27.015900 IP (tos 0x0, ttl 64, id 26152, offset 0, flags [DF], proto UDP (17), length 792)
    10.192.54.133.46605 > 10.192.54.135.11162: [udp sum ok] UDP, length 764

1 packet captured
1 packet received by filter
0 packets dropped by kernel
[root@recv135 ~]#
扫描二维码关注公众号,回复: 8942432 查看本文章
发布了89 篇原创文章 · 获赞 1 · 访问量 4839

猜你喜欢

转载自blog.csdn.net/wy_hhxx/article/details/103148490