实战:使用 eCapture 捕获 gRPC 明文并在 Wireshark 中解密
在微服务架构中,gRPC(基于 HTTP/2 + Protobuf)通常运行在 TLS 加密之上,且其负载(Payload)为二进制格式。这给抓包调试带来了巨大的挑战:传统的 tcpdump 只能看到加密后的乱码数据。 本文介绍一种非侵入式的“魔法”方案:使用 eBPF 工具 eCapture,直接在内核层面 Hook TLS 函数,导出带有解密密钥的 pcapng 文件,或者直接导出明文...
在微服务架构中,gRPC(基于 HTTP/2 + Protobuf)通常运行在 TLS 加密之上,且其负载(Payload)为二进制格式。这给抓包调试带来了巨大的挑战:传统的 tcpdump 只能看到加密后的乱码数据。 本文介绍一种非侵入式的“魔法”方案:使用 eBPF 工具 eCapture,直接在内核层面 Hook TLS 函数,导出带有解密密钥的 pcapng 文件,或者直接导出明文...
DPDK 虚拟网卡 (Virtual Devices) 深度指南 1. 概述 DPDK 的虚拟网卡(Virtual Device / vdev)机制允许开发者在没有物理硬件的情况下,或者为了特定的系统集成需求,使用软件定义的网络接口。这极大地扩展了 DPDK 的应用边界,从纯物理网卡的高性能转发延伸到了容器网络、进程间通信(IPC)以及开发调试领域。 2. 核心原理 普通的 DPDK...
DPDK rte_mbuf_dynfield_register 深度指南 1. rte_mbuf 简介 在深入理解 rte_mbuf_dynfield_register 之前,我们需要明确 rte_mbuf 在 DPDK 中的核心地位。rte_mbuf 是 DPDK (Data Plane Development Kit) 应用程序中用于表示和操作数据包(Packet)或内存块(Buff...
DPDK KNI (Kernel NIC Interface) 深度指南 1. KNI 是什么? KNI (Kernel NIC Interface) 是 DPDK 提供的一种特殊的接口机制,旨在解决 DPDK 应用程序独占物理网卡后,Linux 内核无法再访问该网卡的问题。简而言之,KNI 允许在 DPDK 用户态应用和 Linux 内核网络栈之间建立一个双向数据通道和控制通道。 2...
DPDK Callbacks (回调函数) 深度指南 1. 为什么需要 DPDK Callbacks? 在 DPDK 应用程序中,我们通常会在主循环中使用 rte_eth_rx_burst() 接收数据包,然后在一个 for 循环中逐个处理这些包。那么,既然我们可以在这个循环里做任何处理,为什么 DPDK 还要专门提供 Rx/Tx Callback 机制呢? 答案在于 解耦 (Deco...
Consul 分布式架构下的 gRPC 重定向实现机制 在 Consul 的分布式集群中,gRPC 不仅用于服务间的 Connect 通信,还承担了大量的内部状态同步工作。本文详细分析 Consul 如何在多 DataCenter (DC) 和 Agent-Server 架构中实现高效的 gRPC 请求重定向。 1. 为什么需要重定向? Consul 采用“边缘计算”模式,客户端(...
eBPF 动态指令重写技术:原理与实践 本文详细解析了 pwru 核心黑科技——内核级 PCAP 过滤器注入所采用的指令重写技术。 1. 为什么需要指令重写? 在 eBPF 程序中,传统的交互方式是使用 BPF Maps。用户态更新 Map,内核态读取 Map 并根据配置执行不同的 if/else 分支。 传统 Map 方式的局限性: 性能损耗:每次包处理都需要发起 bpf...
GVM 使用详解 1. GVM 简介 GVM (Go Version Manager) 是 Go 语言的版本管理工具,类似于 Ruby 的 rvm、Node.js 的 nvm。它允许在同一台机器上安装和切换多个 Go 版本,方便开发者在不同项目间使用不同版本的 Go。 核心特性 安装/卸载 Go 版本 管理 GOPATHs (使用 pkgset) 列出可用/已安装的 G...
Go 稳定性模式:Recovery 拦截器与 SafeGo 详解 在 Go 语言的工程实践中,稳定性(Stability)是构建生产级应用的首要考量。与 Java 或 C++ 等语言不同,Go 的并发模型虽然轻量且强大,但也有一个致命的“弱点”:单个 Goroutine 的未捕获 Panic 会导致整个进程(Runtime)崩溃。 本文将深入探讨两种保障 Go 服务稳定性的核心模式:Re...
密码机 (HSM) 工作原理与交互流程详解 在金融、政府和企业级安全应用中,密码机 (HSM, Hardware Security Module) 是保障核心数据安全的关键设备。本文将详细解析密码机的工作原理,并深入探讨客户端、服务端与密码机之间的交互流程,特别是基于 SDF 和 PKCS#11 标准的应用场景。 1. 什么是密码机 (HSM)? 密码机是一种专用的物理计算设备,旨在保...