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
««
«
17
18
19
20
21
»
»»
NPS 代理实现:WebSocket 代理与 HTTP 反向代理
Jul 18, 2025
5 minutes read
引言 在 NPS 系列文章的前几篇中,我们已经探讨了 NPS 的整体架构、服务端核心以及多种代理模式(TCP 隧道、HTTP 代理、SOCKS5 代理、P2P 代理和 UDP 代理)。本篇文章将深入 NPS 的 WebSocket 代理和 HTTP 反向代理实现。我们将通过分析 nps/server/proxy/websocket.go 文件,揭示 NPS 如何处理这两种特殊的 HTTP 流量,实现更灵活的网络穿透。 WebSocket 与 HTTP 反向代理的需求 WebSocket:提供客户端和服务器之间的全双工通信通道,常用于实时应用,如聊天、在线游戏、股票行情等。传统的 HTTP 代理无法直接处理 WebSocket 协议的升级和持续连接。 HTTP 反向代理:将客户端的 HTTP 请求转发到后端服务器,并返回后端服务器的响应。它通常用于负载均衡、SSL 卸载、缓存和安全防护等。 websocket.go:WebSocket 与 HTTP 反向代理的实现 websocket.go 文件主要定义了 HttpReverseProxy 和 ReverseProxy 两个结构体,它们共同协作来处理 HTTP 反向代理和 WebSocket 连接。 ......
技术
项目分析
NPS
WebSocket
HTTP反向代理
Go语言
网络通信
NPS 代理实现:UDP 代理与数据转发
Jul 18, 2025
4 minutes read
引言 在 NPS 系列文章中,我们已经探讨了 NPS 的整体架构、服务端核心以及多种 TCP 相关的代理模式(TCP 隧道、HTTP 代理、SOCKS5 代理)和 P2P 代理。本篇文章将聚焦于 NPS 的 UDP 代理实现。我们将通过分析 nps/server/proxy/udp.go 文件,揭示 NPS 如何处理 UDP 流量,实现内网 UDP 服务的穿透。 UDP 代理的需求与挑战 UDP(User Datagram Protocol)是一种无连接的传输协议,常用于对实时性要求较高、允许少量丢包的应用,如 DNS 查询、在线游戏、音视频通话等。由于 UDP 的无连接特性,其代理实现与 TCP 代理有所不同,主要挑战在于: ......
技术
项目分析
NPS
UDP代理
Go语言
网络协议
内网穿透
NPS 代理实现:P2P 协议与 UDP 打洞
Jul 18, 2025
4 minutes read
引言 在 NPS 系列文章中,我们已经探讨了 NPS 的整体架构、服务端核心以及 TCP 隧道、HTTP 代理和 SOCKS5 代理的实现。本篇文章将深入 NPS 的另一个高级代理模式——P2P 代理。我们将通过分析 nps/server/proxy/p2p.go 文件,揭示 NPS 如何利用 UDP 打洞技术,实现客户端之间的直接连接,从而在某些场景下提供更高效、更低延迟的内网穿透服务。 P2P 代理的优势与挑战 传统的内网穿透通常依赖于服务器进行数据中转,这会引入额外的延迟和带宽消耗。P2P(Peer-to-Peer)代理的目标是让内网中的两个客户端能够直接建立连接,绕过服务器中转,从而实现更高效的数据传输。 ......
技术
项目分析
NPS
P2P
UDP打洞
Go语言
网络穿透