第一种是关于类型的关键字,主要包括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将会监听所有协议的信息包。
除了这三种类型的关键字之外,其他重要的关键字如下:gateway, broadcast,less,greater,还有三种逻辑运算,取非运算是 'not ' '! ', 与运算是'and','&&';或运算 是'or' ,'││';这些关键字可以组合起来构成强大的组合条件来满足人们的需要,下面举几个例子来说明。
普通情况下,直接启动tcpdump将监视第一个网络界面上所有流过的数据包。
# tcpdump
tcpdump: listening on fxp0
11:58:47.873028 202.102.245.40.netbios-ns > 202.102.245.127.netbios-ns: udp 50
11:58:47.974331 0:10:7b:8:3a:56 > 1:80:c2:0:0:0 802.1d ui/C len=43
0000 0000 0080 0000 1007 cf08 0900 0000
0e80 0000 902b 4695 0980 8701 0014 0002
000f 0000 902b 4695 0008 00
11:58:48.373134 0:0:e8:5b:6d:85 > Broadcast sap e0 ui/C len=97
ffff 0060 0004 ffff ffff ffff ffff ffff
0452 ffff ffff 0000 e85b 6d85 4008 0002
0640 4d41 5354 4552 5f57 4542 0000 0000
0000 00
使用-i参数指定tcpdump监听的网络界面,这在计算机具有多个网络界面时非常有用,
使用-c参数指定要监听的数据包数量,
使用-w参数指定将监听到的数据包写入文件中保存
A想要截获所有210.27.48.1 的主机收到的和发出的所有的数据包:
#tcpdump host 210.27.48.1
B想要截获主机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 \)
C如果想要获取主机210.27.48.1除了和主机210.27.48.2之外所有主机通信的ip包,使用命令:
#tcpdump ip host 210.27.48.1 and ! 210.27.48.2
D如果想要获取主机210.27.48.1接收或发出的telnet包,使用如下命令:
#tcpdump tcp port 23 host 210.27.48.1
E 对本机的udp 123 端口进行监视 123 为ntp的服务端口
# tcpdump udp port 123
F 系统将只对名为hostname的主机的通信数据包进行监视。主机名可以是本地主机,也可以是网络上的任何一台计算机。下面的命令可以读取主机hostname发送的所有数据:
#tcpdump -i eth0 src host hostname
G 下面的命令可以监视所有送到主机hostname的数据包:
#tcpdump -i eth0 dst host hostname
H 我们还可以监视通过指定网关的数据包:
#tcpdump -i eth0 gateway Gatewayname
I 如果你还想监视编址到指定端口的TCP或UDP数据包,那么执行以下命令:
#tcpdump -i eth0 host hostname and port 80
J 如果想要获取主机210.27.48.1除了和主机210.27.48.2之外所有主机通信的ip包
,使用命令:
#tcpdump ip host 210.27.48.1 and ! 210.27.48.2
K 想要截获主机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 \)
L 如果想要获取主机210.27.48.1除了和主机210.27.48.2之外所有主机通信的ip包,使用命令:
#tcpdump ip host 210.27.48.1 and ! 210.27.48.2
M 如果想要获取主机210.27.48.1接收或发出的telnet包,使用如下命令:
#tcpdump tcp port 23 host 210.27.48.1
第三种是协议的关键字,主要包括fddi,ip ,arp,rarp,tcp,udp等类型
除了这三种类型的关键字之外,其他重要的关键字如下:gateway, broadcast,less,
greater,还有三种逻辑运算,取非运算是 'not ' '! ', 与运算是'and','&&';或运算 是'o
r' ,'||';
第二种是确定传输方向的关键字,主要包括src , dst ,dst or src, dst and src ,
如果我们只需要列出送到80端口的数据包,用dst port;如果我们只希望看到返回80端口的数据包,用src port。
#tcpdump –i eth0 host hostname and dst port 80 目的端口是80
或者
#tcpdump –i eth0 host hostname and src port 80 源端口是80 一般是提供http的服务的主机
如果条件很多的话 要在条件之前加and 或 or 或 not
#tcpdump -i eth0 host ! 211.161.223.70 and ! 211.161.223.71 and dst port 80
如果在ethernet 使用混杂模式 系统的日志将会记录
May 7 20:03:46 localhost kernel: eth0: Promiscuous mode enabled.
May 7 20:03:46 localhost kernel: device eth0 entered promiscuous mode
May 7 20:03:57 localhost kernel: device eth0 left promiscuous mode
tcpdump对截获的数据并没有进行彻底解码,数据包内的大部分内容是使用十六进制的形式直接打印输出的。显然这不利于分析网络故障,通常的解决办法是先使用带-w参数的tcpdump 截获数据并保存到文件中,然后再使用其他程序进行解码分析。当然也应该定义过滤规则,以避免捕获的数据包填满整个硬盘。
- 浏览: 176651 次
- 性别:
- 来自: 北京
最新评论
-
khlee:
博主你好:我的服务端已经搭建完毕,但是客户端调用一得不到结果, ...
淘宝JAVA中间件Diamond详解(一)---简介&快速使用 -
zhangzhj85:
我很奇怪这个直接用zookeeper不是很好。
淘宝JAVA中间件Diamond详解(一)---简介&快速使用 -
跨界_IT:
[b][/b]
JAVA Memcached 安装与简单实战(windows) -
xcl1025:
好资源,好案例,不过官网上的tag包怎么用啊,是在看不懂官网 ...
JAVA Memcached 安装与简单实战(windows) -
lizhiqingli:
各种客户端:http://code.google.com/p/ ...
Memcached集群/分布式的单点故障
TCPDUMP 使用(转)
- 博客分类:
- linux
相关推荐
抓包神器,非常常用的抓包工具,生成pcap文件
Linux tcpdump命令 Linux tcpdump命令用于倾倒网络传输数据。 执行tcpdump指令可列出经过指定网络界面的数据包文件头,在Linux操作系统中,你必须是系统管理员。 语法tcpdump [-adeflnNOpqStvx][-c][-dd][-ddd][-F]...
使用多个Wireshark版本进行解码 省略HTTP / 2标头 添加其他主机标签 添加时间戳 仅显示某些数据包 共享编辑的轨迹 概括 这组Python脚本可让您将pcap , pcapng或pdml 5G协议跟踪( Wireshark , tcpdump ,...)...
跨平台开发工具如Xamarin、React Native和Flutter,让开发者使用一种语言或框架编写可以在多个操作系统上运行的应用程序。 文档编写与API管理: 文档生成工具可以自动生成代码注释文档,便于团队内外理解和使用...
打开包含使用tcpdump / WinDump,Wireshark和许多其他数据包捕获程序捕获的数据包数据的文件。 转换中文的办法 进入软件主界面之后,点击“edit”。 选择下拉栏目中最后一个“Preference” “Language”选项默认是...
Logsta服务这个Python驱动的脚本将通过TCPDump监视网络连接,并通过auth.log监视Snort日志。 它将秘密日志转换为Apache / Logstalgia接受的格式,并将其保存到单独的日志文件中。 然后,该文件将被重定向到...
iphone tcpdump抓包转换成Wireshark可读的文件.
通过ICMP隧道进行数据过滤 icmp_transmitter.exe是一个可执行文件,用于使用icmp ping数据包将一个系统上的文件发送到另一个系统。 该工具首先将文件(exe,图像,文档等)转换为... 运行tcpdump。 使用以下命令: sud
1.5.2 ARP高速缓存的查看和修改 1.5.3 使用tcpdump观察ARP通信过程 1.6 DNS工作原理 1.6.1 DNS查询和应答报文详解 1.6.2 Linux下访问DNS服务 1.6.3 使用tcpdump观察DNS通信过程 1.7 socket和TCPIP协议族的...
对于FortiAuthenticator,请使用:“ tcpdump -XXe -s0 -tt -ni ...” 使用--in参数运行sniftran,以指定带有数据包的文本文件 将创建具有相同名称和后缀“ .pcapng”的文件。 如果要为PCAPng使用
要使用养蜂场,您可以使用自己喜欢的工具捕获生产流量,该工具会生成pcap文件( tcpdump , gulp等)。 接下来,您将 pcap 文件后处理为.jobs文件,该文件描述了每个模拟客户端将发出的请求序列以及它们的确切时间...
18.11.5 tcpdump 18.11.6 whois 第十九章 系统优化和核心参数调整 19.1 系统性能与优化概述 19.2 性能监视与测试 19.3 系统优化的相关命令 19.3.1 uptime 19.3.2 free 19.3.3 top 19.3.4 vmstat 19.3.5 ps 19.4 ...
该脚本使您可以在Linux Wireshark实例上查看OpenBSD tun tcpdump文件。 似乎正在发生的事情是,OpenBSD的tcpdump产生DLT为0x0C,然后在每个数据包的前面粘贴一个四个字节的标头。 我们撤消这个:) pst2text 浏览...
本书内容翔实、涉及领域广泛,并且提供了详细的例子和大量的参考资料(包括书籍、电子文档和Internet站点),是一本学习、使用和管理Linux不可多得的好书。 目 录 译者序 前言 第一部分 Red Hat Linux的介绍与安装 ...
服务器通过tcpdump工具把采集到的数据保存为cap文件;通过python等语言对流量数据文件进行解析,选取关键信息如用户标识(MAC)、目的地址、URL等,进行数据格式转换,完成敏感数据脱敏,将脱敏后的数据写入数据库;...
1计算机拓扑结构mp4,网盘文件,永久链接 002计算机硬件介绍mp4 003服务器介绍mp4 004计算机网络设备mp4 005任务说明mp4 006网络设备连接介质mp4 007IP和MAC简介mp4 ...048 tcpdump工具抓包【了解】mp4
这是一个很小的Java程序,可帮助您在没有root特权(pcap,tcpdump,wireshark)的计算机上对HTTP,SOAP或RESTful Web服务进行故障排除。 它有两件事: 本地端口转发到远程主机和端口,例如本地端口8080到 ...转
在此次实践中,通过scapy的traceroute()方法实现探测机到目标服务器的路由轨迹,整个过程的原理见下图,首先通过探测机以SYN方式进行TCP服务扫描,同时启动tcpdump进行抓包,捕获扫描过程经过的所有路由点,再通过...
18.2.5 正常的tcpdump输出 18.3 连接建立的超时 18.3.1 第一次超时时间 18.3.2 服务类型字段 18.4 最大报文段长度 18.5 TCP的半关闭 18.6 TCP的状态变迁图 18.6.1 2MSL等待状态 18.6.2 平静时间的概念 18.6...
作者用Lawrence Berkeley实验室的tcpdump程序来捕获不同操作系统和TCP/IP实现之间传输的不同分组。对tcpdump输出的研究可以帮助理解不同协议如何工作。 本书适合作为计算机专业学生学习网络的教材和教师参考书。也...