传奇架设本机改外网IP后朋友能进自己黑屏原因与解决办法

来源: 作者: 点击:

传奇架设后出现“朋友外网能进,自己本机改外网IP后点开始黑屏”,最常见原因是:本机从内网访问自己的公网IP时,路由器或网关没有正确回环,导致游戏网关连接失败。

你内网能玩,说明服务端、客户端、数据库基本没问题。
改成外网IP后朋友能进,说明外网端口映射大概率也通了。
问题重点不在“游戏完全架不起来”,而在“本机用公网IP回连自己时黑屏”。

先判断是不是回环问题

你在自己电脑上做两个测试:

登录器或客户端配置改回内网IP,例如:

192.168.x.x

如果能正常进游戏,说明服务端本身没问题。

再把IP改成公网IP。

如果朋友能进,但你自己黑屏,基本就是本机回环问题。

很多家用路由器不支持“内网设备用公网IP访问自己”,所以本机改外网IP后,登录或进入游戏地图时会出现黑屏、卡人物选择、进不去地图等现象。

本机想继续玩,建议这样改

如果你是在自己电脑上架设,并且自己也要玩,建议本机客户端不要使用公网IP,而是使用内网IP。

可以这样处理:

本机客户端:使用 192.168.x.x
朋友外网客户端:使用你的公网IP

也就是说,你可以准备两套登录器或两套配置:
使用对象 建议填写IP 说明
你自己本机 192.168.x.x 本机回连最稳定

朋友外网 公网IP 外网玩家正常连接

服务端配置 按版本要求填写 不能乱改内部通信IP

如果你只有一个登录器,不想每次改,可以复制一份客户端文件夹,一份专门本机测试,一份给外网朋友使用。

检查服务端IP配置是否改错

改外网IP时,不要把所有地方都无脑改成公网IP。

常见需要改的是客户端连接地址、登录列表、服务器列表、登录网关对外地址等位置。

但服务端内部通信地址,例如数据库、M2、网关之间通信,很多版本仍然应该保持:

127.0.0.1

或者本机内网IP:

192.168.x.x

如果你把服务端内部通信IP也全部改成公网IP,本机可能就会出现能到人物选择,但点开始后黑屏、进不去地图、闪退、卡加载等情况。

重点检查这些位置:

!addrtable.txt
!serverinfo.txt
LoginSrv相关配置
Mir200相关配置
M2Server配置
LoginGate配置
RunGate配置
SelGate配置
登录器列表文件

不同版本路径不完全一样,不要死套文件名,要看你的版本目录结构。

检查游戏网关是否正常运行

点人物选择后黑屏,通常已经过了登录网关,问题更容易出在游戏网关或角色网关。

检查这几个程序是否都在运行:

LoginGate.exe
SelGate.exe
RunGate.exe
M2Server
DBServer

如果某个网关闪退、没启动、端口被占用,就可能出现朋友能登录一部分,但进入游戏地图黑屏。

可以用命令查看端口占用:

netstat -ano

重点看游戏网关端口是否被其他程序占用。常见端口可能是:

7000
7100
7200

具体端口以你的版本配置为准,不要默认所有版本都一样。

检查路由器端口映射

朋友能进,说明端口映射可能已经做了,但仍要确认是否完整。

常见需要映射的端口包括:

7000
7100
7200

映射规则一般是:

外部端口:游戏端口
内部端口:游戏端口
内部IP:你架设服务端电脑的内网IP
协议:TCP/UDP 或 ALL

注意内部IP不要填成公网IP,也不要填成127.0.0.1。

正确示例:

内部IP:192.168.1.100

错误示例:

内部IP:你的公网IP
内部IP:127.0.0.1

检查防火墙和杀毒软件

本机黑屏也可能是防火墙或杀毒软件拦截了游戏网关。

测试时可以临时关闭:

Windows防火墙
第三方杀毒软件
电脑管家类防护

如果关闭后能进,说明是拦截问题。之后不要把防火墙长期关闭,应该把游戏服务端目录、网关程序、登录器加入白名单。

尤其注意:

RunGate.exe
SelGate.exe
LoginGate.exe
M2Server.exe
DBServer.exe

这些程序如果被杀软误删或拦截,游戏就会黑屏、不开门、进不去地图。

检查客户端和服务端版本是否匹配

如果朋友能进,说明外网连接基本通。
但如果你本机用的客户端、登录器、补丁和服务器版本不一致,也可能黑屏。

重点检查:

登录器版本
客户端补丁
引擎版本
资源文件
地图文件
配置文件

如果你本机客户端是旧版本,朋友用的是新版本,或者你改IP时破坏了登录器列表文件,也可能出现人物选择后黑屏。

检查登录器列表文件

登录器列表文件里如果写了错误IP,也会导致本机黑屏。

打开登录器对应的列表文件,看服务器地址是不是正确。

如果是本机测试,建议写成:

服务器IP:192.168.x.x

如果是外网朋友使用,建议写成:

服务器IP:你的公网IP

不要写成:

127.0.0.1
localhost

因为外网朋友无法访问你本机的127.0.0.1。

最推荐的解决办法

你现在这种情况,最稳的处理方式是:

服务端对外配置保持公网IP,保证朋友能进。
你自己本机客户端使用内网IP登录。
不要强行让本机通过公网IP回连自己。
检查RunGate、SelGate、LoginGate是否正常启动。
检查7000、7100、7200等端口是否被占用或拦截。
检查登录器列表文件是否写错IP。
临时关闭防火墙和杀软测试一次。

如果你只是想自己本机玩,直接用内网IP最稳。
如果你要让外网朋友玩,服务端和登录列表对外用公网IP。
两者不要混在一起强行让本机也走公网IP回环。