Linux网络抓包分析工具( 三 )


安装epel源
> yum -y install epel-release
3、tshark 命令
tshark 是 wireshark 的命令行工具
tshark 选项 参数
-i:指定捕获的网卡接口,不设置默认第一个非环回口接口
-D:显示所有可用的网络接口列表
-f:指定条件表达式,与 tcpdump 相同
-s:设置每个抓包的大小,默认 65535,多于这个大小的数据将不会不会被截取 。
-c:捕获指定数量的数据包后退出
-w:后接文件名,将抓包的结果输出到. pcap 文件中,可以借助其他网络分析工具进行分 析,也可以使用重定向 > 把解码后的输出结果以 txt 的格式输出 。
-p:设置网络接口以非混合模式工作,即只关心和本机有关的流量
-r:后接文件路径,用于分析保持好的网络包文件,比如 tcpdump 的输出文件
-n:禁止所有地址名字解析,即禁止域名解析, 默认是允许所有
-N:指定对某一层的地址名字解析,如果 - n 和 - N 同时存在,则 - n 将被忽略,如果两者都不写,则会默认打开所有地址名字解析
m:代表数据链路层
n:代表网络层
t:代表传输层
-V:设置将解码结果的细节输出,否则解码结果仅显示一个 packet 一行的 summary
-t:设置结果的时间格式
ad:表示带日期的绝对时间
a:表示不带日期的绝对时间
r:表示从第一个包到现在的相对时间
d:表示两个相邻包之间的增量时间
tshark -f "icmp"-i ens33 -V -c 1
过滤 icmp 报文,并展开详细信息
tshark -f "arp"-i ens33

过滤 arp 报文

Linux网络抓包分析工具

文章插图
4、图形化界面
Linux网络抓包分析工具

文章插图

Linux网络抓包分析工具

文章插图

Linux网络抓包分析工具

文章插图
三、Tcpdump 和 wireshark 合用
Tcpdump 解析报文信息没有 wireshark 详细,所以可以通过 Tcpdump 捕获数据并输出,再通过 wireshark 进行解析,输出文件格式为. pcap 或者其他
在虚拟机上通过 wireshark 读取
Linux网络抓包分析工具

文章插图
使用 ip.addr == [ip 地址号] 可以过滤掉无关 ip
图形读取
Linux网络抓包分析工具

文章插图
用 wireshark 直接打开查看
总结
tcpdump 和 wireshark 两种单以抓包的功能来看,是相似的,两者的命令行的选项也是有相同,但是 tcpdump 对数据包分析的能力不是很好,同时目前很多 Linux 内置安装了 tcpdump 这个工具,所以我们可以通过 tcpdump 把数据包抓出并存放到我们自定义的文件(.pcap)中,再通过把文件取出用 wireshark 进行分析排障
END




推荐阅读