TCPDUMP

[TCP/HTTP]用tcpdump解决HTTP截包

耗尽温柔 提交于 2020-02-04 19:58:30
最近,要在MAC下跟踪一个HTTP协议的问题,没有强大的Fiddler之后,回归到tcpdump里面。 强大的一句话搞定 tcpdump -A host ** and port 80 一定要指定-A才能看到包的内容,再指定host与port即可 最后转一篇文章: [原创] 超级详细Tcpdump 的用法(原创) http://www.chinaunix.net 作者: jeffyan 发表于:2008-05-29 17:14:18 【 发表评论 】 【 查看原文 】 【 网络安全讨论区 】【 关闭 】 第一种是关于类型的关键字,主要包括host,net,port, 例如 host 210.27.48.2,指明 210.27.48.2是一台主机,net 202.0.0.0 指明 202.0.0.0是一个网络地址,port 23 指明端口号是23。如果没有指定类型,缺省的类型是host. 第二种是确定传输方向的关键字,主要包括src , dst ,dst or src, dst and src ,这些关键字指明了传输的方向。举例说明,src 210.27.48.2 ,指明ip包中源地址是210.27.48.2 , dst net 202.0.0.0 指明目的网络地址是202.0.0.0 。如果没有指明方向关键字,则缺省是src or dst关键字。 第三种是协议的关键字

TCPDUMP pcap

泪湿孤枕 提交于 2020-02-02 03:58:06
http://www.tcpdump.org/pcap.htm http://blog.csdn.net/force_eagle/article/details/6681802 一、tcpdump简明用法 Usage: tcpdump [-adeflnNOpqRStuvxX] [ -c count ] [ -C file_size ] /Files/diyunpeng/soc_po.txt [ -F file ] [ -i interface ] [ -r file ] [ -s snaplen ] [ -T type ] [ -U user ] [ -w file ] [ -E algo:secret ] [ expression ] -c 捕获指定数量的报文 -F使用文件作为过滤表达式的源 -i 使用可选网络接口捕获报文 -p 禁止在杂凑模式下捕获、- r读取捕获文件而非网络接口 -w保存原始报文到文件中 tcpdump是非常强大的网络安全分析工具,可以将网络上截获的数据包保存到文件以备分析。可以定义过滤规则,只截获感兴趣的数据包,以减少输出文件大小和数据包分析时的装载和处理时间。 这篇文章只涉及tcpdump的基本用法,请记住tcpdump比我描述的强大的多。 针对网络接口、端口和协议的数据包截取。假定你要截取网络接口eth1,端口号6881的tcp数据包

超级详细Tcpdump 的用法

匆匆过客 提交于 2020-02-02 01:06:30
1、抓取回环网口的包:tcpdump -i lo 2、防止包截断:tcpdump -s0 3、以数字显示主机及端口:tcpdump -n 第一种是关于类型的关键字,主要包括host,net,port, 例如 host 210.27.48.2,指明 210.27.48.2是一台主机,net 202.0.0.0 指明 202.0.0.0是一个网络地址,port 23 指明端口号是23。如果没有指定类型,缺省的类型是host. 第二种是确定传输方向的关键字,主要包括src , dst ,dst or src, dst and src ,这些关键字指明了传输的方向。举例说明,src 210.27.48.2 ,指明ip包中源地址是210.27.48.2 , dst net 202.0.0.0 指明目的网络地址是202.0.0.0 。如果没有指明方向关键字,则缺省是src or dst关键字。 第三种是协议的关键字,主要包括fddi,ip,arp,rarp,tcp,udp等类型。Fddi指明是在FDDI(分布式光纤数据接口网络)上的特定 的网络协议,实际上它是"ether"的别名,fddi和ether具有类似的源地址和目的地址,所以可以将fddi协议包当作ether的包进行处理和 分析。其他的几个关键字就是指明了监听的包的协议内容。如果没有指定任何协议,则tcpdump将会监听所有协议的信息包

