linux命令之tcpdump
1.tcpdump介绍
linux命令tcpdump是用来将网络中传送的数据包完全截获下来以进行相关分析,常用的分析工具是wireshark
2.tcpdump用法
tcpdump [参数]
tcpdump参数
| 参数 | 说明 | 
| -i | 指定端口 | 
| -n | 指定协议 | 
| -t | 在输出的每一行不打印时间戳 | 
| -s | 抓取数据包时,设置抓取长度,默认为68字节;-s 0为抓取完整的数据包 | 
| -c | 在收到指定数量的分组后,tcpdump就会停止 | 
| -w | 定义保存文件名称,默认后缀为.cap,方便使用wireshark工具进行分析 | 
tcpdump常用关键字
tcpdump关键字
| 关键字 | 包括 | 
| 类型关键字 | host,net,port | 
| 传输方向关键字 | src,dst | 
| 协议关键字 | tcp,udp,icmp,ip,arp等 | 
| 其它关键字 | gateway,broadcast,less,greater,not,!,and,or,&&,|| | 
3.实例
3.1.抓取ens33网络端口数据包,抓取100次并保存至root目录下
命令:
tcpdump -i ens33 -c 100 -w /root/ens33.cap
[root@rhel77 ~]# tcpdump -i ens33 -c 100 -w /root/ens33.cap
tcpdump: listening on ens33, link-type EN10MB (Ethernet), capture size 262144 bytes
100 packets captured
101 packets received by filter
0 packets dropped by kernel
[root@rhel77 ~]# ls -l ens33.cap    (使用wireshark进行分析)
-rw-r--r-- 1 tcpdump tcpdump 65910 Nov 13 09:54 ens33.cap
[root@rhel77 ~]#3.2.查看tcpdump帮助
命令:
man tcpdump
......
TCPDUMP(8)                                System Manager's Manual                                TCPDUMP(8)
NAME
       tcpdump - dump traffic on a network
SYNOPSIS
       tcpdump [ -AbdDefhHIJKlLnNOpqStuUvxX# ] [ -B buffer_size ]
               [ -c count ]
               [ -C file_size ] [ -G rotate_seconds ] [ -F file ]
               [ -i interface ] [ -j tstamp_type ] [ -m module ] [ -M secret ]
               [ --number ] [ -Q|-P in|out|inout ]
               [ -r file ] [ -V file ] [ -s snaplen ] [ -T type ] [ -w file ]
               [ -W filecount ]
 Manual page tcpdump(8) line 1 (press h for help or q to quit)
......









