当前位置 : 145z游戏站 | 热血传奇 | 技术教程 | 

自架传奇3点登录报连接服务器失败的端口网关排查

热度:
一、先确认服务端进程是否起全
传奇3不是只开一个主程序就行,通常要看到这些进程都在:
DBServer、LoginSrv、LoginGate、3Gates或GateSrv、GameSrv、M2Server。
缺任何一个,输完账号密码都会卡在连接服务器失败。
看任务管理器,哪个没起来就按启动器日志查报错;重点看LoginSrv有没有报ConnecttoDBServerfailed,GameSrv有没有报端口占用。

二、测端口通不通(最快定位)
本机测试时,假设网关端口是7000:
cmd里执行
telnet127.0.0.17000
通了:黑屏光标闪,说明监听正常,问题在登录器配置或版本。
不通:说明网关没监听、端口错、被占用或防火墙拦了。

查端口占用:
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.170001
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
入站规则放行TCP7000(按你实际网关端口来)。

六、数据库层
DBC类:控制面板BDEAdministrator里数据库名一般是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端口对齐→关防火墙→数据库→配套登录器,基本能定位到具体哪一层断的。
[顶部]