dump用法

1、tcpdump是一个用于截取网络分组,并输出分组内容的工具,凭借强大的功能和灵活的截取策略,使其成为UNIX系统下用于网络分析和问题排查的首选工具;

默认启动

 tcpdump -vv

过滤主机

 tcpdump  -i  eth1 host 192.168.1.1

 tcpdump  -i  eth1 src 192.168.1.1

 tcpdump  -i  eth1 dst 192.168.1.1

 1、抓取所有经过eht1目的地址或者原地址是192.168.1.1

过滤端口

 tcpdump -i eth1 port 25

 tcpdump -i eth1 src port 25

 tcpdump  -i eth1  dst port 25

 

网络过滤

 tcpdump -i eth1 net 192.168

tcpdump -i eth1  src net 192.168

tcpdump -i eth1  dst net 192.168

协议过滤

 tcpdump -i eth1 arp

 tcpdump -i eth1 ip

 tcpdump -i eth1 tcp

 tcpdump -i eth1 udp

 tcpdump -i eth1 icmp

常用表达式

非:!Or "not"(去掉双引号)

且:&&  "and"(去掉双引号)

或:|| or “or”

 

高级过滤:

首先了解如何了解如何从包头过滤信息

 proto[x:y]         :过滤从x字节开始的y字节数

 proto[x:y]&z = 0   :proto[x:y]和z的与操作为0

proto[x:y]&z != 0  :proto[x:y]和z的与操作不为0

 proto[x:y]&z = z  :proto[x:y]和z的与操作为z

proto[x:y] = z   :proto[x:y]等于z

操作符:>, < , >=, <= ,== ,!=

 

3tcpdumpwireshark抓包

Tcpdump + WireShark的完美结合组合实现:在linux里抓包,然后在windows里分析包

tcpdump tcp -i eth1 -t -s 0 -c 100 and dst port ! 22 and src net 192.168.1.0/24 -w ./target.pcap

Tcpdump: ip icmp arp rarp 和tcp、udp、 icmp 这些选项等都要放到第一个参数的位置,用来过滤数据报的类型

-t: 不显示时间戳

 

4、使用tcpdump http

 tcpdump  -XvvennSs -I eth0 tcp[20:2]=0x4745 or tcp[20;2] = 0x4854

 

0x4745 为“GET”前两个字母“GE”,0x4854为“HTTP”前两个字母“HT”;tcpdump对截取的数据并没有进行彻底解码,数据包内的大部分内容是使用十六进制的形式直接打印输出。显然这不利于网络故障,通常的解决办法是先使用带-w参数的tcpdump截取数据并保存到文件中,然后使用其他程序(如wireshark)进行进行解码分析。以避免捕获的数据包填满整个硬盘;

 

基本上tcpdump 总的输出格式为: 系统时间  来源主机 端口 > 目标主机 端口  数据包参数

 

发布了37 篇原创文章 · 获赞 19 · 访问量 888

猜你喜欢

转载自blog.csdn.net/zuiyijiangnan/article/details/103003223