Linux命令天天记-tcpdump抓包

命令介绍

tcpdump命令 是一款抓包,嗅探器工具,它可以打印所有经过网络接口的数据包的头信息,也可以使用-w选项将数据包保存到文件中,方便以后分析。

命令帮助

tcpdump version 4.9.2
libpcap version 1.5.3
OpenSSL 1.0.2k-fips  26 Jan 2017
Usage: tcpdump [-aAbdDefhHIJKlLnNOpqStuUvxX#] [ -B size ] [ -c count ]
                [ -C file_size ] [ -E algo:secret ] [ -F file ] [ -G seconds ]
                [ -i interface ] [ -j tstamptype ] [ -M secret ] [ --number ]
                [ -Q|-P in|out|inout ]
                [ -r file ] [ -s snaplen ] [ --time-stamp-precision precision ]
                [ --immediate-mode ] [ -T type ] [ --version ] [ -V file ]
                [ -w file ] [ -W filecount ] [ -y datalinktype ] [ -z postrotate-command ]
                [ -Z user ] [ expression ]

抓包并生成文件

抓包并将数据流写入文件:tcpdump.pcap,写入文件之后可以通过wireshark对文件进行分析。

tcpdump -vvv -w tcpdump.pcap

抓包过滤规则

抓取80端口数据,并排除网段192.168.0.0/24的数据包

tcpdump -vv -n port 80 and 'not net 192.168.0.0/24'

抓取80端口数据,并排除请求源网段192.168.0.0/24的数据包

tcpdump -vv -n port 80 and 'not src net 192.168.0.0/24'

抓取80端口数据,并排除主机192.168.0.1的数据包

tcpdump -vv -n port 80 and 'not host 192.168.0.1'