传奇服务端外网IP设置与端口映射实战

来源: 作者: 点击:
客户端连接遵循严格链路:登录网关(LoginGate) → 角色网关(SelGate) → 游戏网关(RunGate),全程由M2Server统筹。外网架设需同步修改服务端IP与路由器映射。

一、客户端连接链路与程序对应

客户端并非直连M2,而是分步握手:

1. 登录网关 (LoginGate)
- 端口:默认 7000。
◦ 作用:客户端最先连接的程序,负责账号登录验证。

- 配置文件:LoginGate\Config.ini 或 MirGate.ini。

2. 角色网关 (SelGate/SelectCharGate)
- 端口:默认 7100。
◦ 作用:登录后,进入角色创建、选择界面时的数据通道。

- 配置文件:SelGate\Config.ini。

3. 游戏网关 (RunGate/GameGate)
◦ 端口:默认 7200(及7201等)。

- 作用:角色进入游戏后的实时数据交互(移动、战斗)。
◦ 配置文件:RunGate\Config.ini。

4. 数据库服务 (DBServer)
◦ 端口:默认 6000。

◦ 作用:M2Server通过它读写账号、角色数据(客户端不直连)。

核心中枢:M2Server.exe 不直接对外提供客户端连接端口,它只与上述网关通信。

二、外网IP详细设置(以公网IP 113.201.89.100 为例)

假设服务器内网IP为 192.168.1.100,公网IP为 113.201.89.100。

1. 网关配置文件修改
所有网关(LoginGate, SelGate, RunGate)的配置文件需将IP改为公网IP,示例如下:

- LoginGate.ini 关键项:

[LoginGate]
ServerAddr=113.201.89.100 ; 公网IP
ServerPort=7000
GateAddr=192.168.1.100 ; 内网IP(部分引擎此项也需填公网IP)


• RunGate.ini 关键项:

[GameGate]
ServerAddr=113.201.89.100
GatePort=7200


2. 服务端列表与M2配置
• ServerList.txt:位于 LoginGate 或 Mir200 目录,内容必须为:

[你的服务器名]
IP=113.201.89.100
Port=7000

• !Setup.txt:Mir200目录下的主配置文件,ServerAddr 项通常改为公网IP。

三、路由器端口映射实战(以TP-Link为例)

必须将公网IP的端口转发到内网服务器上。最少需映射 3-4个端口。

映射规则表(必需):
映射名称 外部端口 内部端口 内网IP 协议 对应程序

传奇登录 7000 7000 192.168.1.100 TCP+UDP LoginGate

角色选择 7100 7100 192.168.1.100 TCP SelGate

游戏网关 7200 7200 192.168.1.100 TCP RunGate

数据库* 6000 6000 192.168.1.100 TCP DBServer

操作步骤:
1. 浏览器输入 192.168.1.1 登录路由器。
2. 进入“转发规则” → “虚拟服务器”。
3. 逐条添加上表规则,协议选 TCP(7000端口建议选ALL或TCP+UDP)。
4. 保存并重启路由器。

四、常见外网问题排查

• 服务器关闭:7000端口未映射成功,或 ServerList.txt IP写错。

• 卡在门:7200端口未开放,或RunGate配置中IP仍为127.0.0.1。

• 进游戏黑屏:7100端口不通,或SelGate未启动。

注意:若你没有公网IP(如使用长城宽带),上述映射无效,需使用内网穿透工具(如花生壳)将7000/7100/7200端口穿透出去。