使用tcpdump命令进行抓包+详细示例

这篇具有很好参考价值的文章主要介绍了使用tcpdump命令进行抓包+详细示例。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

使用tcpdump命令进行抓包

tcpdump命令是什么

  1. tcpdump可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。
  2. 可以将tcpdump理解为一个具有抓取数据包功能的命令。

怎么用

tcpdump命令跟其他的Linux命令的使用类似,需要与参数一起使用才能体现其强大的功能。

  1. tcpdump :默认启动,直接启动tcpdump将监视第一个网络接口上所有流过的数据包。
  2. tcpdump -i eth1-i可以指定网络接口,any表示监视所有的网口。
  3. tcpdump host 210.27.48.1 : 抓取指定IP的数据包
    1. tcpdump src host 210.27.48.1
    2. tcpdump dst host 210.27.48.1
  4. tcpdump tcp port 23 and host 210.27.48.1 : 抓取指定端口和指定IP的数据包
    1. tcpdump udp port 123
  5. tcpdump -i any tcp port 9080 -A -s 0
  6. tcpdump -i any tcp port 9100 -w data.cap 抓取指定端口数据包到文件

tcpdump命令参数介绍

  1. -A: 以ASCII码方式显示每一个数据包(不会显示数据包中链路层头部信息). 在抓取包含网页数据的数据包时, 可方便查看数据
  2. -c count: tcpdump将在接受到count个数据包后退出
  3. -d: 以容易阅读的形式,在标准输出上打印出编排过的包匹配码, 随后tcpdump停止
  4. -dd: 以C语言的形式打印出包匹配码
  5. -ddd: 以十进制数的形式打印出包匹配码
  6. -e: 每行的打印输出中将包括数据包的数据链路层头部信息
  7. -i interface: 指定tcpdump 需要监听的接口
  8. -s snaplen: 设置tcpdump的数据包抓取长度为snaplen, 如果不设置默认将会是68字节(而支持网络接口分接头的SunOS系列操作系统中默认的也是最小值是96).68字节对于IP, ICMP, TCP 以及 UDP 协议的报文已足够, 但对于名称服务, NFS服务相关的数据包会产生包截短. 如果产生包截短这种情况, tcpdump的相应打印输出行中会出现’‘[|proto]’'的标志(proto 实际会显示为被截短的数据包的相关协议层次). 需要注意的是, 采用长的抓取长度(nt: snaplen比较大), 会增加包的处理时间, 并且会减少tcpdump 可缓存的数据包的数量, 从而会导致数据包的丢失. 所以, 在能抓取我们想要的包的前提下, 抓取长度越小越好.把snaplen 设置为0 意味着让tcpdump自动选择合适的长度来抓取数据包
  9. -v: 当分析和打印的时候, 产生详细的输出. 比如, 包的生存时间, 标识, 总长度以及IP包的一些选项. 这也会打开一些附加的包完整性检测, 比如对IP或ICMP包头部的校验和
  10. -vv: 产生比-v更详细的输出. 比如, NFS回应包中的附加域将会被打印, SMB数据包也会被完全解码
  11. -vvv: 产生比-vv更详细的输出. 比如, telent 时所使用的SB, SE 选项将会被打印, 如果telnet同时使用的是图形界面,其相应的图形选项将会以16进制的方式打印出来
  12. -w fileName: 把包数据直接写入文件而不进行分析和打印输出

为什么

抓包在排查问题是一个非常重要的终极利器!

参考示例

抓包命令:

# 抓所有的网口的tcp 端口是8080的包
 tcpdump -i any tcp port 8080 -A -s 0
# 抓所有的网口 端口是514 的包
tcpdump -i any port 514 -nnnvvvv
#  抓包保存到本地文件 syslog.pcap,可放到wireshark分析
tcpdump -i any port 514 -s0 -w./syslog.pcap -nnnvvvv   
# 抓取ping包【ping包即ICMP的包】
tcpdump -i any icmp and  host 192.168.1.1 -nn -vvv
# 抓取ip是 192.168.1.1的包
tcpdump -i any host  192.168.1.1 -nn -vvv
# 抓取ip是 192.168.1.1 或者端口是2500的包
tcpdump -i any host 192.168.1.1 or udp port 2500 -nn -vvv
# 抓所有的网口udp 端口是4500 的包
 tcpdump -i any udp port 4500 -nn -vvv

any 抓所有的网口 包括localhost口
-A 字符
-s 0 不受限制
tcpdump -i any -w data.cap 抓所有包,并通过wireshark分析文章来源地址https://www.toymoban.com/news/detail-477209.html

