首页 > 其他分享 >在开发环境中使用 RawCap 和 Wireshark 排查本地回路地址

在开发环境中使用 RawCap 和 Wireshark 排查本地回路地址

时间:2024-07-02 12:30:54浏览次数:17  
标签:请求 RawCap 404 回路 pcap localhost Wireshark


如何使用 RawCap 和 Wireshark 排查本地网络请求中的404错误

开发微服务应用时,正确配置网络请求的转发至关重要。本文将通过一个具体示例来展示如何使用 RawCap 和 Wireshark 来监控和分析本地回路请求,并排查导致 HTTP 404 错误的可能原因。

背景

在本例中,用户的浏览器请求经过多个服务处理后最终返回了404错误。然而, Wireshark 无法抓取本地回路请求。

  1. 浏览器请求(或者postman)http://localhost:7777/api/user/login?username=admin&password=123456
  2. NGINX 处理:匹配以 api 开头的后端请求,并在转发前去掉 api 前缀,将请求转发至微服务监听端口8086: http://localhost:8086/user/login?username=admin&password=123456
  3. Spring Cloud Gateway 处理:接收来自 NGINX 的请求,并通过负载均衡策略将请求转发至后端服务。
  4. 后端服务:理应处理 http://localhost:8085/user/login?username=admin&password=123456,但返回了404错误。

使用 RawCap 捕获本地回路请求

  1. 下载和运行 RawCap

    • 访问 NETRESEC官网 下载 RawCap.exe。
    • 以管理员身份运行 RawCap,选择监听127.0.0.1接口,并指定输出文件名(例如 localhost_traffic.pcap)。
    RawCap.exe 127.0.0.1 localhost_traffic.pcap
    
  2. 生成请求

    • 发起引起404错误的请求。
  3. 停止 RawCap 捕获

    • 捕获足够的数据后,使用 Ctrl+C 停止 RawCap。

使用 Wireshark 分析 pcap 文件

  1. 打开 Wireshark 加载 pcap 文件

    • 启动 Wireshark, 打开 localhost_traffic.pcap 文件。
  2. 分析请求和响应

    • 应用 HTTP 过滤器 (http) 查看所有 HTTP 请求和响应。
    • 检查请求是否正确经过各阶段处理,尤其关注 URL 的变化和传递参数。
  3. 深入问题排查

    • 检查 URL 重写是否正确,确认 NGINX 是否正确去除了 api 前缀。
    • 确认网关是否正确处理并转发至后端服务,后端服务是否因为路径或参数错误返回404。

下图是RawCap 捕获的本地请求:

观察到请求已经成功地被 NGINX 处理,并且通过移除前缀 'api' 后正确地转发到了上游的网关服务器(端口:8086)。然而,我们发现了问题所在:请求并没有按照预期路由到后端服务的端口8085,而是从网关的端口8086错误地回环到了端口111354。这表明问题主要集中在网关的路由配置上。

结论

通过结合使用 RawCap 和 Wireshark,我们可以详细追踪请求在本地网络环境中的流转过程,从而定位问题所在。这种方法可以帮助开发人员和系统管理员更准确地诊断并修复网络配置相关的问题,特别是涉及多个服务或层的复杂请求链路。

希望本文能帮助你更好地理解如何利用网络监控工具来诊断和解决开发中的网络问题。如果你有任何疑问或需要进一步的帮助,请在评论中提出。

标签:请求,RawCap,404,回路,pcap,localhost,Wireshark
From: https://www.cnblogs.com/alohablogs/p/18279672

相关文章

  • 深入理解TCP协议格式(WireShark分析)
    传输控制协议(TCP)是互联网中最为关键的通信协议之一。了解TCP协议的细节不仅对于网络工程师至关重要,对于任何涉及网络通信的软件开发人员而言都是必备的知识。本文旨在深入探讨TCP协议,从协议的基本概述到其工作机制,以及如何通过实际代码实现和工具分析来理解其运作。TCP协......
  • 在虚拟机Linux系统中下载安装Wireshark
    #实习记录#我的ubantu版本在Ubuntu中下载和安装Wireshark可以通过以下步骤完成:1.更新包管理器:确保你的包管理器是最新的:sudoapt-getupdate 2.安装Wireshark:sudoapt-getinstallwireshark 3.配置Wireshark:在安装过程中,系统会询问是否允许非超级用户捕获数据包。......
  • wireshark使用
    wireshark是一个抓包工具,可以帮助我们看到计算机发送的数据,还可以帮助我们排查计算机网络问题1、下载地址https://www.wireshark.org/download.html点击下载2、配置电脑对应的网卡3、配置过滤IP规则1、想过滤源ip位xxx的数据包案例ip.src==192.168.20.1002、相过滤目......
  • 文科生脑回路也学得会|Python自学笔记0620
    python安装(windows版)Python官网:WelcometoPython.org(本地机查看)设置-系统-关于-设备规格-系统类型【举例说明】WIN10系统进入各种安装版本 PythonReleasesforWindows|Python.org版本选择界定标准:电脑是64位操作系统,优先选64(win10选这个没影响,windows7以前的用......
  • 6.15 七桥问题,欧拉回路
    欧拉回路就是,用一条线,走过所有的路,而且不重复,这种问题使用了并查集并查集分为两个部分:查找:1.初始化,将每个节点都初始化成一颗树find():根据给的边,找到他们的根节点,并更新union():把根节点不一样的连成一颗树,实现几棵树变成一棵树并查集的作用:在于判断所有的节点是不是属于同一个......
  • Wireshark:入门实验|抓取ping数据包
    系列目录Wireshark:入门实验目录系列目录Wireshark/Ethereal介绍安装实验步骤一、获取目标网站的IP地址二、筛选目的地址并捕获三、使用ping命令请求访问四、二次捕获知识点补充Wireshark/Ethereal介绍参考《计算机网络:自顶向下方法》Wireshark是一种运行在......
  • Wireshark网络分析从入门到实践【1.2】
            如果在这个期间你没有从事过其他的网络活动(例如在线看视频、下载等),那么现在最上方的也就是流量最大的对话就是在你的浏览器和www.wireshark.org之间建立的。        从图1-10中可以看出来,104.25.219.21与192.168.1.102之间对话产生的流量最多为21......
  • 利用Wireshark抓包分析DNS域名解析过程
    一、DNS协议概述  DNS协议也可以称为DNS服务,全称是DomainNameSystem,即域名系统,和HTTP协议一样,也是一个位于应用层的协议(服务),它是基于运输层的UDP协议的。从DNS的名字我们就可以知道,它提供域名映射到IP地址的服务。二、实验目的掌握DNS域名解析过程熟悉DNS报文格式三......
  • 云平台DNS故障导致网站访问卡顿异常排查过程,wireshark、strace等工具在实际问题排查过
    一、问题现象    项目上使用华为私有云,前段时间华为升级云平台后,云上用户反馈业务系统出现卡顿,之前几秒可以刷新出来的页面现在需要几十秒。提供了一个比较明显的url和curl调用方法。10.213.x.xxx:8082/files/logincurl-H"Content-Type:application/json"-H"T......
  • 文科生脑回路| AI大模型-Agent入门自学笔记
    大型语言模型(LargeLanguage Models,LLM)能通过分析海量文本数据,学习人类语言的内在规律和知识结构,从而展现出惊人的语言理解和生成能力。通过与大语言模型交互,不仅可以获取所需信息,还能生成高质量的文本内容、解决复杂的问题、开发智能应用程序等。以大型语言模型为核心......