我想运行使命召唤 4 主机服务器。
首先,我在 Google 云平台上安装 Windows Server 2019。之后,我安装了使命召唤游戏服务器并运行它在本地 IP 上运行10.128.0.4:28960
您可以将游戏加入到服务器内的这个本地 IP 地址,一切正常,但我想将它暴露给其他世界。
我的服务器 IP 地址是34.67.221.157
我按照以下步骤将端口转发到本地 IPWindows 服务器中的端口转发
- 我把 IP 地址设为静态
10.128.0.4
- 使用此命令进行端口转发
netsh interface portproxy add v4tov4 listenaddress=10.128.0.4 listenport=28960 connectaddress=34.67.221.157 connectport=28960
__> 命令运行成功 - 之后我将此端口添加到防火墙中
netsh advfirewall firewall add rule name=”forwarded_CODport_28960” protocol=TCP dir=in localip=10.128.0.4 localport=28960 action=allow
__> 命令成功运行
之后我尝试34.67.221.157:28960
从我的游戏中连接,但无法连接
服务器连接超时
以下是所有这些命令成功执行后显示的内容截屏
我是 Windows Server 新手,我错过了哪些步骤,请告诉我
答案1
我认为你在第 2 步中把“倾听”和“联系”两个部分搞错了(见这个例子,其中规定“如果您想要路由到 IP 为 192.168.0.1 的设备上端口 8888,则应分别使用这些值作为“connectport”和“connectaddress””。
此外,我认为您在步骤 3 中使用了错误的 IP(“内部”IP,而不是“外部”/公共且向互联网开放的 IP)。
尝试以下步骤 2:
netsh interface portproxy add v4tov4 listenaddress=34.67.221.157 listenport=28960 connectaddress=10.128.0.4 connectport=28960
这将确保服务器监听来自34.67.221.157:28960
互联网的流量并将该流量“转发”到您的内部服务器,我相信这是您的意图。注意:如果它与相同,10.128.0.4:28960
您也可以省略,即这将得到相同的结果:connectport
listenport
netsh interface portproxy add v4tov4 listenaddress=34.67.221.157 listenport=28960 connectaddress=10.128.0.4
至于步骤 3,也使用其他 IP(注意我更改了参数的 IP localip
):
netsh advfirewall firewall add rule name=”forwarded_CODport_28960” protocol=TCP dir=in localip=34.67.221.157 localport=28960 action=allow
请记住撤消之前运行的命令以删除不正确的规则,尤其是步骤 2 中的规则:
netsh interface portproxy delete v4tov4 listenaddress=34.67.221.157 listenport=28960
查看文档这里的命令netsh interface portproxy
包括上述命令以及其他一些命令。