现代化内网穿透解决方案 - 精简架构,高性能,无限扩展
Tikrok 是一个企业级高性能内网穿透平台,采用 入口分离 + 数据平面无限扩展 的云原生架构设计。
| 特性 | 说明 |
|---|---|
| 🚀 无限扩展 | tikrokd-proxy 数据平面可水平无限扩展,支持 Kubernetes HPA 自动扩缩容 |
| 🏗️ 精简架构 | 仅四个核心组件,部署简单,运维成本低 |
| 📡 多协议支持 | HTTP/HTTPS/TCP/UDP 全协议支持,满足各种场景需求 |
| 🔀 SMUX 多路复用 | 单连接多隧道,减少资源消耗,提升连接效率 |
| ⚡ KCP 传输 | 基于 UDP 的高可靠传输层,降低延迟 30-50% |
| 🔐 企业级安全 | 多层次 Token 认证、会话密钥加密、访问控制、审计日志 |
| 特性 | 描述 |
|---|---|
| 👥 多租户架构 | 用户注册、登录、订阅计划、资源隔离,支持 SaaS 模式运营 |
| 🎫 Token 分层管理 | 集成令牌(ti_)、用户令牌(tu_)、API Key 三层认证,精细权限控制 |
| 📊 流量统计计费 | 实时流量监控、用量统计、配额管理,支持按量计费模式 |
| 🔄 高可用容灾 | 无状态设计、自动故障转移、节点健康检查、优雅关闭机制 |
| 📈 监控可观测 | Prometheus 指标、节点状态监控、隧道生命周期追踪 |
| 🛡️ 连接安全保障 | SMUX keepalive 检测、连接超时清理、幂等资源管理 |
创始人说:设计 Tikrok 时,我反复思考一个问题——端口暴露风险是内网穿透的宿命吗?
费斯汀格法则告诉我:生活中 10%由事件组成,90%由你的反应决定。
端口暴露风险客观存在,这是那 10%。但**如何应对,决定了安全的 90%**:
- ❌ 消极应对:开放多端口 → 每个端口都是攻击入口 → 被动挨打
- ✅ 主动应对:单端口穿透架构 → 集中管控、最小暴露 → 掌控安全命运
我选择主动应对。单端口架构不仅锁死了攻击面,还意外收获了百万级连接承载能力——因为无状态设计让每个端口都能无限扩展。这就是"正确应对"的蝴蝶效应。
传统内网穿透方案需要在防火墙开放大量端口,带来严重安全隐患。Tikrok 采用单端口穿透架构:
| 对比项 | 传统方案 | Tikrok 方案 |
|---|---|---|
| 防火墙端口 | 每个隧道一个公网端口 (22, 8080, 3306...) | 仅开放 2 个端口 (8000/9000) |
| 端口暴露风险 | 高风险 - 多端口多攻击面 | 低风险 - 单入口集中管控 |
| 防火墙规则 | 复杂 - 需频繁更新规则 | 简单 - 固定规则,永不变更 |
| 端口扫描暴露 | 易被发现 - 多端口探测 | 隐藏性好 - 最小端口暴露 |
| 流量审计 | 分散难以审计 | 集中入口,统一审计 |
架构优势:
传统方案 (危险):
防火墙开放: 22, 8080, 3306, 5353, 6379... ← 多端口暴露
│ │ │ │ │
▼ ▼ ▼ ▼ ▼
SSH Web MySQL DNS Redis ← 每个服务直接暴露
Tikrok 方案 (安全):
防火墙开放: 仅 8000, 9000 ← 最小端口暴露
│ │
▼ ▼
OpenResty tikrokd-proxy ← 统一入口,集中管控
│ │
└─────────┤
▼
用户服务池 (SSH/Web/MySQL...) ← 服务隐藏在内网
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.