基本语法篇

常用应用:
过滤物理口
过滤某个port/ip/mac
过滤协议
显示ip/mac/port不解析等

过滤mac

tcpdump -i eth0 ether host 24:DF:6A:F4:59:14 –nne

过滤ip

tcpdump host 192.168.1.12 #不接-i表示所有接口

- 抓取所有经过 eth0,目的或源地址是 192.168.1.1 的网络数据
# tcpdump -i eth0 host 192.168.1.1 - 源地址
# tcpdump -i eth0 src host 192.168.1.1 - 目的地址
# tcpdump -i eth0 dst host 192.168.1.1

面试题: 过滤8000端口的ip为221.221.221.1的数据

tcpdump port 8000 and src host 211.211.211.1 -nnv

过滤port

- 抓取所有经过 eth0,目的或源端口是 25 的网络数据
# tcpdump -i eth0 port 25 - 源端口
# tcpdump -i eth0 src port 25 - 目的端口
# tcpdump -i eth0 dst port 25网络过滤 # tcpdump -i eth0 net 192.168
# tcpdump -i eth0 src net 192.168
# tcpdump -i eth0 dst net 192.168

过滤tcp.flag

- 只抓 SYN 包
# tcpdump -i eth0 'tcp[tcpflags] = tcp-syn' - 抓 SYN, ACK
# tcpdump -i eth0 'tcp[tcpflags] & tcp-syn != 0 and tcp[tcpflags] & tcp-ack != 0'

过滤协议

# tcpdump -i eth0 arp
# tcpdump -i eth0 ip
# tcpdump -i eth0 tcp
# tcpdump -i eth0 udp
# tcpdump -i eth0 icmp

常用表达式

非 : ! or "not" (去掉双引号)
且 : && or "and"
或 : || or "or" - 过滤非22端口
tcpdump -i eth0 ! port 22
- 抓取所有经过 eth0,目的地址是 192.168.1.254 或 192.168.1.200 端口是 80 的 TCP 数据
# tcpdump -i eth0 '((tcp) and (port 80) and ((dst host 192.168.1.254) or (dst host 192.168.1.200)))' - 抓取所有经过 eth0,目标 MAC 地址是 00:01:02:03:04:05 的 ICMP 数据
# tcpdump -i eth0 '((icmp) and ((ether dst host 00:01:02:03:04:05)))' - 抓取所有经过 eth0,目的网络是 192.168,但目的主机不是 192.168.1.200 的 TCP 数据
# tcpdump -i eth0 '((tcp) and ((dst net 192.168) and (not dst host 192.168.1.200)))'
- 抓 SMTP 数据
# tcpdump -i eth0 '((port 25) and (tcp[(tcp[12]>>2):4] = 0x4d41494c))' # 抓取数据区开始为"MAIL"的包,"MAIL"的十六进制为 0x4d41494c。
- 抓 HTTP GET 数据
# tcpdump -i eth0 'tcp[(tcp[12]>>2):4] = 0x47455420' # "GET "的十六进制是 47455420 - 抓 SSH 返回
# tcpdump -i eth0 'tcp[(tcp[12]>>2):4] = 0x5353482D' # "SSH-"的十六进制是 0x5353482D
# tcpdump -i eth0 '(tcp[(tcp[12]>>2):4] = 0x5353482D) and (tcp[((tcp[12]>>2)+4):2]= 0x312E)' # 抓老版本的 SSH 返回信息,如"SSH-1.99.." - 抓 DNS 请求数据
# tcpdump -i eth0 udp dst port 53

其他选项

-c 参数对于运维人员来说也比较常用,因为流量比较大的服务器,靠人工 CTRL+C 还是抓的太多,于是可以用-c 参数指定抓多少个包。
# time tcpdump -nn -i eth0 'tcp[tcpflags] = tcp-syn' -c 10000 > /dev/null
上面的命令计算抓 10000 个 SYN 包花费多少时间,可以判断访问量大概是多少。 - 实时抓取端口号8000的GET包,然后写入GET.log
tcpdump -i eth0 '((port 8000) and (tcp[(tcp[12]>>2):4]=0x47455420))' -nnAl -w /tmp/GET.log

tcpdump非常实用的抓包实例

之前总结的tcpdump

tcpdump输出详解

