如何在路由器中抓包分析

news2024/9/20 7:52:59

      方法是在openwrt中一般都集成了tcpdump抓包工具,可以通过命令抓包保存为pcap文件,导出来后可以通过wireshark分析。

   相信大部分研发人员都在windows下抓过包,最常用的软件就是wireshark,通过wireshark可以很方便的分析数据报文。抓包对于排查软件开发和网络问题很有帮助,所以每个技术人员都应该学会如何抓包。

     通过wireshark抓包非常简单,直接打开软件选择网卡即可实时显示抓取的数据报文。但是对于手机客户端,抓包就没那么方便了,即使某些手机可以安装抓包app, 但也比较难用。

由于手机的wifi数据会经过路由器,我们可以通过路由器抓取手机发送的报文。

首先我们需要准备一台openwrt路由器,这里我采用红米AC2100,升级了官方22.03正式版本固件。

这里需要说明下,不是所有家用路由器都可以安装抓包工具,因为有些路由器厂商锁住了ssh后台,如果你有抓包需求的话相信弄一台openwrt路由器也比较容易。

支持刷openwrt系统的路由器(点击查看)

openwrt固件下载地址:

https://downloads.openwrt.org/releases/22.03.2/targets/ramips/mt7621/

openwrt界面如下图:

安装openwrt系统后我们还需要安装抓包软件,tcpdump是linux下面最好用的抓包工具,在openwrt系统中可以直接安装(openwrt也是linux系统)。

首先我们更新下openwrt软件源

更新后就可以看到各种软件包了

搜索tcpdump,可以看到搜索结果,选择tcpdump安装

tcpdump需要依赖libpcap库,安装tcpdump会自动安装libpcap库,libpcap会通过af_packet协议捕获linux tcp/ip协议栈的数据报文,通过环形缓冲区将数据映射到应用层,达到抓包的效果,后续可以给大家讲讲该驱动原理。

安装成功后就可以使用tcpdump软件了,注意tcpdump是没有图形界面的,是一个抓包命令,使用linux系统必须适应命令行操作。

打开ssh工具,登录到openwrt系统后台

输入tcpdump --help可以查看命令的基本使用参数

 

常用的参数列表

-c:表示要抓取的包数量,比如-c 1000表示抓取1000个包

-i:表示指定对哪个网卡接口进行抓包,比如-i eth0,表示对eth0这个网卡进行抓包
-n:不对具体ip地址进行域名解析,直接显示ip地址
-nn:不对具体ip进行域名解析,并且端口号也不显示服务的名称,直接显示数字
-D:列出可用于抓包的接口。将会列出接口的数值编号和接口名,它们都可以用于"-i"后。
-w:将抓包数据输出到文件中而不是打印到屏幕上,非常有用,可以导出后通过wireshark分析。
-XX:输出数据包的头部数据。

-vvv:打印和分析的时候,产生非常详细的输出。

常用的命令

1. 查看所有网卡列表

tcpdump -D

2.  指定网络接口抓包,如抓取br-lan桥接口(lan口)

tcpdump -i br-lan

3. 指定ip抓包,比如抓取某台手机ip的包(192.168.1.160)

tcpdump -i br-lan host 192.168.1.160 

4. 显示数据包的详细信息,并指定抓包个数

tcpdump  -i br-lan host 192.168.1.160 -vvv -XX -c 10

通过以上几个命令大家可能觉得数据太复杂,一点都不直观,但我们还可以通过-w参数输出到文件,文件格式兼容wireshark,

tcpdump  -i br-lan host 192.168.1.160 -w /tmp/test.pcap

以上命令抓取ip地址为 192.168.1.160的所有报文并写入到test.pcap文件

生成文件后再通过winscp工具将文件导出到windows系统

然后通过wireshark打开test.pcap文件,这样就可以很方便地分析数据包了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2075711.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

理解运营商和全球网络

目录 理解运营商和全球网络 如何上网 光纤入户 购买设备 配置网络 互联网的发展 引入 国家推动 理解运营商和全球网络 如何上网 光纤入户 也就是俗称的拉网线 将光纤宽带服务直接连接到你家中 光纤是由运营商提供 通过玻璃丝传递光电信号,传进来变成模拟信号,再由调制…

【计算机网络】socket网络编程 --- 实现一些简易UDP网络程序

👦个人主页:Weraphael ✍🏻作者简介:目前正在学习c和算法 ✈️专栏:Linux 🐋 希望大家多多支持,咱一起进步!😁 如果文章有啥瑕疵,希望大佬指点一二 如果文章对…

笔记整理—uboot启动过程(6)env_init与init_sequence总结

上一章说到uboot的BL2部分板级初始化,这一章将继续对uboot的环境变量初始化内容进行说明。 env_init,顾名思义这是与环境变量相关的初始化。env_init有许多个,因为uboot支持不同的启动介质(不同的芯片或开发板)。其中i…

Android - 音频参数合入

音频参数宏观来看分为两部分,audio和music。不管是哪个平台都需要分别合入这两部分。 A10 music参数 相关工程师调试后会提供 audio_para 文件,将该文件替换至对应工程下的文件编译即可 例: device/sprd/sharkle/sl8541e_1h10_32b/rootdir/system/et…

