tcpdump工具的使用方法与常见选项

Linux作为网络服务器,特别是作为路由器和网关时,数据的采集和分析是不可少的。
TcpDump是Linux中强大的网络数据采集分析工具之一。
TcpDump可以将网络中传送的数据包完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。

常用选项
常用选项具体含义
-a将网络地址和广播地址转变成名字
-d将匹配信息包的代码以人们能够理解的汇编格式给出
-dd将匹配信息包的代码以c语言程序段的格式给出
-ddd将匹配信息包的代码以十进制的形式给出
-e在输出行打印出数据链路层的头部信息
-f将外部的Internet地址以数字的形式打印出来
-l使标准输出变为缓冲行形式
-n不把网络地址转换成名字
-t在输出的每一行不打印时间戳
-v输出一个稍微详细的信息,例如在ip包中可以包括ttl和服务类型的信息
-vv输出详细的报文信息
-c在收到指定的包的数目后,tcpdump就会停止
-F从指定的文件中读取表达式,忽略其它的表达式
-i指定监听的网络接口
-r从指定的文件中读取包(这些包一般通过-w选项产生)
-w直接将包写入文件中,并不分析和打印出来
-T将监听到的包直接解释为指定的类型的报文,常见的类型有rpc (远程过程调用)和snmp(简单网络管理协议)

常用的实例

1、默认启动-tcpdump

普通情况下,直接启动tcpdump将监视第一个网络接口上所有流过的数据包:
这里写图片描述

2、监视指定网络接口的数据包(-i)

举例:tcpdump抓取所有通过eth0的包
命令:tcpdump -i eth0
这里写图片描述
注意:如果不指定网卡,默认tcpdump只会监视第一个网络接口,一般是eth0。

3、抓取指定数目的包(-c)

举例:只针对eth0网口抓5个包。
命令:tcpdump -c 5 -i eth0
这里写图片描述

4、将抓到的包写入文件中(-w)

举例:将抓包记录到一个指定的文件中
命令:tcpdump -w tcpdump.pcap -i eth0
这里写图片描述

5、读取tcpdump保存文件(-r)

对于保存的抓包文件,可以使用-r选项进行读取。
举例:tcpdump -r tcpdump.pcap
这里写图片描述

6、抓包时不进行域名解析(-n)

默认情况下,tcpdump抓包结果中将进行域名解析,显示的是域名地址,而不是IP地址,而使用-n选项,可以指定显示IP地址。
这里写图片描述

7、增加抓包时间戳(-tttt)

使用-tttt选项,抓包结果将包含抓包日期。
举例:tcpdump -n -tttt -i eth0
这里写图片描述
不显示时间戳(-t)
这里写图片描述

8、指定抓包协议类型

tcpdump支持指定协议类型有:ip,ip6,arp,tcp,udp,wlan等。
tcp ip icmp arp rarp 和 tcp、udp、icmp这些选项等都要放到第一个参数的位置,用来过滤数据报的类型
举例:抓取arp协议的包。
命令:tcpdump arp -i eth0
这里写图片描述

9、监视指定主机的数据包

例如:截获所有210.27.48.1 的主机收到的和发出的所有的数据包
命令:tcpdump host 210.27.48.1
这里写图片描述

10、监视指定主机和端口的数据包

举例:如果想要获取主机210.27.48.1接收或发出的telnet包,使用如下命令
tcpdump tcp port 23 and host 210.27.48.1
这里写图片描述

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: tcpdump是一个常用的命令行网络抓包工具,可以捕获和分析网络数据包。以下是tcpdump的基本使用方法: 1. 捕获网络数据包: ``` tcpdump [-i interface] [-n] [-v] [-X] [expression] ``` 其中,-i参数指定要监听的网络接口,-n参数禁止将IP地址和端口号解析为主机名和服务名,-v参数输出详细信息,-X参数输出十六进制和ASCII码格式的数据包内容,expression参数是过滤条件。 2. 保存捕获的数据包到文件: ``` tcpdump -i interface -w file [expression] ``` 其中,-w参数指定要保存的文件名。 3. 读取保存的数据包文件: ``` tcpdump -r file [expression] ``` 其中,-r参数指定要读取的文件名。 4. 显示tcpdump版本信息: ``` tcpdump -v ``` 以上是tcpdump的基本使用方法,更多高级功能可以通过查看tcpdump的帮助文档来学习。 ### 回答2: tcpdump是一个命令行工具,可以在UNIX和类UNIX系统上使用,用于捕获和分析网络数据包。它被广泛用于网络故障排除、网络性能分析和网络安全评估等领域。下面是tcpdump使用方法: 1. 安装和启动:首先,确保你的系统上已经安装了tcpdump,如果没有,则可以通过软件包管理器进行安装。一般情况下,使用root用户或具有足够权限的用户来运行tcpdump。在终端中输入"tcpdump"即可启动。 2. 捕获数据包:tcpdump可以监听指定的网络接口,捕获从该接口进出的所有数据包。例如,可以使用以下命令捕获eth0接口上的数据包:tcpdump -i eth0。也可以使用其他选项,如-c来指定捕获的数据包数量,如-w来将数据包保存到文件中等。 3. 过滤数据包:tcpdump可以通过应用过滤器来选择特定的数据包进行分析。例如,可以使用以下命令只捕获源IP地址为192.168.1.1的数据包:tcpdump src host 192.168.1.1。还可以使用其他过滤器选项,如dst、port、protocol等。 4. 分析数据包:tcpdump将捕获到的每个数据包以文本形式显示出来。它显示了包括源IP地址、目的IP地址、协议类型、端口号等信息。通过观察这些信息,可以分析网络流量、识别潜在的故障和安全问题。 5. 结束捕获:可以使用Ctrl+C来终止数据包的捕获。在终端中运行tcpdump命令后,它将持续监听指定的网络接口,直到你手动结束。 总的来说,tcpdump是一个功能强大的网络抓包工具,可以帮助你分析和监控网络流量。通过学习和掌握其使用方法,可以更好地理解网络通信和网络安全方面的知识。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值