到了这里,关于使用tcpdump命令进行抓包+详细示例的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • tcpdump抓包命令

    tcpdump 是Linux下一种网络抓包命令 tcpdump 提供了大量的选型以及各种过滤表达式,使你能更好的抓到指定的数据包 Linux抓包实际情况通常用tcpdump抓取包,然后把数据包放到wireshark 工具分析数据包 下面介绍几种常用的选项和过滤表达式 tcpdump使用-选项类 ==完整例子== tcpdump选项

    2024年02月13日
    浏览(28)
  • tcpdump抓包规则命令大全

    下面的例子全是以抓取eth0接口为例,如果不加-i eth0是表示抓取所有的接口包括lo。   tcpdump -nnnv arp                 # 查找ARP攻击时确定攻击原MAC地址时常用。 tcpdump -nnnv udp port 53    # DNS服务器53端口受ARP攻击时查看攻击源时用。 tcpdump -nnnv udp and not port 53      # 可以确定

    2024年02月05日
    浏览(33)
  • 网络抓包命令tcpdump

    \\\"tcpdump -i any -nn -vv tcp port 9095 -s 0 -w dump.cap\\\"命令是一个网络抓包命令,用于捕获流经指定网络接口的TCP协议、端口号为9095的网络数据包,并将这些数据包写入到名为\\\"dump.cap\\\"的文件中。 具体参数解释: “-i any”: 指定抓包的网络接口为任意接口。 “-nn”: 不将网络地址和端口号

    2024年01月17日
    浏览(23)
  • 抓包之linux下tcpdump命令

    tcpdump 是Linux系统下的一个强大的命令,可以将网络中传送的数据包完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。 命令行参数介绍: -A 以ASCII格式打印出所有分组,并将链路层的头最小化

    2024年04月23日
    浏览(32)
  • 实践tcpdump命令,成为网络数据抓包高手

    大家好,又见面了,我是沐风晓月,本文是专栏【linux基本功-基础命令实战】的第57篇文章。 专栏地址:[linux基本功-基础命令专栏] , 此专栏是沐风晓月对Linux常用命令的汇总,希望能够加深自己的印象,以及帮助到其他的小伙伴😉😉。 如果文章有什么需要改进的地方还请

    2024年02月03日
    浏览(25)
  • tcpdump 抓包工具详细图文教程(上)

    目录 一、tcpdump 抓包工具的基本介绍和学习基础 1.1 常用的抓包工具 1.2 tcpdump 抓包工具介绍 二、tcpdump 抓包工具使用环境和初体验  2.1 编译安装 tcpdump 2.2 抓包 三、讲解 TCP 协议报文报头 四、tcpdump 抓包工具常规过滤规则  4.1 tcpdump 的 host 和 net 过滤规则 4.2 tcpdump 基于端口的

    2024年02月07日
    浏览(34)
  • 路由器抓包工具TCPDUMP使用方式

    tcpdump,用简单的语言概括就是dump the traffic on a network,是一个运行在linux平台可以根据使用者需求对网络上传输的数据包进行捕获的抓包工具,windows平台有sniffer等工具,tcpdump可以将网络中传输的数据包的\\\"包头\\\"全部捕获并进行分析,其支持网络层、特定的传输协议、数据发送

    2024年02月08日
    浏览(35)
  • LINUX 抓包工具Tcpdump下载安装(非常详细),从零基础入门到精通,看完这一篇就够了

    下载安装包 ======================================================================================== 官网地址:https://www.tcpdump.org/ 百度网盘地址: 链接:https://pan.baidu.com/s/12EPV0alwzz3_wGuT1Swv2g 提取码:pyck 由于tcpdump依赖libpcap因此两个安装包都需要下载 2.2.1 缺少gcc 环境 错误一:configure: error: no

    2024年01月22日
    浏览(45)
  • Tcpdump 抓包工具使用以及Wireshark解析pcap包

    Tcpdump 抓包工具使用以及Wireshark解析pacp包 参考链接(比较详细):https://blog.csdn.net/weixin_42866036/article/details/128004750 命令解析: -nn: 解析DNS 为IP        -e:         -i: 指定网关 -s: 包大小 -A:         cp[((tcp[12:1] 0xf0) 2):4] = 0x47455420: 由于我们都是http请求,这里使用监控http请

    2024年02月08日
    浏览(34)
  • Tcpdump使用示例

    这里收集了一些实用的 tcpdump 使用示例,使用它们可提升您的网络故障排除和安全测试能力。 熟练掌握下面的 tcpdump 使用示例,可以帮助我们更好的了解自己的网络。 了解 tcpdump 是一项基本技能,不仅对于系统管理员、网络工程师或安全专业人员, 对于自己部署玩的一些服

    2024年02月05日
    浏览(26)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包