练习题 — for循环:数一数有几个字母a? 加油呀

昨天的知识点今天复习了一遍,感觉效果还不错奥! 案例题:数一数有几个字母a? count 0 name "itheima is a brand of itcast" for x in name:if x "a":count 1 print(count)#4 完结 🎉 继续更…

不会用AI?那是你不懂提示词工程!一文读懂提示词,三个原则轻松使用AI

现在市场充斥着大量的AI工具,但是大概80%的人都是把他当作一个搜索引擎,最近小编接到很多后台私信,总结了一下: 1、AI根本没用; 2、AI给出的东西,就是模版; 3、AI给不了想要的内容 这里就有…

PCB中焊盘的注意事项

这种不要在焊盘边上打过孔,不然焊盘损坏修都没法修: 把连接焊盘的飞线拉远点,再打过孔:

Qml中实现多视图,多图像源(QImage / QPixmap)

转自: Qml中实现多视图,多图像源(QImage / QPixmap)_engine.addimageprovider-CSDN博客 【写在前面】 在 Qml 中,实现多视图很容易,无非是多个 Image 而已。 但是,如果需要动态刷新,则变得困难。 再或者&a…

Icepak与RHSC-ET耦合计算Die温度场

目录 1 背景介绍 2 工作流程 2.1 概述 2.2 几何处理 2.3 电热耦合计算温度场 2.4 输出HTC 2.5 RHSC-ET读入HTC 3 求解及总结 以下内容截取自该篇资料 几何处理 • 通过stp文件导入系统散热结构 • 修复几何模型,液冷抽出流体 • 模型简化 电热耦合计算…

Android高级UI --- canvas

前言 我们先来聊聊,在我们生活中如何绘制一张如下的图。 我们需要两样东西来绘制: 一张纸(Android 中的 canvas):用来承载我们绘制的内容。一支笔(Android 中的 paint):负责绘制内…

SpringBoot3核心特性-Web开发

目录 传送门前言一、WebMvcAutoConfiguration原理1、生效条件2、效果3、WebMvcConfigurer接口4、静态资源规则源码5、EnableWebMvcConfiguration 源码6、为什么容器中放一个WebMvcConfigurer就能配置底层行为7、WebMvcConfigurationSupport 二、Web场景1、自动配置2、默认效果 …

自动化构建工具Gulp

第三方模块-Gulp 解释 基于node平台开发的前端构建工具 将机械化操作编写成任务,由一条命令来触发执行,提高开发效率 主要能做什么 项目上线:html、css、js文件的压缩合并语法转换:es6、less等语言的转化公共文件抽离修改文件…

替代液压比例放大器首选

比例阀放大器的选用应考虑诸多因素,如系统需求、放大器的兼容性、调节性、附加功能、安全特性、供应商支持和环境适应性等。 系统性能要求明确 压力与流量: 根据液压系统所需的压力和流量来确定放大器的性能指标,以确保比例阀能得到充分的功率支持。 …

2024/8/26 英语每日一段

Apple and Google have had nearly unchecked power over mobile apps in ways that raise prices for some of what you buy, block you from trying clever ideas, push app makers to do scuzzy things to make money, and impose Apple’s and Google’s wishes on all us.…

如何用Java SpringBoot+Vue开发高效OA办公管理系统

✍✍计算机毕业编程指导师 ⭐⭐个人介绍:自己非常喜欢研究技术问题!专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目:有源码或者技术上的问题欢迎在评论区一起讨论交流! ⚡⚡ Java、…

三品船舶PLM解决方案详情 三品PLM软件在船舶制造行业应用优势

自2024年起,船舶行业PLM(产品全生命周期管理)技术步入关键发展阶段。国产化工业软件领域积极倡导生态合作,推广统一技术底座下的合作开发模式,整合国内外成熟的工业软件技术与应用资源,旨在全面提升国内船舶…

【Bigtop】利用Bigtop3.2.0编译大数据组件RPM包

利用Bigtop3.2.0编译大数据组件RPM包 前言正文Mvn本地目录的修改FlinkKafkagrgit版本手动准备gradle的文件 前言 原文参考:Bigtop 从0开始 参考了上述的博文自己尝试了编译组件,过程还是遇到很多问题,一一记录,方便后人。 Bigt…

【方案】智慧排水系统解决方案(doc原件)

一、项目建设目标 二、项目主要内容 三、项目建设方案 1.GIS管理子系统 (1) 数据管理和访问 (2) 地图操作功能 (3) 地图查询定位功能 (4) 其他功能 2.工程管理子系统 (1&…

免费分享!算法备案流程以及所需资料

免费分享!算法备案流程以及所需资料 在国内,随着《生成式人工智能服务管理暂行办法》的出台,这一规定明确指出,任何面向中国公众提供具备舆论影响力或社会动员潜力的生成式AI服务,都必须经过严格的算法备案程序。 这就…

有关于算法备案的五大误区

有关于算法备案的五大误区 在这个数据为王的时代,算法已然成为推动社会前进的隐形巨轮。从搜索框中的每一次点击,到购物车里的每一件商品推荐,再到朋友圈里刷屏的动态,算法的身影无处不在,悄无声息地编织着我们的数字生…