Linux tcpdump命令详解

tcpdump是Linux下的命令行抓包分析软件,可以将网络中传送的数据包完全截获下来提供分析,
支持对网络层、协议、主机、网路或端口的过滤,并提供and、or 、not等逻辑语句去掉无用的信息。
并且tcpdump保存的文件也可以直接用wireshark直接打开。

1.默认启动

tcpdump

普通情况下,直接启动tcpdump将监视第一个网络接口上所有流过的数据包。

2.监视指定网络接口的数据包

tcpdump -i eth0

如果不指定网卡,默认tcpdump只会监视第一个网络接口,一般是eth0

3.类型关键字:host、net、port
指定ip:抓取所有192.168.2.49 的主机收到的和发出的所有的数据包

tcpdump host 192.168.2.49  

端口:抓取端口为80的数据包

tcpdump port 80

网段:抓取C网段的数据包(24掩码255.255.255.0)

tcpdump net 192.168.2.0/24

4.传输关键字:src 、dst 、src and dst 、src or dst
抓取源地址是192.168.2.49的数据包

tcpdump src host 192.168.2.49

抓取目的地址去往百度(61.135.169.121)的数据包

tcpdump dst host 61.135.169.121

抓取目的端口是80的数据包

tcpdump dst port 80

5.协议关键字:tcp、udp

抓取协议是tcp的数据包

tcpdump tcp

抓取协议是dup的数据包

tcpdump udp    

抓取协议是tcp且端口是80(http协议)的数据包

tcpdump tcp port 80 

6.举例:
-i 选择网卡 -v显示详细信息 -s0全部

抓取源ip是192.168.2.1且目的端口是22,或目的ip是61.135.169.121且目的端口是80的数据包

tcpdump -i eth0 -v 'src host 192.168.2.1 and dst port 22' or 'src host 61.135.169.121 and dst port 80'

抓取协议为tcp的数据包,以cap格式输出,,test.cap文件存在当前目录下,可以在wireshark下打开

tcpdump -i eth0 -t tcp -s0 -w test.cap

标签: none

仅有一条评论

  1. 这个命令抓包,感觉好实用。哈哈,板娘棒棒哒。

添加新评论