一、先确认服务端进程是否起全
传奇3不是只开一个主程序就行,通常要看到这些进程都在:
DBServer、LoginSrv、LoginGate、3Gates或GateSrv、GameSrv、M2Server。
缺任何一个,输完账号密码都会卡在连接服务器失败。
看任务管理器,哪个没起来就按启动器日志查报错;重点看 LoginSrv 有没有报 Connect to DBServer failed,GameSrv 有没有报端口占用。
二、测端口通不通(最快定位)
本机测试时,假设网关端口是 7000:
cmd 里执行
telnet 127.0.0.1 7000
通了:黑屏光标闪,说明监听正常,问题在登录器配置或版本。
不通:说明网关没监听、端口错、被占用或防火墙拦了。
查端口占用:
netstat -ano | findstr "7000"
有占用就改端口,或结束占用进程。
三、对齐服务端和登录器端口
服务端看这几个地方(不同端文件名略有差异):
Mir200\Config.ini 里 GatePort=7000
RunGate\Config.ini 里 Port=7000
M2S.ini 里 [Server] GatePort=7000
LoginSvr.ini 里 [ShareGate] Server0=127.0.0.1:7000
登录器列表文件(serverinfo.txt / list.txt)写法:
测试服127.0.0.1 7000 1
8000
第三个值必须和 GatePort 一模一样。
微端端口单独配,别把微端端口填到主网关栏。
四、IP 环境写法
本机自己登:全部填 127.0.0.1
局域网别人登:服务端网关配内网IP,比如 192.168.1.100;登录器也填这个内网IP,不能填 127.0.0.1
外网:路由器做端口映射,TCP 协议,内外端口一致,指向主机内网IP;云服务器还要在控制台安全组放行。
多网卡容易绑错,先禁掉无线网卡、VPN、虚拟网卡,只留有线网卡再起服务端。
五、防火墙和杀软
临时关 Windows 防火墙和杀毒软件测一次。
通了就把这些程序加白名单:
LoginSrv.exe、GameSrv.exe、3Gates.exe、GateSrv.exe、登录器.exe
入站规则放行 TCP 7000(按你实际网关端口来)。
六、数据库层
DBC 类:控制面板 BDE Administrator 里数据库名一般是 HeroDB 或 Mir3DB,路径指到 Mud2\DB,名字错会登录异常。
MySQL/MariaDB:服务得是启动状态,账号密码、库名、端口(3306)要和 dbserver 配置一致,先 mysql 命令行能连能查表。
账号本身:看 DB 里 Account 表或 Member.txt 有没有这个号,密码别带空格,半角全角别混。
七、登录器和引擎配套
GOM 端用 GOM 登录器,GEE 用 GEE 登录器,别混。
有通讯密钥的端,服务端 Config.ini 和登录器配置器密钥必须一字不差。
客户端版本不对也会握手失败,优先用服务端包里自带登录器生成器重新出一个。
八、启动顺序(减少隐式断连)
1. 起数据库服务
2. DBServer
3. LoginSrv
4. 网关(3Gates / GateSrv / LoginGate)
5. GameSrv / M2Server
全部起来后再用登录器登,别边起边点。
九、还不行看日志
翻 Log 目录:
LoginSrv 日志有 DBServer 连不上 → 查数据库
网关日志没收到连接 → 查 IP 端口防火墙
M2 日志报网关未连接 → 查 ShareGate 配置和启动顺序
客户端删掉 Cache、Config 缓存,重新生成登录器再试。
十、外网特殊坑
家用宽带公网IP会变,重启光猫后登录器要改IP,或挂DDNS。
7000 被运营商封就换 7100、7200 之类高位口,映射和列表同步改。
局域网内用外网IP测不准,拿手机流量测才算数。
按这个顺序走:进程全不全 → telnet端口 → 配置IP端口对齐 → 关防火墙 → 数据库 → 配套登录器,基本能定位到具体哪一层断的。
自架传奇3点登录报连接服务器失败的端口网关排查
来源:
作者:
点击:

