网络流量分析工具(tcpdump)
Linux 作为网路操作系统提供基础网络服务,在很多情况下需要一款能够进网络数据采集和分析的工具。例如:
- 在服务器受到网络攻击时,需要分析攻击包的格式和内容,以便采取针对性的封锁手段。
- 在网络应用程序异常崩溃时,需要确认应用程序收发的数据包格式和内容是否符合之前预期的设计规范。
- 网络应用程序响应变慢时,需要确认是否存在网络传输问题(如丢包或者延迟过大),或者应用程序对于输入处理慢的情况。
- 用户无法使用网络应用程序时,需要判断是否由路由网络连通性故障所致。
- 新接入一种非开源软件提供网络服务时,需要研究其网络通信特点的情况。
基于以上场景的需要Linux 提供了tcpdump 网络数据采集工具。
tcpdump 工作原理
网络通信收发数据,会通过完整的Linux 网络协议栈(Linux Network Stack),由Linux 操作系统完成数据的封装和解封装。以基于TCP 的客户端和服务器程序为例,调用流程如下:
此时,应用程序只需要对应用层数据进行读写即可,不需要关心TCP/IP及数据链路层的头部封装和解封装。
tcpdump 是依赖libpcap。 libpcap 是使用一种称为设备层的包接口(packet interface on device level)技术。使用这种技术,应用可以直接读写内核驱动层面的数据,不经过Linux Network Stack
tcpdump 可以抓取对象
- 可以抓取被iptables 在INPUT 链上DROP 掉的数据包,就是访问的数据包都是可以的。
- 不能抓取被iptables OUTPUT 链上的DROP 掉的数据包。
tcpdump 安装
这个是tcpdump官网,可以自行去找最新的版本下载。
#下载依赖libpcapwget http://www.tcpdump.org/release/libpcap-1.9.1.tar.gzwget http://www.tcpdump.org/release/tcpdump-4.9.3.tar.gztar zxf libpcap-1.9.1.tar.gzcd libpcap-1.9.1./configuremakemake installtar zxf tcpdump-4.9.3.tar.gzcd tcpdump-4.9.3./configuremakemake install
##查看是否安装成功
tcpdump --version
tcpdump 的五个参数
完成过后可以通过 tcpdump -h 查看帮助参数有十个但是一般只要5个参数即可满足大部分的工作需求。
- -i : 指定需要抓包的网卡。如果未指定,tcpdump 会根据搜索道德系统中状态为UP 的最小数字的网卡确定(ifconfig 可以给查询网卡信息),一般情况下为eth0 。使用-i 参数可以有效的减少抓取的数据包的数量,增加针对性。
- -nnn :禁止tcpdump 展示时把IP、端口等转换为域名、端口对应的知名服务器名称。
- -s : 指定抓包的大小。 -s 0 指定抓包数据大小为262 144字节。
- -c :指定抓包数量
- -w :指定抓包保存到文件,方便分析。
tcpdump 过滤器
- host a.b.c.d : 指定仅抓取本机和某主机a.b.c.d 的通信信息。
- tcp port x: 指定抓取TCP 协议目的端口或者端口源为 x 的数据信息。
- icmp : 指定抓取ICMP协议通信的数据信息
- ! : 反向匹配。
以上四种可以通过or 或者 and 进行组合使用。
# 抓取 默认的网卡 端口号为8080 并且把文件保存到 /opt/tcpdump.pcap 文件中 可以使用Wireshark 分析tcpdump -nnn tcp port 8080 -w /opt/tcpdump.pcap
安装 Wireshark
yum install wireshark* -y
分析网络访问
wireshark /opt/tcpdump.pcap
在Windows 安装 Wires hark
https://www.wireshark.org/#download
只需要把刚刚的文件导入即可
可以看到tcp 握手和挥手的记录,
网络流量分析工具(tcpdump)相关推荐
- Linux下的网络协议分析工具-tcpdump快速入门手册
TCPDUMP简介 在传统的网络分析和测试技术中,嗅探器(sniffer)是最常见,也是最重要的技术之一.sniffer工具首先是为网络管理员和网络程序员进行网络分析而设计的.对于网络管理人员来说,使 ...
- 网络数据采集分析工具tcpdump定义抓包过滤器
Unix 下的一个 网络数据采集分析工具 -- Tcpdump,也就是我们常说的抓包工具. 与它功能类似的工具有 wireshark ,不同的是,wireshark 有图形化界面,而 tcpdump ...
- 网络管理员在预先分配和识别作为_14个网络管理员必备的最佳网络流量分析工具,收藏了...
企业网络每天都会产生大量数据.企业可以分析这些数据,以深入了解网络运行情况或发现安全威胁.网络流量分析(NTA)解决方案允许网络管理员收集流经网络的流量数据.这些工具通常用于识别性能问题和/或发现安全 ...
- IOTA--最便捷的网络流量分析工具
IOTA–最便捷的网络流量分析工具 近年来5G技术迅速的发展,整个我们整个的网络环境将迎来巨大变革,其中网络流量和宽带的剧增是其中的重要变革.这样的变化虽然给我们的工作和生活带来诸多便利,但是也带来了 ...
- 网络管理员在预先分配和识别作为_网络管理员必备流量分析工具,果断转发收藏!...
企业网络每天都会产生大量数据.企业可以分析这些数据,以深入了解网络运行情况或发现安全威胁.网络流量分析(NTA)解决方案允许网络管理员收集流经网络的流量数据.这些工具通常用于识别性能问题和/或发现安全 ...
- 六种常用的网络流量特征提取工具,附下载地址!
六种常用的网络流量特征提取工具.在互联网用户行为分析和异常行为检测的相关研究中,协议识别和特征提取是网络流量特征分析的重要技术手段.下面,本文为大家介绍几款常用的网络流量特征提取的工具. 1.Wire ...
- 抓包工具(网络流量特征提取工具)
转载地址:http://www.freebuf.com/sectool/128008.html 在互联网用户行为分析和异常行为检测的相关研究中,协议识别和特征提取是网络流量特征分析的重要技术手段.下面 ...
- 网络流量分析神器:SecBI
本文讲的是网络流量分析神器:SecBI ,网络流量分析工具早已广为使用,可提升企业网络效率,定位未使用的容量和带宽,消除瓶颈.最近此类工具也被列入了网络安全工具范畴.这很容易理解,因为除了内部人威胁, ...
- 网络流量分析详解(包含OSI七层模型、TCP协议及Wireshark工具用法)
网络流量分析 Network Traffic Analysis(NTA) 这个系列讲的是整个网络流量分析流程,其中包含TCP协议.HTTP协议详解和Wireshark.Tcpdump的详细用法,现在只 ...
- 性能之巅:Linux网络性能分析工具-netstat,ifconfig,nicstat,traceroute,tcpdump
原文地址:http://www.infoq.com/cn/articles/linux-networking-performance-analytics 本文介绍基于Linux操作系统的网络性能分析工 ...
最新文章
- 【动态规划】方格取数 (ssl 1010)
- APP应用 HTTP/1.0中keep-alive
- 大爷与支付宝同名,曾想状告阿里巴巴侵权,现在过得怎么样
- 为啥Underlay才是容器网络的最佳落地选择
- java垃圾收集器zgc_java虚拟机ZGC垃圾收集器的实现方法
- Vimtutor中文版
- php序列化后换服务器不能解析,利用php序列化和反序列化的语法差异绕过防护_网站服务器运行维护...
- MongoDB整理笔记のGUI操作
- 很有用的SQLServer全局变量
- JAVA CRC16校验码计算
- 只需1分钟,这个网站用AI分离歌曲的人声、伴奏和乐器声
- 吉他指弹特殊调弦的方法及基础音阶知识
- 基于地理位置的Android AR app项目简述
- Android studio 如何连接手机
- 什么是TPS, 什么是QPS
- 一次分布式架构cms系统页面静态化模块开发经历
- 《信号与系统》很难?也许你应该看看这篇文章
- Davinci Resolve Studio 17d5达芬奇调色软件专业版
- RobotFramework-自定义远程java关键字库能否返回Map类型
- 全志A64平台 TP9950 BT656输入驱动调试(1)环境搭建驱动编写
热门文章
- python自动语音电话_用 Python 实现自己的智能语音助理(百度语音 + 图灵机器人)...
- 沙箱 sandbox
- Simulink中步长、powergui采样时间、模块采样时间、控制周期的关系
- Datax-HdfsWriter如何实现支持decimal类型数据写入
- Frame-Relay基础及配置学习笔记
- Javescript REVIEW
- 套件端口 群晖_群晖套件重装过程中提示端口被占用的解决方案
- 学习笔记:GAMES101图形学入门闫令琪(五)抗锯齿
- 于朦胧 机器人_机器人演戏?建议于朦胧陈钰琪这部《两世欢》改名:我的面瘫男友...
- 澳洲CE毕业意向FullStackDeveloper