tcpdump实用笔记

前言:
本文是关于tcpdump抓包的文章,是一篇对于本人而言比较实用轻便的文章,如您需要更详细的介绍,
以下链接的文章相比最适合您,而且网络知识要非常扎实才能理解透彻:

tcpdump详细介绍

简介:
用简单的话来定义tcpdump,就是:dump the traffic on a network,根据使用者的定义对网络上的数据包进行截获的包分析工具。 tcpdump可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。

命令:tcpdump

  ‘-c‘  在抓到指定数量的包后,tcpdump停止
  ‘-e‘  每行的打印输出中将包括数据包的数据链路层头部信息
  ‘-i‘  选择监听的网络接口,如eth0
  ‘-n‘  不把网络地址转换为名字
  ‘-nn‘ 不进行端口名称的转换
  ‘-q‘  仅列出较为简短的数据包信息,每一行的内容比较精简。
  ‘-w‘  直接将分组写入到文件中,而不是不分析并打印出来
  ‘-v‘  输出一个稍微详细的信息,例如在ip包中可以包括ttl和服务类型的信息。
  ‘-vv‘ 输出详细的报文信息。
  ‘-r‘  从-w选项产生的文件中读取包,文件可以是标准输入‘-‘
  ‘-w‘  直接将分组写入文件中,而不是不分析并打印出来。可以输出到标准输入‘-‘
  ‘-s ‘ 设置tcpdump的数据包抓取长度,设置为0 意味着让tcpdump自动选择合适的长度来抓取数据包

关键字:

 1.类型关键字 host,net,port ,默认是host
 2.传输方向关键字 src,dst,默认是src or dst关键字
 3.协议关键字 fddi,ip,arp,rarp,tcp,udp,icmp
 4.逻辑关键字 and or not
 5.其他关键字 gateway broadcast less greater

应用实例:

抓取主机192.168.0.1接收或发送的80端口的包

tcpdump -nn -i eth0 tcp and host 192.168.0.1 and port 80

以合适的长度抓取除了22端口的数据包,并把它保存到1.cap文件中

tcpdump -nn -vs0 tcp and port not 22 -c 100 -w 1.cap

截获主机210.27.48.1 和主机210.27.48.2 或210.27.48.3的通信

tcpdump host 210.27.48.1 and \ (210.27.48.2 or 210.27.48.3 \) 
时间: 2024-10-07 02:00:21

tcpdump实用笔记的相关文章

TCPDUMP学习笔记。

1.启动 普通情况下,直接启动tcpdump将监视第一个网络界面上所有流过的数据包,注意这里使用超级用户.当用户上网得时候,就会将监视得数据打印出来. 我没使用root用户,结果输入tcpdump命令,提示: tcpdump: packet printing is not supported for link type BLUETOOTH_HCI_H4_WITH_PHDR: use –w 2.简单实例 监听网卡(我的网卡号是eno16777736) # tcpdump -i eno1677773

tcpdump 实用语法

权限: [email protected]:~$ sudo -s 抓10个数据包: [email protected]:~# tcpdump  -c10 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes 19:21:02.483477 IP ubuntu

tcpdump重要笔记

无关痛痒的参数就不写了.只说一些我认为值得注意的. 1 tcpdump参数 -s 最早在公司旧机器上截包时发现总是不完整,于是知道了这个参数,之后就一直用-s0了.最近一次在家里,忘记输入-s发现包竟然还是完整的,赶紧用man查询了下,人家说的很明白缺省值是"65535 bytes",这下把我搞蒙了.最终才发现,原来至少在4.1之后的tcpdump使用的缺省值都是65535了,公司的tcpdump是3.9缺省值是96字节.所以现在网上资料里普遍提到的"默认tcpdump抓包大

Qt开发中的实用笔记二--中文转码问题和string转换问题:

一,中文乱码转码问题 1,转码三句话:window下默认是GBK格式,linux下默认是UTF-8,看情况转换UTF-8/GBK QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8")); QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF-8")); QTextCodec::setCodecForCStrings(QTextCodec

Oracle Apex 实用笔记系列 4 - 自定义javascript

对于自定义的javascript,有如下几种方式 1. 页面加载 在组件视图 1.点击 编辑page 2.在javascript标签页的Function and global variable declaration处,书写自定义的javascript函数; 3.在Execute when page loads处调用或执行javascript代码 2.Dynamic Action 1.创建一个dynamic action; 2.选择事件类型,比如change, click, page load等

Oracle Apex 实用笔记系列 3 - 组件只读

1. 普通组件 对于Apex各种组件(page, region, item, button等) 可以很简单地在某种条件下设置为只读.它们的设置很类似,下面也region只读作为个例子. 在组件视图(Component View) 1. 点击某一个Region 2. 点击只读(Read only)标签 3.选择条件类型,有很多选择.简单的可以是一个表达式不为NULL或者两个表达式(不)相等.笔者常用的是PL/SQL Expression 或者PL/SQL Function body returni

Oracle Apex 实用笔记系列 6 - 可编辑交互报告 Editable Interactive Report

据笔者所知,Apex 4.x 是没有提供可编辑交互报告组件的.这就需要我们手动实现.其实这也并不是很复杂,只需要简单几步. 1. 根据向导建立一个interactive report.查询语句可以如下. select apex_item.hidden(1,e.id) || e.name as staff, apex_item.select_list_from_lov(p_idx=>2,p_value=>e.department_id,p_lov=>'lov_department') as

Oracle Apex 实用笔记系列 0

按笔者理解,Oracle Application Express (Apex) 是oracle公司出品的,依赖于oracle数据库的一套web快速开发框架.Oracle Apex是笔者在实际开发工作中用到的一个工具.笔者发现虽然它的英文资源并不少,但可能是由于国内还不是很普遍,中文资源并不多.在实际工作中,有些蹊跷的问题很难在网络上找到中文的解决方案,所以,笔者计划把自己在实际工作中遇到的问题以及解决方案记录下来成为一个系列.这个系列本身并不是Oracle Apex教程,只是点滴的记载.如果以后

MVC实用笔记

---------------------------- 渲染一个Action:@{Html.RenderAction("Rulelist", "AjaxReuqestData",new { area = "AjaxTest" });} public ActionResult Rulelist() { List<HomeRuleList> homeRuleLists = GetHomeRuleLists(); return Parti