jaxiu He
Home
博客
动态
关于
jaxiu He
Categories
技术 (54)
项目分析 (18)
架构设计 (10)
Ai工具 (8)
教程 (3)
Ai (2)
技术实践 (2)
技术教程 (2)
源码解析 (2)
运维 (2)
Ai应用 (1)
Blog (1)
Devops (1)
前端 (1)
安全 (1)
应用案例 (1)
开发指南 (1)
开源项目 (1)
总结 (1)
效率工具 (1)
智能客服 (1)
生活 (1)
系统设计 (1)
自动化 (1)
Featured Tags
nps (18)
go语言 (16)
ai (14)
deepchat (13)
qwen code (9)
架构设计 (8)
todoing (7)
内网穿透 (6)
开源项目 (6)
electron (5)
docker (4)
开发工具 (4)
教程 (4)
服务端 (4)
git (3)
mongodb (3)
node.js (3)
vue (3)
多平台 (3)
客户端 (3)
Recommend Series
博客优化 (2)
Devtools (1)
Qwen Code实践 (1)
开源项目 (1)
Blogs
62 posts
««
«
16
17
18
19
20
»
»»
NPS 客户端核心解析:连接管理与流量转发
Jul 18, 2025
6 minutes read
引言 在 NPS 系列文章的前几篇中,我们详细剖析了 NPS 服务端的各个模块和代理实现。本篇文章将转向 NPS 的 客户端(Client) 模块,深入分析 nps/client/client.go 文件。这个文件是 NPS 客户端的“大脑”,负责与服务端建立连接、管理隧道、处理不同类型的流量以及维护客户端的生命周期。理解客户端的运作机制,是掌握 NPS 完整内网穿透流程的关键。 client.go:客户端的“大脑” client.go 文件定义了 TRPClient 结构体,它是 NPS 客户端的核心。它负责客户端的启动、与服务端的通信、隧道管理以及流量转发。 TRPClient 结构体 TRPClient 结构体包含了客户端运行所需的所有关键信息: ......
技术
项目分析
NPS
客户端
Go语言
内网穿透
网络通信
NPS 代理实现:HTTP/HTTPS 域名解析与高级功能
Jul 18, 2025
4 minutes read
引言 在 NPS 系列文章中,我们已经深入探讨了 NPS 的多种代理模式。本篇文章将聚焦于 NPS 的 HTTP/HTTPS 域名解析功能,这是 NPS 实现 Web 服务穿透的核心。我们将通过分析 nps/server/proxy/http.go 文件,揭示 NPS 如何处理 HTTP 和 HTTPS 请求,并实现缓存、认证、动态后端切换等高级功能。 HTTP/HTTPS 域名解析的需求 在实际应用中,我们经常需要将内网的 Web 服务通过域名暴露到公网。这涉及到: 域名到内网 IP 的映射:根据请求的域名,将流量转发到内网中对应的 Web 服务器。 HTTP/HTTPS 协议处理:NPS 需要能够处理标准的 HTTP 请求,以及加密的 HTTPS 请求。 高级功能:为了提升性能、安全性和灵活性,通常还需要支持缓存、认证、负载均衡、自动 HTTPS 等功能。 http.go:HTTP/HTTPS 域名解析的实现 http.go 文件定义了 httpServer 结构体,它是 NPS 实现 HTTP/HTTPS 域名解析的核心。 ......
技术
项目分析
NPS
HTTP
HTTPS
域名解析
反向代理
Go语言
缓存
认证
NPS 代理实现:HTTPS 代理与 SNI 证书管理
Jul 18, 2025
5 minutes read
引言 在 NPS 系列文章中,我们已经探讨了 NPS 的整体架构、服务端核心以及多种代理模式。本篇文章将深入 NPS 的 HTTPS 代理实现。我们将通过分析 nps/server/proxy/https.go 文件,揭示 NPS 如何处理加密的 HTTPS 流量,特别是其对 SNI(Server Name Indication)的支持和多证书管理机制。 HTTPS 代理的需求与挑战 HTTPS 代理比普通的 HTTP 代理更为复杂,因为它涉及到 SSL/TLS 加密。主要挑战包括: SSL/TLS 握手:代理服务器需要参与 SSL/TLS 握手过程,解密客户端请求,然后加密转发给目标服务器,或者直接将加密流量转发给目标服务器。 SNI 支持:为了在同一个 IP 地址上托管多个 HTTPS 网站,客户端在 SSL/TLS 握手时会通过 SNI 扩展告知服务器其要访问的域名。代理服务器需要根据 SNI 信息选择正确的证书。 证书管理:代理服务器需要能够管理和加载多个域名的 SSL/TLS 证书。 https.go:HTTPS 代理的实现 https.go 文件定义了 HttpsServer 结构体,它是 NPS 实现 HTTPS 代理的核心。 ......
技术
项目分析
NPS
HTTPS代理
SNI
SSL/TLS
Go语言
网络安全