tcpdump抓包

放肆的年华 提交于 2020-02-02 00:23:35
tcpdump简单来说就是输出网络上的数据报文。可以根据使用者的选择来对网络上的数据报文进行截获并进行分析。 可以根据网络协议、物理接口、ip地址和端口号等各种条件进行过滤,还可以对抓获报文大小进行控制,等等。 1. 抓取报文 最简单的开始捕获报文的方法是直接使用tcpdump并指定捕获的网卡名称即可。 tcpdump -i eth0 可以使用ctrl+c来结束捕获程序。tcpdump的可视化输出功能有限。 通常是捕获报文并保存下来,然后使用图形用户界面软件wireshark来分析。 可以使用-w选项来指定文件名即可将报文保存下来。 tcpdump -i eth0 -s 1500 -w aaa.cap tcpdump有很多参数来控制在哪里捕获,如何捕获,以及捕获文件如何保存处理等选项, -i interface 指定监听的网卡 -s 指定每个报文中截取的数据长度,不是缺省的68字节。如果仅仅对报头感兴趣,可以不使用该选项,指定为0说明不限制报文长度,而是捕获整个报文。一般以太网的MTU值为1500,因此指定长度为1500即可。 -w filename  报文保存到文件 -c 当收到指定报文个数后退出 -e 打印链接头,如MAC地址(print the link-level header on each dump line. This can be used, to print

How to schedule tcpdump to run for a specific time of period?

三世轮回 提交于 2020-01-30 14:20:13
问题 Each time, when I manually run tcpdump , I have to use Ctrl + C to stop it. Now I want to schedule my tcpdump with cronjob and I only need it to run for 1 and half hours. Without manually running Ctrl + C or kill command, how can it be stopped automatically? Here is the command I am testing: tcpdump -i eth0 'port 8080' -w myfile I can schedule another cronjob to kill the tcpdump process, but it seems not a good idea. 回答1: You can combine -G {sec} (rotate dump files every x seconds) and -W

tcpdump常用方法

◇◆丶佛笑我妖孽 提交于 2020-01-28 17:21:01
tcpdump -i eth0监视制定网络接口的数据包 tcpdump host 10.13.1.135监视所有10.13.1.135主机收到和发出的数据包 tcpdump src host 10.13.1.135监视10.13.1.135所有发出的包 tcpdump dst host 10.13.1.135监视10.13.1.135所有收到的包 tcpdump tcp port 23 and host 10.13.1.135监视主机10.13.1.135端口23收到及发出的包 tcpdump tcp -i eth1 -t -s 0 -c 100 and dst port 8090 and src net 192.168.1.0 -w ./target.cap tcp: ip icmp arp rarp和tcp,udp,icmp这些选项等都要放在第一个参数未知,用来过滤数据报的类型 -i:只抓取制定接口的包 -t:不显示时间戳 -s 0:抓取数据包时默认抓取长度为68字节,加上-s 0可以抓取完整的数据包 -c 100:只抓取100个数据包 dst:抓取目标端口时8090的数据包 src net:数据包的源网络地址 -w:保存成cap文件,方便用wireshark分析 tcpdump -s 0 -A 'tcp dst port 8090' -A:以ASCII码显示每个数据包

Linux基础:用tcpdump抓包

倖福魔咒の 提交于 2020-01-27 10:41:59
简介 网络数据包截获分析工具。支持针对网络层、协议、主机、网络或端口的过滤。并提供and、or、not等逻辑语句帮助去除无用的信息。 tcpdump - dump traffic on a network 例子 不指定任何参数 监听第一块网卡上经过的数据包。主机上可能有不止一块网卡,所以经常需要指定网卡。 tcpdump 监听特定网卡 tcpdump -i en0 监听特定主机 例子:监听本机跟主机 182.254.38.55 之间往来的通信包。 备注:出、入的包都会被监听。 tcpdump host 182.254.38.55 特定来源、目标地址的通信 特定来源 tcpdump src host hostname 特定目标地址 tcpdump dst host hostname 如果不指定 src 跟 dst ,那么来源 或者目标 是hostname的通信都会被监听 tcpdump host hostname 特定端口 tcpdump port 3000 监听TCP/UDP 服务器上不同服务分别用了TCP、UDP作为传输层,假如只想监听TCP的数据包 tcpdump tcp 来源主机+端口+TCP 监听来自主机 123.207.116.169 在端口 22 上的TCP数据包 tcpdump tcp port 22 and src host 123.207.116.169

Linux tcpdump命令详解

折月煮酒 提交于 2020-01-25 23:47:39
简介 用简单的话来定义tcpdump,就是:dump the traffic on a network,根据使用者的定义对网络上的数据包进行截获的包分析工具。 tcpdump可以将网络中传送的数据包的“头”完全截获下来提供分析。它支 持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。 实用命令实例 默认启动 tcpdump 普通情况下,直接启动 tcpdump 将监视第一个网络接口上所有流过的数据包。 监视指定网络接口的数据包 tcpdump -i eth1 如果不指定网卡,默认tcpdump只会监视第一个网络接口,一般是eth0,下面的例子都没有指定网络接口。  监视指定主机的数据包 打印所有进入或离开sundown的数据包. tcpdump host sundown 也可以指定ip,例如 截获所有 210.27.48.1 的主机收到的和发出的所有的数据包 tcpdump host 210.27.48.1 打印helios 与 hot 或者与 ace 之间通信的数据包 tcpdump host helios and \( hot or ace \) 截获主机 210.27.48.1 和主机 210.27.48.2 或 210.27.48.3 的通信 tcpdump host 210.27.48.1 and \ (210.27

How intrusive is tcpdump?

半城伤御伤魂 提交于 2020-01-23 08:01:20
问题 I look around to find a documentation on tcpdump internals, but I did not found nothing yet. So my question is how intrusive is tcpdump on a computer. How to evaluate the amount of resources (memory or cpu) dedicated for the analysis of the traffic? 回答1: As far as I read, tcpdump consume it's kinda variable depending what you're asking. To see how many resources your tcpdump process consumes just watch system monitor like top Top Manual. tcpdump output can be considerable if the network

tcpdump实现和run_filter

梦想的初衷 提交于 2020-01-21 20:05:47
一、tcpdump 对于本机中进程的系统行为调用跟踪,strace是一个很好的工具,而在网络问题的调试中,tcpdump应该说是一个必不可少的工具,和大部分linux下优秀工具一样,它的特点就是简单而强大。 默认情况下,tcpdump不会抓取本机内部通讯的报文。根据网络协议栈的规定,对于报文,即使是目的地是本机,也需要经过本机的网络协议层,所以本机通讯肯定是通过API进入了内核,并且完成了路由选择。 二、linux下抓包原理 linux下的抓包是通过注册一种虚拟的底层网络协议来完成对网络报文(准确的说是网络设备)消息的处理权。当网卡接收到一个网络报文之后,它会遍历系统中所有已经注册的网络协议,例如以太网协议、x25协议处理模块来尝试进行报文的解析处理,这一点和一些文件系统的挂载相似,就是让系统中所有的已经注册的文件系统来进行尝试挂载,如果哪一个认为自己可以处理,那么就完成挂载。 当抓包模块把自己伪装成一个网络协议的时候,系统在收到报文的时候就会给这个伪协议一次机会,让它来对网卡收到的报文进行一次处理,此时该模块就会趁机对报文进行窥探,也就是把这个报文完完整整的复制一份,假装是自己接收到的报文,汇报给抓包模块。 先看一下网络层对于接收到的报文的处理方法 static int process_backlog(struct net_device *backlog_dev, int