标签 计算机网络 下的文章

其他参考:tcpdump的基本用法

1. 抓取指定网卡上的数据

tcpdump默认抓系统第一块网卡,-i参数可以指定网卡,any表示抓所有网卡:

tcpdump -i eth0 # 抓取eth0上的数据
tcpdump -i any # 抓取所有网卡上的数据

2. 抓取指定IP的数据

抓取来自eth0网卡上IP为192.168.10.1的数据:

tcpdump -i eth0 host 192.168.10.1

3. 抓取指定端口的数据

抓取HTTPS(443端口)的数据:

tcpdump -i eth0 tcp port 443

4. 抓取一个网段的数据

抓取192.168.10.0/24网段的数据:

tcpdump -i eth0 net 192.168.10.0/24

5. 多条件组合

tcpdump可以使用and/or/not来进行多条件组合抓包,当开启组合抓包时,建议使用双引号将语句包起来(否则当条件语句中存在括号等字符时会报错):

tcpdump -i eth0 "host 192.168.10.1 and (tcp port 443 or tcp port 80)" 

抓取来自192.168.10.1的443端口或80端口的数据。

6. 其他选项

  • -n:打印IP地址而不是主机名
  • -v:显示抓到的包的数量
  • -w file:将抓到的包写入文件
  • -c n:只抓取n个包,抓满后程序自动退出

速成案例:tcpdump速成指南

一、基本用法

最简单的用法就是直接输入tcpdump,监控所有的数据包:

[ma@ma ~]$ tcpdump
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on usbmon1, link-type USB_LINUX_MMAPPED (USB with padded Linux header), capture size 65535 bytes
10:53:08.002434 CONTROL SUBMIT to 1:2:0
10:53:08.004461 CONTROL COMPLETE from 1:2:0
10:53:08.004502 CONTROL SUBMIT to 1:1:0
10:53:08.004502 CONTROL COMPLETE from 1:1:0
10:53:10.850080 CONTROL SUBMIT to 1:1:0
10:53:10.850102 CONTROL COMPLETE from 1:1:0

- 阅读剩余部分 -

Internet中的IP地址结构在大学里学了好几遍了,自认为当初学得也还不错,本来打算跳过这一章,仔细一看就发现好多都已经忘了,于是就重新过了一遍。再看一遍就发现很多概念比以前都清晰多了,还有一些小的细节以前没弄清楚现在也是搞明白了,算是温故而知新吧。

- 阅读剩余部分 -