传奇登录器服务器列表为空问题排查与解决方法

来源: 作者: 点击:
自己架设《传奇》服务端后,登录器启动显示“服务器列表为空”或区服下拉框空白,通常由登录器配置文件缺失、服务端未正确监听端口或通信地址错误导致。按以下步骤逐一检查。

1. 确认 LoginSrv 是否正常运行
LoginSrv(登录服务器)负责向登录器提供区服列表。若该进程未启动或崩溃,登录器无法获取数据。
进入服务端目录(如 D:MirServerLoginGate)
双击运行 LoginSrv.exe
观察窗口是否持续显示“等待连接”或“已启动”,而非闪退
若闪退,检查是否缺少 MSVCR71.dll、wsock32.dll 等依赖文件

2. 检查 !AddrTable.txt 配置
LoginSrv 读取 !AddrTable.txt(位于 LoginSrv 同目录)生成区服列表。文件格式必须严格遵循:
;区服名称|IP地址|端口
[服务器1]
127.0.0.1|7000

常见错误包括:
使用中文冒号、空格或多余符号
IP 写成外网地址(单机应为 127.0.0.1)
端口与 M2Server 或 RunGate 不匹配
文件编码为 UTF-8(必须保存为 ANSI 编码)

3. 验证端口监听状态
打开命令提示符,执行:
netstat -ano | findstr :7000

若无输出,说明 LoginSrv 未监听 7000 端口。检查:
LoginSrv 的 Config.ini 或 Setup.txt 中是否指定 Port=7000
是否有其他程序占用该端口(如 IIS、Skype)
防火墙是否阻止了本地回环通信(临时关闭测试)

4. 登录器配置指向错误
部分登录器不自动读取 !AddrTable.txt,而是依赖内置 IP 列表或外部文件(如 ServerList.dat、IPList.ini)。
查看登录器所在目录是否有 ServerList.txt,内容应为:
服务器1=127.0.0.1:7000

若登录器为 EXE 资源嵌入型,需使用配套登录器,不可混用其他版本

5. 客户端与服务端版本不匹配
Hero 引擎、QF 引擎、C3 引擎的登录协议不同。若使用 Hero 客户端连接 QF 服务端,即使地址正确也无法识别列表。
确保客户端、登录器、服务端来自同一套完整包
不要混用不同来源的组件

6. 杀毒软件拦截通信
部分杀毒软件会阻止本地 127.0.0.1 的 TCP 连接,尤其当端口非常用范围时。
临时退出 360、电脑管家等软件
将 LoginSrv.exe、登录器.exe 添加至信任区

7. 多网卡或虚拟网卡干扰
安装 VMware、Hyper-V 或多块网卡时,系统可能绑定错误 IP。
在 !AddrTable.txt 中明确写 127.0.0.1,而非 0.0.0.0 或本机局域网 IP
禁用非必要网络适配器后重启服务端

快速验证方法:
用浏览器访问 http://127.0.0.1:7000(若 LoginSrv 支持 HTTP 测试接口)
使用 telnet 127.0.0.1 7000,若连接成功说明端口开放
替换为已知可用的登录器和 !AddrTable.txt 测试

多数“列表为空”问题源于 !AddrTable.txt 格式错误或 LoginSrv 未运行。优先检查该文件编码、内容格式及端口监听状态,即可恢复区服显示。