Soup's Blog

Back

网络工具核心概念:DDNS、CDN、端口转发与代理协议

深入理解 DDNS、CDN、SSH 端口转发、SOCKS5、TLS、Trojan 与 VLESS 的原理与实践
}

🛠️ 从家庭服务器到代理协议:六个必懂的网络工具#


一、DDNS 与 CDN:让家庭服务器触达公网#

🎯 本章导读

从动态 IP 到全球加速

家里没有固定公网 IP?DDNS + CDN 的组合方案让你用家庭宽带也能跑稳定的对外服务。

🔄 DDNS:动态域名解析#

定义: Dynamic Domain Name System,动态域名解析。

DDNS 的解决方案:

一个后台小程序(如 ddns-go)每隔几分钟检测本机 IPv6 地址。如果变了,自动把域名(如 ipv6.xxx.com)的解析记录更新成新地址。

记住 IP → IP 变了 → 连不上 → 手动改 DNS
plaintext

🌍 CDN:内容分发网络#

定义: Content Delivery Network,内容分发网络。国内有阿里云 CDN、腾讯云 CDN,国外有 Cloudflare。在各地部署”边缘节点”服务器。

工作流程:

  1. 用户请求 → CDN 边缘节点

    用户访问你的网站,请求打到最近的 CDN 节点

  2. 缓存检查

    有缓存 → 直接返回。没缓存 → 下一步

  3. 回源

    CDN 根据你设置的”回源地址”去源站拉数据。你的回源地址填的是 DDNS 域名(ipv6.xxx.com),所以 CDN 通过 IPv6 请求源站

  4. 返回用户

    拿到内容后返回给用户(用户端走普通 IPv4 或 IPv6)

维度DDNSCDN
解决问题IP 会变加速 + 隐藏源站
工作位置应用层(DNS)应用层 + 表示层
方向对外暴露对外服务
核心能力自动更新 DNS 记录缓存 + 协议转换 + 全球加速

二、SSH 端口转发:你的电脑就是中转站#

🎯 本章导读

SSH 不止能远程登录

SSH 的端口转发能力让你能把本机端口”映射”到内网任意位置——这比远程登录强大得多。

🔌 本地端口转发(Local Port Forwarding)#

定义: 在本地开一个固定端口,所有发往这个端口的数据,都被 SSH 加密后,从跳板机”精准转发”到目标内网地址。

ssh -L 本地端口:目标内网IP:目标端口 user@跳板机
bash

本质: 四层”TCP 管道工”。不关心 HTTP 内容,只盲目转发 TCP 流。

🔀 动态端口转发(Dynamic Port Forwarding)#

定义: 把本地端口变成一个标准的 SOCKS5 代理服务器

ssh -D 2022 user@跳板机
bash

执行后,本地 2022 端口成为一个 SOCKS5 代理。浏览器配置使用这个代理后,所有流量都走跳板机出去。

类型命令本质场景
本地转发 -Lssh -L 8080:192.168.0.1:80 user@hostTCP 管道访问单个内网服务
动态转发 -Dssh -D 2022 user@hostSOCKS5 代理浏览器全局代理

三、SOCKS5:最纯粹的管道#

定义: Socket Secure 5,工作在会话层(OSI 第五层)的代理协议。

为什么 SOCKS5 能解决 400 错误?#

浏览器通过 SOCKS5 代理访问 192.168.0.1 时:

  • SOCKS5 只管原样打包传输,不修改 HTTP Host 头
  • Nginx 收到的 Host 头仍然是 192.168.0.1
  • virtual host 匹配正确 → 不再 400

四、TLS:互联网的安全基石#

🎯 本章导读

浏览器的那个小锁头背后是什么?

TLS 是你每次访问 HTTPS 网站都在使用、却可能从未真正理解过的协议。

🔐 TLS 是什么#

定义: Transport Layer Security,传输层安全协议。前身是 SSL(已淘汰)。位于 OSI 表示层(第六层),夹在 TCP 和 HTTP 之间。

  1. 加密

    HTTP 请求/响应内容全部变成乱码,防止中间人偷窥

  2. 身份验证

    通过数字证书,证明你正在访问的服务器真的是 www.BBB.com,而不是伪造的钓鱼网站

  3. 完整性校验

    保证数据在传输过程中没被篡改。一旦被改,接收方会立刻发现并断开连接

  4. 握手协商

    正式传数据前,客户端和服务器先协商好用什么加密算法、密钥等

浏览器地址栏的🔒图标,就是 TLS 在工作的标志。


五、Trojan 与 VLESS:当代理需要伪装#

🎯 本章导读

普通代理会被 DPI 识别,怎么办?

Trojan 和 VLESS 的设计核心:让代理流量看起来和正常 HTTPS 一摸一样。

🐴 Trojan:藏在合规外衣下的代理#

定义: 一种伪装型代理协议。名字取自特洛伊木马——外表无害,内部别有用途。

工作方式:

  1. 服务端监听 443 端口

    外部看起来就是一个标准的 HTTPS 网站

  2. 客户端连接,完成 TLS 握手

    先做一次正常的 TLS 握手(与普通 HTTPS 访问毫无区别)

  3. 密码验证

    密码正确 → 连接转为代理通道。密码错误 → 回退成普通网站,返回网页内容

与 CDN 的结合: Trojan 常配合 CDN(如 Cloudflare)使用,利用 CDN 的域名和 TLS 证书进一步掩盖后端真实服务器。这与”CDN 回源隐藏 IPv6 源站”思路如出一辙,只是方向相反(隐藏代理服务器而非 Web 源站)。

⚡ VLESS:更轻量的无状态传输#

定义: Very LESS,V2Ray/Xray 核心下的轻量代理协议,VMess 的后继者。

回落(Fallback)原理:

在同一个 443 端口部署 VLESS + Nginx:

来的流量 → 是 VLESS 协议?
  ├── 是 → VLESS 处理(代理通道)
  └── 不是 → 自动"回落"给 Nginx(正常 HTTPS 网站)
plaintext

有人扫你的 443 端口,看到的就是一个完全正常的 Nginx 网站。伪装天衣无缝。

📊 Trojan vs VLESS#

维度TrojanVLESS
判断方式密码验证协议头判断
加密依赖 TLS依赖 TLS(自身无加密)
状态有状态无状态
灵活性相对固定更灵活,支持更多传输组合
伪装机制密码错 → 回退网站协议不匹配 → Nginx 回落
典型配合CDN(Cloudflare)XTLS 流控

六、总结:工具与 OSI 层级#

📚 知识回顾

每个工具工作在 OSI 哪一层?

理解了工具在哪一层工作,就理解了它的能力边界。

概念一句话OSI 层
DDNS自动更新 DNS,域名追着 IP 跑L7 应用层
CDN缓存 + 加速 + IPv4/IPv6 协议转换L7 + L6
SSH 本地转发 -L四层 TCP 管道工L4 传输层
SSH 动态转发 -D启动本地 SOCKS5 代理L5 会话层
SOCKS5协议无关的纯粹管道L5 会话层
TLS加密 + 身份验证 + 防篡改L6 表示层
TrojanHTTPS 伪装代理(密码判断)L6(借 TLS)
VLESS无状态轻量代理 + Nginx 回落L6(借 TLS)