功能介绍

OmNet 是一个轻量且快速的代理工具,采用 Rust 实现,专为支持多种代理协议和丰富功能而设计。OmNet 既可作为客户端代理,也可作为服务端节点,提供了一个高性能、灵活的代理框架,支持多个协议同时运行,支持复杂的代理链配置和负载均衡策略。

🚀 OmNet 核心优势

1

完全独立实现

从零开始的完整代理框架,不依赖任何已有的核心库:

  • 完全自主设计和实现每个协议

  • 极致优化的性能和内存占用

  • 采用 Rust 实现,确保内存安全和线程安全

  • 高效的异步 I/O 架构,支持数十万级并发连接

2

双重角色支持

OmNet 支持两种部署模式:

🖥️ 服务端模式

  • 作为代理节点运行

  • 支持多用户配置和管理

  • 完整的入站协议支持(Inbound)

  • 支持多种协议混合部署

  • 内置 WebAPI 接口便于面板集成

  • 支持统计和用户管理功能

💻 客户端模式

  • 本地代理使用

  • 支持 SOCKS5 和 HTTP 代理

  • 灵活的规则路由

  • 自动故障转移

  • 实时延迟检测和健康检查

3

多面板对接支持

OmNet 提供了标准化的 WebAPI 接口,支持与多个面板系统对接:

支持的面板:

  • ✅ Ppanel 面板

  • ✅ v2board 面板

  • ✅ Xboard 面板

  • ✅ 自定义面板

接口特性:

  • 标准 RESTful API 设计

  • 用户管理接口

  • 流量统计接口

  • 节点信息接口

  • 支持自定义开发扩展

4

极致性能优化

内存优化:

  • 最小化内存占用

  • 高效的连接管理

  • 智能缓存机制

  • 支持多层级编译优化

CPU 优化:

  • 高效的加密算法实现

  • 优化的网络 I/O

  • 异步处理所有连接

  • 支持 SIMD 加速

网络优化:

  • 连接复用(AMUX)

  • 自动故障转移(Failover)

  • 健康检查和延迟排序

  • 智能缓存加速

5

灵活定制能力

OmNet 提供了强大的定制能力,支持多种场景:

特性开关系统

  • 模块化设计,支持灵活的特性组合

  • 编译时可选择需要的协议和功能

  • 支持从极简到完整的多种配置

配置灵活性

  • 支持 JSON 格式配置

  • 支持 INI 格式配置(兼容性)

  • 支持复杂的规则路由

  • 支持嵌套的代理链配置

协议组合

  • 支持多层协议叠加

  • 支持自定义协议组合

  • 支持 Chain 协议进行灵活组合

  • 支持高级的 AMUX 多路复用

6

自研协议支持

OmNet 支持开发和部署自研协议:

协议定制框架:

  • 完整的协议接口定义

  • 模块化的协议实现机制

  • 支持热更新和动态加载

  • 完善的文档和示例

典型应用:

  • 针对特定需求的定制协议

  • 增强隐蔽性的协议变体

  • 性能优化的协议实现

  • 行业特殊需求的协议


📋 支持的协议

Inbound 协议(入站 - 接收连接)

OmNet 作为服务端时,支持以下入站协议:

协议
说明
特性

SOCKS5

标准 SOCKS 代理

TCP、UDP Associate、IPv6 支持

HTTP

HTTP CONNECT 代理

标准 HTTP 代理协议

Shadowsocks

轻量加密协议

UDP FullCone、多用户

ShadowsocksR

增强混淆协议

复杂混淆、协议扩展

Trojan

隐蔽代理协议

密码认证、高隐蔽性

VMess

V2Ray 代理协议

多传输方式支持

VLESS

极简代理协议

无加密设计、低开销

WebSocket

Web 友好传输

穿透防火墙、HTTP 基础设施

TLS

加密传输层

TLS 1.2/1.3 支持

Mieru

轻量协议

TCP/UDP、简单认证

Naive

HTTP 隐蔽协议

HTTP/2 CONNECT 隧道

