欢迎访问linux宝典,请记住本站唯一域名:www.linuxbaodian.com

tcpdump命令

来源:原创    更新时间:2018-09-28 14:13:24    作者:管理员    浏览:1476
  • 命令描述
Linux tcpdump命令用于倾倒网络传输数据。
执行的tcpdump指令可列出经过指定网络界面的数据包文件头,在Linux的操作系统中,你必须是系统管理员。
  • 命令语法
tcpdump [选项] [参数]
  • 命令选项
-a尝试将网络和广播地址转换成名称。
-c <数据包数目>收到指定的数据包数目后,就停止进行倾倒操作。
-d把编译过的数据包编码转换成可读的格式,并倾倒到标准输出。
-dd把编译过的数据包编码转换成C语言的格式,并倾倒到标准输出。
-ddd把编译过的数据包编码转换成十进制数字的格式,并倾倒到标准输出。
-e在每列倾倒资料上显示连接层级的文件头。
-f用数字显示网际网络地址。
-F <表达文件>指定内含表达方式的文件。
-i <网络界面>使用指定的网络截面送出数据包。
-l使用标准输出列的缓冲区。
-n不把主机的网络地址转换成名字。
-N不列出域名。
-O不将数据包编码最佳化。
-p不让网络界面进入混杂模式。
-q快速输出,仅列出少数的传输协议信息。
-r <数据包文件>从指定的文件读取数据包数据。
-s <数据包大小>设置每个数据包的大小。
-S用绝对而非相对数值列出TCP关联数。
-t在每列倾倒资料上不显示时间戳记。
-tt在每列倾倒资料上显示未经格式化的时间戳记。
-T <数据包类型>强制将表达方式所指定的数据包转译成设置的数据包类型。
-v详细显示指令执行过程。
-vv更详细显示指令执行过程。
-x用十六进制字码列出数据包资料。
-w <数据包文件>把数据包数据写入指定的文件。
  • 内置功能及变量
tcp、udp、icmp、arp、rarp、这些选项都要放到第一个参数的位置,用来过滤数据包的类型
dst 目的
host 主机
net 网段
port 端口
and | “&&” 且
or | “||” 或
not | “!” 非
  • 命令实例

1.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

1.2、过滤端口

抓取所有经过eth1,目的或源端口是25的网络数据

tcpdump -i eth1 port 25

指定源端口

tcpdump -i eth1 src port 25

指定目的端口

tcpdump -i eth1 dst port 25

1.3、网络过滤

tcpdump -i eth1 net 192.168
tcpdump -i eth1 src net 192.168
tcpdump -i eth1 dst net 192.168

1.4、协议过滤

tcpdump -i eth1 arp
tcpdump -i eth1 ip
tcpdump -i eth1 tcp
tcpdump -i eth1 udp
tcpdump -i eth1 icmp

1.5、常用表达式

抓取所有经过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)))'

监听10.0.0.200到我的ping包,监听5个数据包

tcpdump -i eth1 -c 5 icmp and  src host 10.0.0.200

#监听10.0.0.0/24这个网段里面所有的ping包,但是不包括200这个主机的ping包

tcpdump -i eth1 icmp and src host ! 10.0.0.200 and src net 10.0.0

监听本机转发的流量数据包

tcpdump -i eth1 host ! 10.0.0.7

监听10.0.0.0/24网段里面所有的ping包,但是排除10.0.0.200的主机

tcpdump -i eth1 tcp host ! 10.0.0.200 and net 10.0.0(10.0.0.0/24)

更详细的使用方法参照:https://www.linuxbaodian.com/wenti/62.html




上一条命令:ab

下一条命令:traceroute

笔记分享

表情

共0条分享记录
  • 这篇文章还没有收到评论,赶紧来抢沙发吧~

相关内容

最受欢迎

猜你喜欢

最受争议