Releases: zhaoxuya520/MeshLAN
Release list
MeshLAN v1.14.10 — 首个公开版本
MeshLAN v1.14.10 — 首个公开版本
这是 MeshLAN 第一次面向外部公开发布。虽然版本号沿用了内部开发阶段的 1.14.10,
但从开源项目的角度看,它就是第一个正式放出来供大家下载、部署和参与开发的版本。
MeshLAN 是一套以 P2P 直连为主、Relay 中继为兜底的自托管虚拟局域网工具。它可以把
不同城市、不同宽带和不同 NAT 后面的 Windows 电脑放进同一个加密局域网,让异地设备
像连接在同一个路由器下面一样互相访问。
项目地址:https://github.com/zhaoxuya520/MeshLAN
适合做什么
- 让不在同一局域网的电脑互相访问;
- 与朋友或团队共享只监听
localhost的 API、Web 面板和开发服务; - 访问异地数据库、远程桌面、文件服务或游戏服务器;
- 在不直接暴露公网端口的情况下发布 TCP/UDP 服务;
- 自建控制服务器、Lighthouse 和 Relay,不依赖第三方组网账号体系。
核心功能
虚拟局域网与 P2P
设备加入后会获得稳定的 Mesh IP。双方网络允许时优先建立加密 P2P 直连;NAT 打洞失败
时才使用 Relay。支持 IPv4、IPv6、智能双栈、STUN 诊断、UPnP、多 Lighthouse、
多 Relay、链路健康评分和网络切换后的自动重连。
MeshLAN 不接管系统默认网关。普通上网流量仍按 Windows、代理和 TUN 的原有规则运行。
服务映射
可以把本机服务:
localhost:4571
发布到虚拟局域网,供其他成员访问。支持 TCP、UDP、自定义端口、自动分配端口、同时发布
多个服务、健康检查、暂停和恢复、连接用户查看、流量统计以及单用户访问控制。
每个成员都能发布自己的服务,但只能修改和删除自己创建的映射。
MeshDNS
设备和服务可以使用容易记忆的 .mesh 名称,例如:
alice.mesh
chat.alice.mesh
db.alice.mesh:5432
设备前缀和服务前缀都可以修改。创建、删除、暂停或重命名服务后,MeshDNS 目录会根据
当前真实状态更新,不需要在每台电脑上手工维护 hosts 文件。
HTTP/HTTPS 网关模式支持通过服务域名直接访问 Web 服务,无需额外填写端口。
权限与审批
服务可以设置为直接访问,也可以要求创建者手动批准。需要审批时,请求会出现在消息列表,
服务所有者可以同意或拒绝,还可以暂停某个已获授权用户,而不影响其他成员。
实时拓扑与历史
客户端提供实时网络拓扑,展示在线设备、P2P/Relay 路径、Underlay 端点、延迟、真实字节
增量、端口映射服务和连接数量。没有真实流量时不会播放虚假的传输动画。
链路、流量、在线状态和路径切换记录保存在本机 SQLite 中,可以查看历史曲线和拓扑回放。
按用户统计 Token
服务创建者可以在“服务映射”页面查看每位用户的输入、输出、总量、缓存和推理 Token。
统计读取模型响应中报告的真实 usage,不会读取或保存对话正文。过去只记录了流量字节,
无法准确反推 Token,因此从启用统计功能后开始累计,不伪造历史数据。
HTTP/HTTPS 域名入口且上游返回 usage 时可以精确统计;透明 TCP/UDP 转发无法识别模型
响应,会明确显示为“未统计”。
文件直传
文件内容通过设备间的 Nebula 加密隧道直接传输,控制服务器只同步分享元数据,不保存
文件本体。可以设置有效期、接收设备、最大接收次数,并使用 SHA-256 校验完整性。
AI 助手
可选的 AI 助手可以分析当前网络、排查连接问题、创建服务映射或生成受控操作计划。
模型密钥保存在主服务器,客户端上下文通过端到端加密发送。涉及修改时必须先展示计划,
得到用户确认后才能执行。
多语言
客户端支持:
- 简体中文
- 繁體中文
- English
- 日本語
导航、按钮、弹窗、拓扑、历史、动态状态和 AI 后续回复都会跟随当前语言。
项目组成
| 组件 | 平台 | 用途 |
|---|---|---|
| Windows Client | Windows 10/11 | 原生桌面客户端、组网、服务映射、MeshDNS、文件与 AI |
| Main Server | Linux amd64/arm64 | 设备授权、证书、管理台、更新、主 Lighthouse/Relay |
| Child Node | Linux amd64/arm64 | 额外 Lighthouse/Relay、健康上报和故障切换 |
Windows 客户端是便携 EXE,不包含安装器。关闭桌面窗口不会停止底层 Nebula 网络服务。
应该下载哪个文件
| 文件 | 适用场景 |
|---|---|
MeshLAN-Nebula-Windows.exe |
Windows 便携客户端 |
meshlan-nebula-server-linux-amd64 |
x86-64 Linux 主服务器 |
meshlan-nebula-server-linux-arm64 |
ARM64 Linux 主服务器 |
meshlan-nebula-node-linux-amd64 |
x86-64 Linux 子节点 |
meshlan-nebula-node-linux-arm64 |
ARM64 Linux 子节点 |
install-mesh-node.sh |
Linux 子节点安装脚本 |
SHA256SUMS.txt |
所有发布文件的 SHA-256 校验值 |
release.json |
机器可读的发布元数据 |
Windows 客户端使用方式
首次运行需要输入:
- 本机设备名称;
- 主服务器公网 IP 或域名;
- 管理员生成的一次性
MLN1...授权哈希。
配对完成后,设备身份会保存在本机,后续不需要重复输入授权哈希。
如果只是普通单网卡环境,网络设置保持默认即可。多网卡流量分流位于“设置 → 高级设置”,
仅适合同时使用 Wi-Fi、网线、随身 Wi-Fi、代理或 TUN 的特殊环境。
数据路径与隐私
- 设备私钥在客户端本机生成,不上传控制服务器;
- 正常业务优先在设备之间 P2P 传输;
- Relay 只转发 Nebula 加密数据包;
- 文件内容不上传控制平面;
- 本地历史不记录业务报文正文;
- AI 上下文使用 X25519 与 AES-256-GCM 保护;
- 更新包使用 Ed25519、SHA-256 和健康检查验证。
当前需要注意
这是首个公开版本,网络环境覆盖还在持续完善中。不同运营商、NAT、IPv6、代理和 TUN
组合非常多,欢迎通过 GitHub Issues 提交真实环境中的兼容性问题。
Windows EXE 目前没有商业 Authenticode 代码签名,因此系统可能显示“未知发布者”。请从
本 Release 下载,并使用 SHA256SUMS.txt 核对文件完整性。不要从第三方网盘或不明链接
获取重新打包的客户端。
参与项目
MeshLAN 使用 MIT License 开源。欢迎提交 Issue、文档、兼容性测试和 Pull Request。
如果项目对你有用,也欢迎点一个 Star。