tcpdump参数及使用介绍(转)
原文地址:http://dogdogcom.blog.51cto.com/2402458/490398
tcpdump
-a 将网络地址和广播地址转变成名字;
-d 将匹配信息包的代码以人们可以理解的汇编格式给出;
-dd 将匹配信息包的代码以c语言程序段的格式给出;
-ddd 将匹配信息包的代码以十进制的形式给出;
-e 在输出行打印出数据链路层的头部信息;
-f 将外部的Internet地址以数字的形式打印出来。
-l 使标准输出变为缓冲行形式;
-n 不把网络地址转换成名字;
-t 在输出的每一行不打印时间戳;
-v 输出一个略微具体的信息。比如在ip包中能够包含ttl和服务类型的信息;
-vv 输出具体的报文信息;
-c 在收到指定的包的数目后。tcpdump就会停止;
-F 从指定的文件里读取表达式,忽略其他的表达式;
-i 指定监听的网络接口。
-r 从指定的文件里读取包(这些包一般通过-w选项产生);
-w 直接将包写入文件里,并不分析和打印出来;
-T 将监听到的包直接解释为指定的类型的报文,常见的类型有rpc(远程过程调用)和snmp(简单网络管理协议)
-p 指定协议tcp,udp,icmp,arp
-s 指定捕获数包字的大小,单位byte,默认96最大65536
可使用keyword:
协议,-p tcp,udp,icmp,arp等
数据包:dst,src,port,dst port,src port,host
运算符:or and not(!)
多条件:dst \(172.16.1.1 or 172.16.1.13 \) 用括号及\转义
在进行嗅探的时候,必须置于混杂模式才干嗅探,系统会有日志记录
grep "promiscuous" /var/log/messages //混杂模式
用TCPDUMP捕获的TCP包的一般输出信息是:
src.port > dst.port: flags data-Seq ack win urgent options
src.port > dst.port: 源地址.源端口 到 目的地址.目的端口
flags: TCP包中的标志信息,S 是SYN标志, F (FIN), P (PUSH)
R (RST) "." (没有标记)
data-Seq: 是数据包中Sequence number(顺序号码)
ack: Acknowledge number(确认号码)
window是接收缓存的窗体大小,
urgent表明数据包中是否有紧急指针.
注tcp标志位:
SYN(synchronous建立联机) ACK(acknowledgement 确认)
PSH(push传送) FIN(finish结束) RST(reset重置) URG(urgent紧急)
查看icmp包:
1,tcpdump -i eth0 -p icmp (and src 192.168.1.xxx)
查看广播包:
2,tcpdump -i eth0 -p broadcast
查看arp包
3,tcpdump -i eth0 -p arp
4,tcpdump -X -i eth0 -p tcp port 21 //嗅探21端口数据并解包
获取ftppassword实例:
tcpdump -X -i eth0 -p tcp port 21 > 21.log &
cat 21.log | grep "USER\."
cat 21.log | grep "PASS\."
更精确的嗅探:
嗅探从172.16.1.1到172.16.1.2port为21的数据包:
tcpdump -i eth0 -X -tnn -p tcp and src 172.16.1.1 and dst 172.16.1.2 and port 21
5.tcpdump -X -n -p tcp dst port 80 //嗅探80端口数据,并解包 (加-t就不显示时间)
6.tcpdump -i eth0 host 202.96.128.68 //指定主机
7,//嗅探从172.16.1.2到172.16.1.1 或者172.16.1.13的数据包
tcpdump -i eth0 -tnn src 172.16.1.2 and dst \(172.16.1.1 or 172.16.1.13 \)
8,利用tcpdump统计各类数据包:
//统计1000个数据包中的ip连接量,并按从多到少的顺序排序,列出前3名
tcpdump -i ethp -tnn -c 1000 | awk -F "." "{print $1"."$2"."$3"."$4}' | sort | uniq -c |sort -nr | head -n 3//按从大到小的顺
序排序并列出并三名
tcpdump -i ethp -tnn -c 1000 | awk -F "." "{print $1"."$2"."$3"."$4}' | sort | uniq -c | awk '$1 > 100'//显示大于100数据包
sort:排序 -nr 从大到小 -rn 从小到大
uniq -c:过滤反复并在前面打印反复的行数
awk '$1 > 100':假设$1參数(数字)大于100
head -n 3:显示头3行
9,tcpdump -i eth0 -tnn host 192.168.1.100 and -p tcp or udp or icmp //嗅探全部 tcp,udp,icmp消息所不转换网络名称(加高速度)
10,嗅探dhcpserver的ip(捕获非法DHCP Server):
tcpdump -i eth0 -tnn port 67
然后dhclient eth0进行dhcp请求,抓住dhcp server的ip地址
或者看看直接登录它cat /var/messages | grep "DHCPACK from"
tcpdump参数及使用介绍(转)的更多相关文章
- (转) tcpdump参数解析及使用详解
tcpdump介绍 原文:http://blog.csdn.net/hzhsan/article/details/43445787 tcpdump 是一个运行在命令行下的抓包工具.它允许用户拦截和显示 ...
- ORACLE推导参数Derived Parameter介绍
Oracle的推导参数(Derived Parameters)其实是初始化参数的一种.推导参数值通常来自于其它参数的运算,依赖其它参数计算得出.官方文档关于推导参数(Derived Parameter ...
- tcpdump参数应用
详细参数: http://www.cnblogs.com/ggjucheng/archive/2012/01/14/2322659.html 我用到的参数: 一 tcpdump重要参数 -i 指定监听 ...
- Linux(Centos)中tcpdump参数用法详解(转)
在linux下进行编程开发的人尤其是网络编程的人会经常需要分析数据包,那么一定会用到tcpdump,下面就是关于tcpdump的使用方法说明(1). tcpdump的选项 -a 将网络地址 ...
- [na]tcpdump参数应用参考
详细参数参考,我记得之前有个ppt关于这个写的不错. 说实话,这玩意用的时候直接gg了. 常用应用: 过滤物理口 过滤某个port/ip/mac 过滤协议 显示ip/mac/port不解析等 一 tc ...
- tcpdump 参数详解及使用案例
参数 -A 以ASCII码方式显示每一个数据包(不会显示数据包中链路层头部信息). 在抓取包含网页数据的数据包时, 可方便查看数据(nt: 即Handy for capturing web pages ...
- SpringMVC七种参数绑定简单介绍
a. 默认支持的类型: httpServletRequest, httpservletresponse, httpsession, model 看自己需要, 如果需要用就加 ...
- Inf2Cat应用的参数使用详细介绍
http://msdn.microsoft.com/zh-cn/subscriptions/ff547089 Inf2Cat Inf2Cat (Inf2Cat.exe) 是一个命令行工具,该工具确 ...
- layer弹出框插件参数及方法介绍
layerui下载:http://www.layui.com 更多参数请阅读开发文档:http://www.layui.com/doc/modules/layer.html Layui 是一款采用自身 ...
随机推荐
- c#抓取动态页面WebBrowser
在ajax横行的年代,很多网页的内容都是动态加载的,而我们的小爬虫抓取的仅仅是web服务器返回给我们的html,这其中就 跳过了js加载的部分,也就是说爬虫抓取的网页是残缺的,不完整的,下面可以看下博 ...
- java--基于socket的网络传输开发
继http://blog.csdn.net/gaopeng0071/article/details/10959845此文章内容展开的研究. socket传输是基于tcp的网络传输协议进行的传输,tcp ...
- 关于split与StringTokenizer的理解
关于split与StringTokenizer的理解 一.split 依据匹配给定的正則表達式来拆分此字符串.此方法返回的数组包括此字符串的子字符串,每一个子字符串都由还有一个匹配给定表达式的子 ...
- gdb学习(一个)[再版]
概要 gdb是GNU debugger的缩写,是编程调试工具. 功能 1.启动程序,能够依照用户自己定义的要求随心所欲的执行程序. 2.可让被调试的程序在用户所指定的断点处停住 (断点能够是条件表达式 ...
- asp.net Form 认证【转】
第一部分 如何运用 Form 表单认证 一. 新建一个测试项目 为了更好说明,有必要新建一个测试项目(暂且为“FormTest”吧),包含三张页面足矣(Default.aspx.Logi ...
- angularjs入门学习【指令篇】
一.首先我们来了解下指令API 属性 含义 restrict 申明标识符在模版中作为元素,属性,类,凝视或组合,怎样使用 priority 设置模版中相对于其它标识符的运行顺序 Template 指定 ...
- hdu4734(数位dp)
hdu4734 给定 a和b, 问区间[0,b]内有多少个数字的f(i) <=f(a) dp[i][s] 表示i位的数字的f<=s 所以比如如果第i+1位选择数字5之后, 那么只要剩下的i ...
- in与exist , not in与not exist 的区别(转)
in和exists in 是把外表和内表作hash 连接,而exists是对外表作loop循环,每次loop循环再对内表进行查询.一直以来认为exists比in效率高的说法是不准确的. 如果查询的 ...
- RTF 格式 说明
摘要: 本文对RTF文件格式进行分析研究,对RTF文件结构及特性进行了阐述,并分别列举了几个有用性的样例进行具体分析, 终于通过VB程序代码实现了一个RTF书写器(不具有所见即所得特性).本文对软件开 ...
- hihocoder第42周 3*N骨牌覆盖(状态dp+矩阵快速幂)
http://hihocoder.com/contest/hiho42/problem/1 给定一个n,问我们3*n的矩阵有多少种覆盖的方法 第41周做的骨牌覆盖是2*n的,状态转移方程是dp[i] ...