AnyTLS

灵活 TLS 处理

自定义 TLS 配置

Chain

协议组合

灵活的协议叠加

AMUX

多路复用

连接复用、高效率

TUN

系统级代理

macOS/Linux/Windows 支持

CAT

管道通信

特殊场景支持

Outbound 协议(出站 - 转发连接)

OmNet 作为客户端时,支持以下出站协议:

类型
协议
说明

基础

Direct

直连,绕过代理

Drop

拦截流量

Redirect

重定向

代理

Shadowsocks

连接到 SS 服务器

ShadowsocksR

连接到 SSR 服务器

Trojan

连接到 Trojan 服务器

SOCKS

连接到 SOCKS 服务器

VMess

连接到 VMess 服务器

VLESS

连接到 VLESS 服务器

Mieru

连接到 Mieru 服务器

Naive

连接到 Naive 服务器

AnyTLS

自定义 TLS 代理

传输

TLS

TLS 加密

WebSocket

WebSocket 传输

Obfs

流量混淆

AMUX

多路复用

组合

Chain

协议链组合

策略

Failover

故障转移

TryAll

并发尝试

Random

随机选择

Static

静态选择

Retry

重试机制


🔐 加密与安全

支持的加密算法

OmNet 支持 30+ 种加密方法,包括:

现代 AEAD 加密

  • AES-GCM: AES-128-GCM、AES-192-GCM、AES-256-GCM

  • ChaCha20-Poly1305: ChaCha20-IETF-Poly1305、ChaCha20-Poly1305

  • 2022-Blake3: 2022-Blake3-AES-128-GCM、2022-Blake3-AES-256-GCM

传统加密(ShadowsocksR)

  • 分组密码: AES-CFB、AES-CTR、AES-OFB

  • 流密码: RC4、RC4-MD5、Salsa20、ChaCha20

密钥导出

  • HKDF (HMAC-based KDF)

  • PBKDF2

  • 自定义 KDF

多种加密库支持

特性
适用场景

Ring

纯 Rust,高性能

标准部署

AWS-LC-RS

FIPS 兼容

金融、政府

Pure Rust

完全纯 Rust

嵌入式、交叉编译

OpenSSL

系统库

MIPS 等特殊平台

Blake3

现代哈希

2022 标准协议

混淆支持

混淆类型
说明

HTTP

伪装成 HTTP 流量

TLS

伪装成 TLS 流量

TLS Ticket

TLS 票证混淆

Auth Chain

认证链混淆


🌐 传输层支持

OmNet 支持多种传输层协议,提供灵活的组合:

传输
说明
特性

TCP

基础传输

可靠连接,所有协议基础

UDP

快速传输

低延迟,支持 FullCone NAT

TLS

加密传输

TLS 1.2/1.3,前向保密

WebSocket

Web 传输

RFC 6455,穿透防火墙

HTTP/2

多路复用

h2c 和 h2+TLS 支持

AMUX

流多路复用

高效连接复用

典型协议组合

  • TLS + WebSocket + VMess - 穿透防火墙的隐蔽传输

  • TLS + HTTP/2 + VLESS - 高效率代理链

  • AMUX + TLS + WebSocket - 极致连接复用


⚙️ 特性与预设

特性组合预设

OmNet 提供多种预设的特性组合,满足不同场景:

预设
适用场景
特点

default-ring

标准部署

完整功能 + Ring 加密库

default-aws-lc

AWS 环境

FIPS 兼容 + AWS-LC-RS

minimal

移动端

最小体积,基础功能

basic

基础使用

常用协议 + 基本功能

advanced

高级用户

大部分协议 + 高级功能

server

服务端

完整功能 + 面板支持

mobile

移动应用

优化体积 + 流量统计

模块化设计

  • 按需编译,选择需要的协议

  • 减小二进制体积

  • 降低内存占用

  • 灵活满足不同平台需求


🛠️ 多面板对接方案

标准 WebAPI 接口

OmNet 提供了完整的 WebAPI 接口,支持与各类面板系统集成:

