Skip to content

Migrating from 3x ui.zh_CN

RomanovCaesar edited this page Oct 23, 2026 · 3 revisions

English | 简体中文

从 3x-ui 迁移

m-ui 可以一步导入整个 3x-ui 面板,也可以导入普通的 Xray 配置。打开仪表盘,在管理卡片里点导入。导入程序把 Xray 的入站、出站和路由规则转换成 Mihomo 的 listener、proxy 和规则,加进面板。导入功能从 v0.3.0 起提供。

上传什么

文件 从哪里拿 能保留的内容
x-ui.db(推荐) 3x-ui 系统状态 → 备份 → 备份,或者从服务器复制 /etc/x-ui/x-ui.db 入站;每个客户端的流量限额、到期时间(包括"首次使用后 N 天")、启用状态、备注和已用流量;订阅 ID;客户端的流量重置周期和到期自动续期(reset、resetDay、resetWeekday、resetMax);入站的限额、到期时间、重置周期和每月重置日;Xray 模板里的出站和路由规则
config.json 3x-ui 系统状态 → 配置 → 下载,或者复制 /usr/local/x-ui/bin/config.json 入站和客户端凭据、出站、路由规则

也可以直接在窗口里粘贴 JSON:完整的 Xray 配置、单个入站对象或入站数组都行。

config.json 是 3x-ui 交给 Xray 运行的配置,只带 Xray 需要的东西:被禁用和流量耗尽的客户端不在里面,限额、到期时间和流量也没有。能用 x-ui.db 就用 x-ui.db。

支持的版本:3x-ui v2.9.3 到 v3.10.2(撰写时的最新版)。两种数据库结构都能读:2.x 把客户端存在入站的 settings JSON 里,3.1 起改成独立的 clients 和 client_inbounds 表。3x-ui 3.x 用 PostgreSQL 存数据的安装没有 x-ui.db,请导入 config.json。

导入规则

导入只增加内容,面板里已有的东西不会被修改或删除。

  • 端口冲突: 导入的入站端口已经被面板里的入站(或面板自己)占用时,保留已有的入站,跳过导入的那个。
  • 名称冲突: 入站或出站重名时,导入的那个加上 -xray 后缀(再重名就是 -xray-2,以此类推)。
  • 路由规则: 导入的规则插在最后的 MATCH 之前;和已有规则完全相同的会跳过。
  • 订阅: 3x-ui 的订阅 ID 会成为客户端在 m-ui 里的用户名和订阅 token,原来的订阅链接 token 不变,只需要把面板地址和订阅路径换成 m-ui 的。

导入完成后,窗口会显示入站、客户端、出站和规则各导入、跳过了多少,并列出需要注意的地方。点下载转换日志可以看完整报告;窗口和日志都使用面板当前的语言。导入的设置在重启 Mihomo 后生效。

Xray 和 Mihomo 的对应关系

Xray / 3x-ui m-ui 里的 Mihomo
VLESS、VMess、Trojan 入站,传输为 TCP(raw)、WebSocket、gRPC;VLESS 还支持 XHTTP,VMess 还支持 mKCP;TLS 或 Reality 同类型的 listener
只有一个用户的 Shadowsocks 入站 shadowsocks listener
SOCKS、HTTP、Mixed 入站 带相同账号的 listener
Hysteria(v2)入站,包括 Salamander 混淆 hysteria2 listener
TUIC 入站(3x-ui 3.8+) tuic listener
freedom / blackhole 出站 DIRECT / REJECT
VLESS、VMess、Trojan、Shadowsocks、SOCKS、HTTP、Hysteria2、WireGuard 出站 proxy;proxySettings / dialerProxy 转成 dialer-proxy
负载均衡器 url-test(leastPing、leastLoad)或 load-balance 策略组
规则条件 domain、ip、port、sourcePort、localPort、network、source、inboundTag、user DOMAIN*、GEOSITE、IP-CIDR、GEOIP、DST-PORT、SRC-PORT、IN-PORT、NETWORK、SRC-IP-CIDR、IN-NAME、IN-USER
带多个条件的规则 一条 AND 规则

不能导入的内容

下面这些会被跳过或丢弃,转换日志里每一条都写明了原因:

  • 多用户的 Shadowsocks 入站,包括每个用户单独密钥的 Shadowsocks 2022。Mihomo 的 listener 一个端口只接受一个 Shadowsocks 用户。
  • 带 HTTP 头伪装的 TCP 入站、HTTPUpgrade 入站、WireGuard 入站、tunnel(dokodemo-door)和 TUN 入站。
  • 在 Xray 之外运行的 3x-ui 附加协议,如 MTProto、AmneziaWG、MASQUE;以及运行在远程 3x-ui 节点上的入站。
  • 回落(fallbacks)。回落的目标入站会在它自己的端口上单独导入。
  • 客户端 IP 限制(limitIp)。
  • Mihomo 无法匹配的路由条件,如 protocol(BitTorrent 嗅探)和 attrs。一条规则只有部分条件能转换时,丢掉的部分会记在日志里。
  • DNS 和 loopback 出站。

以文件路径给出的 TLS 证书会按路径导入。如果日志提示证书文件不存在,请在重启 Mihomo 之前把它复制到 m-ui 服务器的同一路径,或者编辑这个入站。

建议

  • 在新服务器上安装 m-ui,或者在同一台服务器上先停掉 3x-ui,让端口空出来。
  • 同一个文件导入一次就够了。再导入一次时,所有入站都会因为端口被占用而跳过,出站则会多出一批改了名的副本。
  • 导入后看一下 Mihomo 设置 → Routing Rules。Xray 把没有匹配到规则的流量交给第一个出站,而 m-ui 保留自己最后的 MATCH 规则。

Clone this wiki locally