无法使用套接字连接到服务器

无法使用套接字连接到服务器

我正在使用这个图书馆用于联网我的游戏,它在本地主机上运行良好;但我将我的 server.exe 监听器放在我的 AWS EC2 Windows 远程实例上,但我无法连接到它。

这些是我为了尝试让它发挥作用所做的所有事情:

  • 为我的端口添加了 AWS 安全组规则(我最终尝试启用所有流量/地址/端口),用于入站/出站连接
  • 禁用本地计算机和远程 ec2 实例上的防火墙
  • 将远程 ec2 实例上的服务器设置为监听 0.0.0.0:3813
  • 设置客户端连接到与我的 ec2 实例关联的 aws 弹性 IP,端口为 3813
  • 在 ec2 实例上运行 netstat 并验证它正在监听 0.0.0.0:3813
  • ping 了我的 ec2 实例弹性 IP,看看我是否能够访问它
  • 对以上所有内容进行双重(三重)检查

似乎许多和我面临同样问题的人都通过添加必要的安全组规则解决了这个问题,但这并没有解决我的问题。我觉得我使用的库可能有一些奇怪的安全问题,可能会干扰我的 IP 或其他东西(只是一个想法)。我尝试查看它对该CreateServer函数做了什么,看起来它应该可以工作。另外,我注意到它使用了System.Net.Sockets。如果有人知道我可能做错了什么,请帮忙!

编辑:

这是我刚刚注意到的错误:

FormatException: An invalid IP address was specified.
System.Net.IPAddress.Parse (System.String ipString)
clientTest+<connectToServer>c__Iterator0.MoveNext () (at Assets/Networking/Scripts/Core/clientTest.cs:71)
UnityEngine.SetupCoroutine.InvokeMoveNext (IEnumerator enumerator, IntPtr returnValueAddress) (at C:/buildslave/unity/build/Runtime/Export/Coroutines.cs:17)
UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
clientTest:<Start>m__1(NetcodeClient) (at Assets/Networking/Scripts/Core/clientTest.cs:50)
UnityNetcodeIO.UnityNetcode:CreateClient(NetcodeIOClientProtocol, Action`1) (at Assets/Networking/Scripts/Core/UnityNetcode.cs:205)
clientTest:<Start>m__0(NetcodeIOSupportStatus) (at Assets/Networking/Scripts/Core/clientTest.cs:47)
UnityNetcodeIO.UnityNetcode:QuerySupport(Action`1) (at Assets/Networking/Scripts/Core/UnityNetcode.cs:144)
clientTest:Start() (at Assets/Networking/Scripts/Core/clientTest.cs:41)

编辑2: 我没有做任何更改,但不知何故这个错误不再出现。我现在只是超时了。

相关内容