核心接口:

  • 用户管理 API

  • 流量统计 API

  • 节点信息 API

  • 配置管理 API

  • 健康检查 API

面板兼容:

  • ✅ Ppanel 面板

    ✅ v2board 面板

    ✅ Xboard 面板

    ✅ 自定义面板

定制开发支持

  • 完整的 API 文档

  • 标准的数据格式

  • 灵活的扩展接口

  • 开发者友好的文档


🔧 定制与扩展

灵活的定制能力

协议定制

  • 支持开发自研协议

  • 支持协议性能优化

  • 支持特殊需求的协议实现

  • 完整的协议框架和示例

规则定制

  • 灵活的规则匹配系统

  • 支持自定义规则类型

  • 支持外部规则库集成

  • 支持基于业务的规则引擎

性能优化

  • 编译时优化选项

  • 运行时性能调优

  • 连接管理优化

  • 内存和 CPU 优化

代码基础

OmNet 采用模块化架构:

  • 清晰的代码结构

  • 完善的文档注释

  • 易于扩展的接口设计

  • 活跃的社区支持


📊 性能表现

吞吐量基准

协议
加密方法
吞吐量

Direct

-

~2.5 Gbps

VLESS

-

~2.0 Gbps

Trojan

-

~1.9 Gbps

Shadowsocks

ChaCha20-Poly1305

~1.8 Gbps

Shadowsocks

AES-256-GCM

~1.6 Gbps

VMess

ChaCha20-Poly1305

~1.5 Gbps

内存占用

  • 最小配置: ~5 MB

  • 标准配置: ~20-50 MB

  • 完整配置: ~100-200 MB

连接支持

  • 单机支持 10 万+ 并发连接

  • 低延迟(毫秒级)

  • 自动故障转移

  • 智能负载均衡


🌍 多平台支持

OmNet 支持在多个平台上部署:

平台
支持
说明

Linux

x86_64、ARM、MIPS 等

macOS

Intel、Apple Silicon

Windows

x86_64 原生支持

iOS

通过 FFI 集成

Android

通过 JNI 集成

Docker

完全容器化支持

嵌入式

轻量级部署


💡 应用场景

个人用户

  • 本地代理工具

  • 多服务器切换

  • 自动故障转移

  • 灵活的规则路由

企业部署

  • 多协议节点服务

  • 面板系统集成

  • 流量统计和监控

  • 用户管理系统

移动应用

  • 轻量级代理库

  • 低内存占用

  • 高性能加密

  • 精简的功能集

开发者

  • 协议研究和实现

  • 性能优化实验

  • 自研协议开发

  • 定制化部署


🎯 与 soga 的对标

OmNet 优势

特性
OmNet
soga

协议支持

16+ Inbound, 22+ Outbound

限定协议

客户端支持

✅ 完整客户端

❌ 主要服务端

传输层

7 种传输方式

基础支持

定制能力

✅ 强大的定制框架

有限

自研协议

✅ 支持自研协议

有限

多面板

✅ 标准 WebAPI

面板对接

性能

✅ 极致优化

良好

平台支持

✅ 5+ 平台

限定平台

内存占用

✅ 最小 5 MB

标准

社区活跃

✅ 活跃维护

中等


🔒 安全性

安全特性

  • 采用 Rust 实现,内存安全

  • 无缓冲区溢出风险

  • 完整的加密支持

  • 现代密码学算法

  • 定期安全审计

隐蔽性

  • 支持多种混淆方式

  • 伪装成普通流量

  • 链式代理配置

  • 自适应协议选择


📈 持续优化

OmNet 持续进行以下优化:

  • 性能优化: 持续提升吞吐量和延迟

  • 功能完善: 补充遗漏的协议和特性

  • 安全强化: 定期安全更新和补丁

  • 文档改进: 完善开发文档和示例

  • 社区反馈: 积极响应用户需求


OmNet - 高性能、灵活、功能完整的代理解决方案

最后更新: 2024 年 10 月

最后更新于