tcpdump详细内容(tcpdump的作用)
导语:tcpdump简概
tcpdump看似复杂,实际其参数功能主要分为命令选项、过滤表达式两部分组成。本文简要介绍其大概。
一、命令选项介绍
-n 禁止IP名称解析。
-nn 禁止IP和端口名称解析。
-i 指定捕获哪个网卡的网络数据包。
-w 指定将包写入哪个文件,如果文件不存在则创建该文件;如果存在则覆盖其内容。
-f 指定过滤表达式,例如指定捕获哪个端口,哪个协议等。
-r 指定从哪个文件读取网络数据包文件。
-F 打开使用包文件(pcap)。
-D 列出所有可以使用tcpdump抓包的网卡。
-c 指定捕获或者读取包的个数,-c后面直接接数字即可。
-l 抓包时保存到文件的同时查看包的内容。
-t 不打印时间戳。
-tt 秒级时间戳。
-ttt 打印时间戳到微秒或者纳秒,取决于 –time-stamp-precision option 选项。
-s 指定每个包捕获的字节数。
-S 打印绝对的tcp序列号,而不是相对的序列号。
-v/-vv/-vvv 打印详细信息,v的个数越多, 打印内容越详细。
二、过滤表达式(可放在单引号内,比较推荐)
1.类型关键字,主要包括host,net,port,举例:
host 210.45.114.211,指定主机 210.45.114.211
net 210.11.0.0 指明210.11.0.0是一个网络地址
port 21 指明端口号是21。如果没有指定类型,缺省的类型是host
2.传输方向关键字,主要包括src,dst,举例:
src 210.45.114.211 ,指明ip包中源地址是210.45.114.211
dst net 210.11.0.0 指明目的网络地址是210.11.0.0
dst port 80 目标端口为80端口
3.协议关键字,主要包括 ether,ip,ip6,arp,rarp,tcp,udp等类型,如果没有指定任何协议,则tcpdump将会监听所有协议的信息包。举例:
ether src 6c:41:6a:ac:11:42 指定源mac地址
tcp port 8080 指定端口为tcp8080
udp dst port 53 指定目标端口为udp53
4.逻辑运算关键字,主要包括and ,or,not ,!,&&,|| ,详细如下:
逻辑运算 表示方法
取与 “and”或“&&”
取或 “or”或“ll“”
取非 “not”或“!”
三、一些例子
tcpdump -i eth1 ether src 6c:41:6a:ac:11:42 -c 10解释:在接口eth1上,抓取源mac地址为6c:41:6a:ac:01:42的数据包,个数为10。命令选项为-i,-c,ether src 过滤表达式
2.tcpdump -i eth0 ‘host 172.16.0.11 and! port 80 and ! port 25 and ! port 110’
解释:抓取172.16.0.11的80、110、25以外的其他端口的包。
这个写法比较推荐,用单引号将过滤表达式引起来。
免责声明:本站部份内容由优秀作者和原创用户编辑投稿,本站仅提供存储服务,不拥有所有权,不承担法律责任。若涉嫌侵权/违法的,请反馈,一经查实立刻删除内容。本文内容由快快网络小蔼创作整理编辑!