我的博客

项目挑战:用 C 语言从零实现 eBPF 网络追踪器 (C-pwru)

项目挑战:用 C 语言从零实现 eBPF 网络追踪器 (C-pwru) pwru 是一个神奇的工具,它能告诉你在 Linux 内核里“包去哪了”。虽然原版是用 Go 编写的,但作为追求极致性能和底层掌控力的开发者,我决定发起一个挑战:用纯 C 语言和 libbpf 实现一个功能对标的 C-pwru。 本文是该项目的里程碑计划书(TODO List)。 1. 项目目标 实现一个命令行工...

lsof 网络排查实战:不仅是查看端口,更是系统透视眼

lsof 网络排查实战:不仅是查看端口,更是系统透视眼 在 Linux 的世界里,“Everything is a file”(一切皆文件)。这是理解 lsof (List Open Files) 强大之处的关键。 对于 socket、管道、设备、目录,内核都把它们当作文件来处理。因此,lsof 不仅仅是一个查看“谁占用了端口”的工具,它是一个能将网络连接、进程信息和文件系统关联起来的透...

IPSec 协议深度解析:原理、架构与实现细节

IPSec 协议深度解析:原理、架构与实现细节 IPSec(Internet Protocol Security)并不是单一的协议,而是 IETF 制定的一整套为 IP 网络提供安全性的协议族。它工作在 OSI 模型的网络层(Layer 3),这意味着它可以透明地保护上层的所有协议(如 TCP、UDP、ICMP),而无需应用程序进行任何修改。 本文将深入拆解 IPSec 的核心组件、工作...

使用 IPSec 应对网络嗅探与侦测危害

使用 IPSec 应对网络嗅探与侦测危害 在开放的局域网或不可信的公网链路上,网络嗅探(Sniffing)是攻击者收集敏感信息、探测网络拓扑的第一步。IPSec(Internet Protocol Security)作为一种工作在网络层(Layer 3)的安全协议栈,通过加密和认证机制,从底层瓦解了嗅探侦测的有效性。 本文详细分析 IPSec 抵御嗅探攻击的核心机制及其在实战中的防护价值...

穿透 VPN 的迷雾:为什么 eBPF 是监控真实进程流量的唯一选择

穿透 VPN 的迷雾:为什么 eBPF 是监控真实进程流量的唯一选择 在现代开发环境中,我们经常会使用 VPN、WireGuard 或系统级代理进行工作。但这给系统监控带来了一个巨大的麻烦:流量归属错误。 如果你使用传统的监控工具,你会发现带宽占用最高的永远是你的 VPN 软件,而真正产生流量的“元凶”却躲在幕后。 1. 传统工具的局限:被“遮蔽”的真相 传统的网络监控工具(如 ss...

Snowflake 算法详解

Snowflake (雪花算法) 详解 在分布式系统中,生成全局唯一且有序的 ID 是一个常见需求。Twitter 开源的 Snowflake(雪花算法) 是目前最流行的解决方案之一。 它可以在分布式系统中生成唯一的 ID,并且 ID 大致保持有序(按时间递增)。 核心思想 Snowflake 生成的 ID 是一个 64 位的整数(int64)。这 64 位被划分成不同的部分,每一部...