《神探tcpdump第四招》-linux命令五分钟系列之三十八
==
本文会是“选项内容”的最后一期讲解,主要会讲讲-w和-r两个选项。tcpdump的选项很多,多达50个,其他我没有涉及的选项,还是要大家自己通过man tcpdump的方式来学习了。实在研究不懂的,可以找我探讨:)
==
做过网络流量分析的同学,或许都有一个共同的需求,那就是“流量保存”和“流量回放”,这就恰好对应了今天要讲解的-w选项和-r选项。
“流量保存”就是把抓到的网络包能存储到磁盘上,保存下来,为后续使用。
“流量回放”就是把历史上的某一时间段的流量,重新模拟回放出来,用于流量分析。
【-w选项】- 将流量保存到文件中
?
1
2
3
4
5
|
# tcpdump -i eth0 -w flowdata
tcpdump: listening on eth0, link- type EN10MB (Ethernet), capture size 65535 bytes
^C327 packets captured
327 packets received by filter
0 packets dropped by kernel
|
通过上面的例子可以看到,通过-w选项将流量都存储在了flowdata文件中了。大家是否有兴趣less下flowdata,看看里面都是什么东东?
?
1
2
|
# less flowdata
"flowdata" may be a binary file . See it anyway?
|
悲剧,原来都是二进制格式的,无法直接通过文本方式查看。嗯,买了个关子,把真像告诉大家吧!
tcpdump的-w方式是把raw packets(原始网络包)直接存储到文件中了,也就是存储的都是结构体形式,而非是分析之后的文本格式的信息,因此大家是无法直接通过less命令查看的。
那么,怎么查看呢?大家想必也想到了,就是用-r选项。
【-r选项】- 读取raw packets文件
?
1
2
3
4
5
6
7
8
|
# tcpdump -r flowdata
reading from file flowdata, link- type EN10MB (Ethernet)
16:43:36.202443 IP 116.255.245.206.snapenetio > 61.135.169.73.52414: Flags [P.], seq 4082702792:4082702924, ack 3248983965, win 291, length 132
16:43:36.222033 IP 61.135.169.73.52414 > 116.255.245.206.snapenetio: Flags [.], ack 132, win 61, length 0
16:43:36.277407 IP 116.255.245.62 > ospf-all.mcast.net: OSPFv2, Hello, length 48
16:43:36.370846 ARP, Request who -has 116.255.245.203 tell 116.255.245.254, length 64
16:43:36.521947 ARP, Request who -has 116.255.245.203 tell 116.255.245.253, length 64
16:43:36.635472 ARP, Request who -has 116.255.245.214 tell 116.255.245.253, length 64
|
其实上面的命令就是在不知不觉中进行了“流量回放”,你会发现网络包被“抓”的速度都按照历史进行了回放,真像一个“时光机”啊!
由于是按raw packets来存储的,所以你完全可以使用-e、-l和过滤表达式来对输出信息进行控制,十分方便。
==
预告,第五招开始,会讲解过滤表达式了,会比较有意思,敬请期待。
谢谢!
转载于:https://blog.51cto.com/358845/1693618
《神探tcpdump第四招》-linux命令五分钟系列之三十八相关推荐
- 《神探tcpdump第五招》-linux命令五分钟系列之三十九
== [系列文章] <神探tcpdump第一招>-linux命令五分钟系列之三十五 <神探tcpdump第二招>-linux命令五分钟系列之三十六 <神探tcpdump第 ...
- 《神探tcpdump第一招》-linux命令五分钟系列之三十五
应 @GamerH2o 博友在微博上提的要求,tcpdump专题会写成一个小型系列文章,力求每篇小文中突出重点,讲解清晰,避免长篇累牍,大家必然昏昏欲睡了. 其实tcpdump就好像一个神探,它有着夜 ...
- 《作业控制系列》-“linux命令五分钟系列”之十
很久没发这个系列了.一直在看perl.现在回归.因为发现所有的脚本的基础都是linux命令- === 通俗的讲,作业控制命令是用来控制一个一个任务的. 1 我想把updatedb命令(用于重新建立整盘 ...
- 《mount的艺术》-linux命令五分钟系列之十四
在阅读本文之前,我假设你已经对Linux系统下的硬盘.光盘的设备命令规则有所了解,比如sda和sda1的关系,以及hda.sda.fd.cdrom等设备. === 1 我把U盘插到USB口上了,下一步 ...
- 《篡权的ss》-linux命令五分钟系列之三十一
原文链接 本原创文章属于<Linux大棚>博客. 博客地址为http://roclinux.cn. 文章作者为roc. === 上篇文章<和netstat说再见>中说到nets ...
- 《sed的流艺术之四》-linux命令五分钟系列之二十四
[正文开始] 上文接<sed的流艺术之三>-linux命令五分钟系列之二十三 例十 如果设定了很多-e的command,它们的执行顺序是怎样的呢? [rocrocket@rocrocket ...
- 《service》-“linux命令五分钟系列”之二
service命令,顾名思义,就是用于管理Linux操作系统中服务的命令. 1. 声明:这个命令不是在所有的linux发行版本中都有.主要是在redhat.fedora.mandriva和centos ...
- 《回答sort一例》-linux命令五分钟系列之二十八
自从发布了sort命令之后,一位小同学问我关于文件名排序的问题,其实这些内容在sort的文章中都有涉及,只要好好读一遍,保证可以自己解决. 在此拿一实际例子再演示一次sort的神奇功能吧,最后一次哦: ...
- Linux命令:MySQL系列之十--MySQL用户和权限管理,mysql管理员密码重置
MySQL用户账号包括:用户名@主机名 用户名:16个字符以内 主机:主机有以下几种表现方式 主机名: mysql IP地址: 172.16.90.111 网络地址:172.16.0.0/255.25 ...
最新文章
- [记录]CentOS搭建SVN服务器(主从同步)
- 从贫民到百万富翁转变的心理学基础
- juniper路由器主备路由引擎主机名配置
- How do I sort groups of data items?(WPF)
- spring security只要熟悉每个filter的作用和顺序
- Requests redirect
- keepalived架设简单高可用的nginx的web服务器 ----那些你不知道的秘密
- 购物车catslider简单的多商品分类滑动
- linux虚拟机发邮件给163邮件
- mysql实验报告4_数据库实验四实验报告
- 同文输入法 android,同文输入法
- 随机积分理论中的几何布朗运动——Brown Motion and Stochastic Process
- rust中slice panicked at 'byte index 5 is not a char boundary' 问题解决办法
- 为什么BAT公司宁愿花25K重新招人,也不愿花20K留住老员工?
- css不换行省略号 没作用,flex布局下,css设置文本不换行时,省略号不显示的解决办法...
- 批量创建Azure DevOps Server 的账户
- 瓷砖铺贴方法_5种常见的瓷砖铺贴以及施工方法介绍
- 【jQuery】 # jQuery选择器
- 2022年R1快开门式压力容器操作考试资料及R1快开门式压力容器操作考试总结
- 写一个阿里云DDNS Linux脚本
热门文章
- C语言 —— 关键字(C语言标准定义的32个关键字:auto、register、static、sizeof、signed、unsigned 、break 、 continue 、void)
- 贝塞尔曲线与CSS3动画、SVG和canvas的应用
- jquery ajaxSubmit
- 如何将Sql Server中的数据表导入到PowerDesigner中
- Spring Security(一):整合JWT
- centos7安装redmine3.4
- 深入剖析Redis系列(三) - Redis集群模式搭建与原理详解
- 团队-科学计算器-成员简介及分工
- 用异或来交换两个变量能提快速度是错误的
- ASP.net MVC基础