我们先通过几个简单的示例来介绍 tcpdump 基本用法。
1. 不加任何参数,默认情况下将抓取第一个非 lo 网卡上所有的数据包
$tcpdump
2. 抓取 eth0 网卡上的所有数据包
$tcpdump-ieth0
3. 抓包时指定 -n
选项,不解析主机和端口名。这个参数很关键,会影响抓包的性能,一般抓包时都需要指定该选项。
$tcpdump-n-ieth0
4. 抓取指定主机 192.168.1.100
的所有数据包
$tcpdump-nieth0host192.168.1.100
5. 抓取指定主机 10.1.1.2
发送的数据包
$tcpdump-nieth0srchost10.1.1.2
6. 抓取发送给 10.1.1.2
的所有数据包
$tcpdump-nieth0dsthost10.1.1.2
7. 抓取 eth0 网卡上发往指定主机的数据包,抓到 10 个包就停止,这个参数也比较常用
$tcpdump-nieth0-c10dsthost192.168.1.200
8. 抓取 eth0 网卡上所有 SSH 请求数据包,SSH 默认端口是 22
$tcpdump-nieth0dstport22
9. 抓取 eth0 网卡上 5 个 ping 数据包
$tcpdump-nieth0-c5icmp
10. 抓取 eth0 网卡上所有的 arp 数据包
$tcpdump-nieth0arp
11. 使用十六进制输出,当你想检查数据包内容是否有问题时,十六进制输出会很有帮助。
$tcpdump-nieth0-c1arp-X
listeningoneth0,link-typeEN10MB(Ethernet),capturesize262144bytes
12:13:31.602995ARP,Requestwho-has172.17.92.133tell172.17.95.253,length28
0x0000:0001080006040001eeffffffffffac11................
0x0010:5ffd000000000000ac115c85_..........
12. 只抓取 eth0 网卡上 IPv6 的流量
$tcpdump-nieth0ip6
13. 抓取指定端口范围的流量
$tcpdump-nieth0portrange80-9000
14. 抓取指定网段的流量
$tcpdump-nieth0net192.168.1.0/24
-
嵌入式
+关注
关注
5068文章
19009浏览量
303052 -
Linux
+关注
关注
87文章
11221浏览量
208883 -
网络
+关注
关注
14文章
7513浏览量
88608 -
数据包
+关注
关注
0文章
251浏览量
24359
发布评论请先 登录
相关推荐
评论