tcpdump抓包命令_tcpdump指定ip抓包命令

tcpdump抓包命令_tcpdump指定ip抓包命令tcpdump是一个功能强大的命令行数据包分析器,它是通过监听服务器的网卡来获取数据包,所有通过网络访问的数据包都能获取到。它也提供了过滤器的功能,可以获取指定的网络、端口或协议的数据包程序员日常排查问题,最常用的是使用过滤器功能获取指定端口的数据包,用来分析服务器是否收到请求、请求数据是否完整。参数介绍tcpdump命令的参数很多,详见如下这里只介绍一些常用的参数​-ccount//count表示数量。抓取数据包的数量达到count后结束命令,如果不使用…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

tcpdump是一个功能强大的命令行数据包分析器,它是通过监听服务器的网卡来获取数据包,所有通过网络访问的数据包都能获取到。它也提供了过滤器的功能,可以获取指定的网络、端口或协议的数据包

 

程序员日常排查问题,最常用的是使用过滤器功能获取指定端口的数据包,用来分析服务器是否收到请求、请求数据是否完整。

 

参数介绍

tcpdump命令的参数很多,详见如下

tcpdump抓包命令_tcpdump指定ip抓包命令

 

这里只介绍一些常用的参数

-c count

// count表示数量。抓取数据包的数量达到count后结束命令,如果不使用-c 参数,会不停的抓取数据包,直到手动停止

-C file_size

// 抓取数据包保存到文件时,通过该命令指定文件的大小。文件达到指定大小后,会创建一个在原文件名称后面加上序号的新文件,如:dump.txt,dump.txt1。file_size的单位是b

-D

// 列出服务器所有网卡。tcpdump默认监听的是编号最小的那个网卡,一般是eth0。在进行抓包时可以通过 -i 参数指定监听的网卡,any表示监听所有网卡

-i interfaces

// 指定监听的网卡名称,any表示监听所有的网卡

-n

// 输出结果中,不把ip转换成主机名(默认显示的是主机名)

-q

// 快速输出,只输出简要的数据包信息

-r file

// 从文件中获取数据包,不再从网络获取数据包

-t

// 不输出时间戳

-w file

// 将抓取的数据包保存到文件,-r 参数可以从文件中读取数据包

-W filecount

// 指定文件的数量,当文件滚动到指定数量后会从第一个文件开始覆盖

 

除了以上参数,还有一些关键字可以用来进行条件过滤,常用关键字如下

-host

// 过滤主机,如 tcpdump host 192.168.1.110  只抓取经过这个ip的数据包

-src

// 用来过滤请求来源方的参数,如:tcpdump src host 192.168.1.110  只抓取从这个ip过来的数据包

-dst

// 用来过滤请求接收方的参数,如:tcpdump dst host 192.168.1.110  只抓取发送到这个ip的数据包

-port

// 过滤端口,如:tcpdump port 8080  只抓取经过8080端口的数据包

-net

// 过滤网络,如:tcpdump net 192.168  只抓取经过这个网段的数据包

-and、not、or

// 条件过滤,和字面意思一样。如:tcpdump net 192.168 and port 8080  抓取经过192.168网段并经过8080端口的数据包

 

数据包分析

抓取的数据包格式如下

tcpdump抓包命令_tcpdump指定ip抓包命令

字段释义如下

20:17:43.496528

// 时间戳,时:分:秒.微秒

IP

// 网际网络协议的名称

180.101.49.12.http > iZbp14w0b2rs7i1400bjjmZ.42468180.101.49.12.http

// 请求发送方的ip和端口 > 请求接收方的ip和端口。端口有时会显示为某个网络协议,如http、ssh、mysql等

Flags [R]

// flag标识和状态,可选的状态有: [S.] [.] [P.] [F.][R]

seq、ack、fin

// 表示tcp协议的3次握手和4次挥手的过程。seq表示请求的序列号,ack是回答的序列号,fin表示完成。这里显示的序列号是相对值,-S参数可以显示绝对值

win

// 表示当前窗口的可用大小

length

