tcpdump dump 网络流量

描述:  Tcpdump 打印一个包的内容的描述在一个网络接口  匹配布尔值表达式

它也可以运行使用-w flag, 这样会保存包的数据到一个文件用于后面分析,

使用-r flag 可以从保存的packet 文件而不是从网络接口读取

在所有的例子,只有packets 匹配表达式才会被tcpdump处理

Tcpdump 如果不带-c 运行, 会继续捕获数据包知道被信号打断(通常,例如,输入典型的 control-C) 

或者 一个SIGTERM signal (kill 命令)

如果你运行-c选项,它会捕获包直到 被SIGINT or SIGTERM signal  或者指定的数量的包后

当tcpdump 完成捕获数据包后,它会报告:

1.packets "捕获的" ( 这是包的数量tcpdump 已经接受和处理的)

2.packets "过滤器接收的"(这个取决于操作系统 ,如果一个filter 是在命令行指定,

在一些OSes上 它统计包不管 他们是否被过滤器表达式,即使它们被表达式过滤器匹配,

不管 tcpdump 已经读或者处理他们,在其他系统上它只统计 表达式匹配的包 

3. packets "dropped by kernel" (这个是被丢弃的包,由于缺少buffer space,如果OS 报告信息给应用 如果没有,它是报告为0)

tcpdump -i eth0 -nn -vv port 53

tcpdump -i eth1 -s 0 -l -w - dst port 3306 | strings |

-i 侦听接口,如果没有指定,tcpdump 搜索系统接口列表

-nn  不要转换协议和端口号

      -s     Snarf  snaplen  bytes of data from each packet rather than the default of 65535 bytes.  Packets truncated because of a
limited snapshot are indicated in the output with ‘‘[|proto]’’, where proto is the name of the protocol level at which
the truncation has occurred. Note that taking larger snapshots both increases the amount of time it takes to process
packets and, effectively, decreases the amount of packet buffering. This may cause packets to be lost. You should
limit snaplen to the smallest number that will capture the protocol information you’re interested in. Setting snaplen
to 0 sets it to the default of 65535, for backwards compatibility with recent older versions of tcpdump. 抽取 数据的快照长度字节 从每个包而不是默认的65535字节。 包被截断因为一个受限的快照是致命在输出 使用 ‘‘[|proto]’’, proto 是协议的名字 注意大的快照会增加处理包的总的时间,效率,降低包缓存的总量 这个也会导致包丢失,你需要限制快照长度到小的值 设置snaplen 为0 是默认值 Setting snaplen
to 0 sets it to the default of 65535 -l Make stdout line buffered. Useful if you want to see the data while capturing it. E.g.,
‘‘tcpdump -l | tee dat’’ or ‘‘tcpdump -l > dat & tail -f dat’’. 让标准输出 buffered,有用的如果你需要看数据当捕捉时 -w Write the raw packets to file rather than parsing and printing them out. They can later be printed with the -r
option. Standard output is used if file is ‘‘-’’. See pcap-savefile(5) for a description of the file format. 写raw 数据包到文件 而不是解析和打印它们。
它们可以随后被打印使用-r选项,标准输出被使用,如果file 是"-" -r Read packets from file (which was created with the -w option). Standard input is used if file is ‘‘-’’. 从文件读取包(使用-w选项创建) 标准输入是使用file "-" 抓取所有经过 eth1,目的或源端口是 25 的网络数据
# tcpdump -i eth1 port 25
- 源端口
# tcpdump -i eth1 src port 25
- 目的端口
# tcpdump -i eth1 dst port 25网络过滤 strings 提取2进制数据 tcpdump -i eth0 -s 0 -l -w - dst port 3306 | strings - 抓取所有经过 eth1,目的或源端口是 25 的网络数据
# tcpdump -i eth1 port 25
- 源端口
# tcpdump -i eth1 src port 25
- 目的端口
# tcpdump -i eth1 dst port 25网络过滤 这个前提是必须走网卡 #!/bin/bash #this script used montor mysql network traffic.echo sql tcpdump -i eth0 -s 0 -l -w - dst port 3306 | strings | perl -e ' while(<>) { chomp; next if /^[^ ]+[ ]*$/; if(/^(SELECT|UPDATE|DELETE|INSERT|SET|COMMIT|ROLLBACK|CREATE|DROP|ALTER|CALL)/i) { if (defined $q) { print "$q\n"; } $q=$_; } else { $_ =~ s/^[ \t]+//; $q.=" $_"; } }'

tcpdump dump 网络流量的更多相关文章

  1. alluxio网络流量异常分析【转】

    1. 介绍 2. 准备工作 2.1 tcpdump 2.2 winshark 2.3 安装iftop 2.4 alluxio网络通信相关的端口 3.iftop 锁定消耗流量最大的端口 4. dump数 ...

  2. 【读书笔记】iOS网络-测试与操纵网络流量

    一,观测网络流量. 观测网络流量的行为叫做嗅探或数据包分析. 1,嗅探硬件. 从iOS模拟器捕获数据包不需要做特别的硬件或网络配置.如果需要捕获这些数据包,那么可以使用嗅探软件来监听回送设备或是用于连 ...

  3. 运用Ntop监控网络流量(视频Demo)

    运用Ntop监控网络流量 ____网络流量反映了网络的运行状态,是判别网络运行是否正常的关键数据,在实际的网络中,如果对网络流量控制得不好或发生网络拥塞,将会导致网络吞吐量下降.网络性能降低.通过流量 ...

  4. Ntop监控网络流量

    运用Ntop监控网络流量 ____ 网络流量反映了网络的运行状态,是判别网络运行是否正常的关键数据,在实际的网络中,如果对网络流量控制得不好或发生网络拥塞,将会导致网络吞吐量下降. 网络性能降低.通过 ...

  5. 【读书笔记】iOS-网络-测试与操纵网络流量

    一,观测网络流量. 观测网络流量的行为叫做嗅探或数据包分析. 1,嗅探硬件. 从iOS模拟器捕获数据包不需要做特别的硬件或网络配置.如果需要捕获这些数据包,那么可以使用嗅探软件来监听回送设备或是用于连 ...

  6. TCPflow:在Linux中分析和调试网络流量的利器(转)

    TCPflow是一款功能强大的.基于命令行的免费开源工具,用于在Unix之类的系统(如Linux)上分析网络流量.它可捕获通过TCP连接接收或传输的数据,并存储在文件中供以后分析,采用的格式便于协议分 ...

  7. NetFlow是一种数据交换方式,提供网络流量的会话级视图,记录下每个TCP/IP事务的信息

    NetFlow是一种数据交换方式,提供网络流量的会话级视图,记录下每个TCP/IP事务的信息.也许它不能象tcpdump那样提供网络流量的完整记录,但是当汇集起来时,它更加易于管理和易读.Netflo ...

  8. Linux服务器上监控网络带宽的18个常用命令nload, iftop,iptraf-ng, nethogs, vnstat. nagios,运用Ntop监控网络流量

    Linux服务器上监控网络带宽的18个常用命令 本文介绍了一些可以用来监控网络使用情况的Linux命令行工具.这些工具可以监控通过网络接口传输的数据,并测量目前哪些数据所传输的速度.入站流量和出站流量 ...

  9. windows下使用C#获取特定进程网络流量

    最近老板接了一个中船重工的项目,需要做一个有关海军软件系统的组件评估项目,项目中有一个子项目需要获取特定进程的各种系统参数,项目使用.NET平台.在获取特定进程各种系统参数时,其它诸如进程ID,进程名 ...

随机推荐

  1. 解决64位win7系统IIS7[ODBC 驱动程序管理器]未发现数据源名称并且未指定默认驱动程序

    从网上下载了一个asp系统,数据库是Access类型的,运行环境为 64位Windows 7系统,IIS7,运行系统后,报如下错误: Microsoft OLE DB Provider for ODB ...

  2. HW—字符串最后一个单词的长度,单词以空格隔开。

    描述 计算字符串最后一个单词的长度,单词以空格隔开. 知识点 字符串,循环 运行时间限制 0M 内存限制 0 输入 一行字符串,长度小于128. 输出 整数N,最后一个单词的长度. 样例输入 hell ...

  3. JAVA 中两种判断输入的是否是数字的方法__正则化_

    JAVA 中两种判断输入的是否是数字的方法 package t0806; import java.io.*; import java.util.regex.*; public class zhengz ...

  4. JSTL 入门

    JSTL--JSP Standard Tag Library--JSP标准标签函式库         当前版本 1.2.5     JSP 标准标签库(JSTL) JSP标准标签库(JSTL)是一个J ...

  5. Struts2 Annotation 默认返回Tiles2布局

    Struts2的annotation方式很简约,特别实在遵从默认约定的时候就根本不需要配什么struts.xml.网上关于Annotation约定大于配置的教程也很多,其中也不乏将xml版struts ...

  6. PHP中0、空、null和false的总结

    php中很多人还不懂php中 0 , '' , null 和 false 之间的区别,这些区别有时会影响到数据判断的正确性和安全性,给程序的测试运行造成很多麻烦.另外在面试题中也会遇到这些问题,如下: ...

  7. php中的修饰符

    上面使用了一个修饰符U,详见关于修饰符的介绍. PHP正则表达式修饰符的理解: 在PHP正则表达式里面的修饰符可以改变正则的很多特性,使得正则表达式更加适合你的需要(注意:修饰符对于大小写是敏感的,这 ...

  8. Delphi中的GetEnumName和GetEnumValue的使用方法

    利用TypInfo单元的GetEnumName和GetEnumValue可以遍历任意枚举类型,并获取其名称和值.下面是示例Demo. uses TypInfo; ... procedure TForm ...

  9. 机器学习实战:数据预处理之独热编码(One-Hot Encoding)

    问题由来 在很多机器学习任务中,特征并不总是连续值,而有可能是分类值. 例如,考虑一下的三个特征: ["male", "female"] ["from ...

  10. python 脚本

    mag3.py 1,import import sys from org.eclipse.jface.dialogs import MessageDialogfrom org.eclipse.core ...