[na]tcpdump非常实用的抓包实例的更多相关文章

  1. tcpdump非常实用的抓包实例

    详细的文档见tcpdump高级过滤技巧 基本语法 ========过滤主机--------- 抓取所有经过 eth1,目的或源地址是 192.168.1.1 的网络数据# tcpdump -i eth ...

  2. Tcpdump非常实用的抓包12实例

    1.过滤主机---------------------------------------------------------------- - 抓取所有经过 eth1,目的或源地址是 192.168 ...

  3. Wireshark抓包实例诊断TCP连接问题

    转载请在文首保留原文出处:EMC中文支持论坛https://community.emc.com/go/chinese  介绍 前文论述了TCP基础知识,从本节开始,通过TCP抓包实例来诊断TCP常见问 ...

  4. tcpdump安装配置及抓包分析

    http://blog.csdn.net/e421083458/article/details/23963189 cpdump安装配置及抓包分析 预装软件:[plain] view plain cop ...

  5. 【跟唐老师学习云网络】 - 第7篇 Tcpdump大杀器抓包

    [摘要] 前面章节的网络协议栈相关的信息建议大家多学习一遍,因为这些都是最基础的东西,想玩好云网络必备基本功.. 一.上帝视角 之前提到过定位问题可以开启上帝视角,那么如何开启就要依靠tcpdump这 ...

  6. Wireshark抓包实例分析TCP重复ACK与乱序

    转载请在文首保留原文出处: EMC 中文支持论坛https://community.emc.com/go/chinese 介绍 TCP 的一大常见问题在于重复 ACK 与快速重传.这一现象的发生也是由 ...

  7. 转://tcpdump抓包实例

    基本语法 ========过滤主机--------- 抓取所有经过 eth1,目的或源地址是 192.168.1.1 的网络数据# tcpdump -i eth1 host 192.168.1.1- ...

  8. 如何利用tcpdump对mysql进行抓包操作

    命令如下: tcpdump -s -l -w - dst -i eno16777736 |strings 其中-i指定监听的网络接口,在RHEL 7下,网络接口名不再是之前的eth0,而是 eno16 ...

  9. 网络基本功(二十七):Wireshark抓包实例分析HTTP问题

    转载请在文首保留原文出处:EMC中文支持论坛https://community.emc.com/go/chinese 介绍 HTTP的问题可能是由于慢速服务器或客户端,TCP性能问题,本文讨论上述问题 ...

随机推荐

  1. iOS sqlite C语言操作

    利用周六时间看了一下关于sqlite的知识.在这记录一下.看的传智播客视频 对数据的操作基本上就是增删改查: static sqlite3 *db; //声明一个数据库 @implementation ...

  2. [Nginx]用Nginx实现与应用结合的訪问控制 - 防盗链

    应用场景:图片等资源须要设置权限,如:仅仅有认证过的用户才干訪问自己的图片. 解决的方法:使用Nginx的防盗链模块http_secure_link能够实现,该模块默认情况下不包括.故在安装时要加上- ...

  3. 转:CMake 使用方法

    CMake是一个跨平台的安装(编译)工具,可以用简单的语句来描述所有平台的安装(编译过程).他能够输出各种各样的makefile或者project文件,能测试编译器所支持的C++特性,类似UNIX下的 ...

  4. 没有找到AdbWinApi.dll

    今天调试adb命令时遇到一些问题 1. 没有找到AdbWinApi.dll 2. adb server is out of date.  killing... ADB server didn't AC ...

  5. 向大家介绍15个漂亮的Ubuntu GDM主题

    没事向大家介绍几个Ubuntu GDM主题,希望大家喜欢,这些Ubuntu GDM主题是我找了很久的…… "GNOME Display Manager允许用户轻松的设定登录界面主题.网上有大 ...

  6. 从零实现Lumen-JWT扩展包(序):前因

    转自:https://zhuanlan.zhihu.com/p/22531819?refer=lsxiao 最近这段时间我寻思着把几个月前爬下来的6万多首诗词曲文做成一个API,免费开放给大家用. 这 ...

  7. hibernate联合主键注解方式

    方法一:主键类用@Embeddable,pojo类仍然用@Entity但是引用主键类的对象用@Id 主键pojo类: @Embeddable public class composeIdPK impl ...

  8. hihocoder234周 计算不包含黑点的矩形个数

    题目链接 问题描述 一个棋盘有n条横线,m条竖线,上面有k个黑点,问有多少个不包含黑点的矩形. 数据范围: n和m最大为1000,k最大为10 方法一:动态规划 复杂度n*m*k. import ja ...

  9. Install MySQL 5.7 on Fedora 25/24, CentOS/RHEL 7.3/6.8/5.11

    MySQL is a relational database management system (RDBMS) that runs as a server providing multi-user ...

  10. java http下载文件/上传文件保存

    private boolean downloadFile(String httpUrl, String savePath) { int byteread = 0; try { URL url = ne ...