// 表示报文体的长度,从长度可以简单分析是否正确接收了请求

通过以上结果只能做简单的分析,可以使用-w参数把数据包写入文件,文件中记录的数据包比命令行要详细的多。借助分析工具可以对文件进一步分析,这里推荐使用Wireshark,这个工具是开源的,开箱即用使用简单,这里不做详细介绍了

 

常用的命令组合

抓取8080端口的数据包

tcpdump -i any port 8080 

抓取从192.168.1.110发送到192.168.1.111的数据包

tcpdump -i any src host 192.168.1.110 and dst host 192.168.1.111

抓取192.168网段除了192.168.1.110的请求的数据包

tcpdump -i any src net 192.168 and 'src host not 192.168.1.110'

抓取8080端口的数据包并写入dump.log文件中

tcpdump -i any port 8080 -w dump.log

 

注意事项

1.tcpdump需要用管理员权限运行,可以用sudo命令或者root用户

2.抓取的数据包通过length字段只能做一些简单的判断,想要详细分析,需要借助数据包分析工具,如:Wireshark

 


 

tcpdump抓包命令_tcpdump指定ip抓包命令

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/171457.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • The server does not support version 3.0 of the J2EE Web module specification

    The server does not support version 3.0 of the J2EE Web module specification

  • java中使用uuid函数_java生成随机数

    java中使用uuid函数_java生成随机数什么是UUID?UUID是UniversallyUniqueIdentifier的缩写,它是在一定的范围内(从特定的名字空间到全球)唯一的机器生成的标识符。UUID具有以下涵义:经由一定的算法机器生成为了保证UUID的唯一性,规范定义了包括网卡MAC地址、时间戳、名字空间(Namespace)、随机或伪随机数、时序等元素,以及从这些元素生成UUID的算法。UUID的复杂特性在保证了其唯一性的同…

  • 批处理 %~0_批处理输入

    批处理 %~0_批处理输入%~dp0“d”为Drive的缩写,即为驱动器,磁盘、“p”为Path缩写,即为路径,目录cd是转到这个目录,不过我觉得cd/d%~dp0还好些%~dp0“d”为Drive的缩写,即为驱动器,磁盘、“p”为Path缩写,即为路径,目录cd是转到这个目录,不过我觉得cd/d%~dp0还好些选项语法:~0-删除任何引号(“),扩充%

  • [CV] Structure from motion(SFM)- 附我的实现结果

    [CV] Structure from motion(SFM)- 附我的实现结果【更新】我的新博客:www.ryuzhihao.cc,当然这个csdn博客也会更新本文在新博客中的链接:点击打开链接完成时间:2017年2月27日博客时间:2017年4月26日去年,我有幸了解到image-basedmodeling的相关知识。作为一个大三本科生,虽说自己此前也做过一些相关工作,但是要自己实现Structuref…

  • 全文六万字《计算智能》智能优化算法 张军【Python】

    全文六万字《计算智能》智能优化算法 张军【Python】就这?《计算智能》张军超详细讲解前言正文第1章绪论1.1最优化问题1.1.1函数优化问题1.1.2组合优化问题1.2.1计算复杂性1.2.2NP理论1.3计算智能方法1.3.1计算智能的分类与理论1.3.2计算智能的研究与发展1.3.3计算智能的特征与应用前言由于最近新参与了一个与智能优化相关的科研课题,所以需要了解一些计算智能的算法知识。经老师推荐,从网上购买了张军老师的这本《计算智能》,尽管出版年份距今已有一些年日,但因该领域多年来并未有太多新的大改变,且该书对新手相对友好,故

  • Server.MapPath 的用法说明

    Server.MapPath 的用法说明用法:1.Server.MapPath(“/”)应用程序根目录所在的位置如C:\Inetpub\wwwroot\2.Server.MapPath(“./”)表示所在页面的当前目录3.Server.MapPath(“../”)表示上一级目录4.Server.MapPath(“~/”)表示当前应用级程序的目录,如果是根目录,就是根目录,如果是虚拟目录,就

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号