C#中始终拒绝环回连接

时间:2012-10-25 20:21:52

标签: c# sockets tcp

我刚刚花了两天时间。这是在游戏引擎Unity3D中运行的,但这不应该有所作为。这两行总是失败:

TcpClient client = new TcpClient();
client.Connect(new IPEndPoint(IPAddress.Parse("127.0.0.1"), 15219));

我得到的错误是:

System.Net.Sockets.SocketException: No connection could be made because the target machine actively refused it.

  at System.Net.Sockets.Socket.Connect (System.Net.EndPoint remoteEP, Boolean requireSocketPolicy) [0x00000] in <filename unknown>:0 
  at System.Net.Sockets.Socket.Connect (System.Net.EndPoint remoteEP) [0x00000] in <filename unknown>:0 
  at System.Net.Sockets.TcpClient.Connect (System.Net.IPEndPoint remote_end_point) [0x00000] in <filename unknown>:0 
  at StreamIn.Connect (System.String server, System.String message) [0x00011] in C:\XXX\StreamIn.cs:41 
UnityEngine.Debug:Log(Object)
StreamIn:uPrint(String) (at Assets/StreamIn.cs:27)
StreamIn:Connect(String, String) (at Assets/StreamIn.cs:77)
StreamIn:Start() (at Assets/StreamIn.cs:18)

我已经尝试了所有方法,包括更改防火墙设置和禁用防火墙。

我的虚拟IP地址出错了。

如果我尝试移植80而不是15219,Unity编辑器会冻结。 (我确实在运行Web服务器。)

我错过了一些明显的东西吗?还是不明显?

1 个答案:

答案 0 :(得分:1)

我总是发现使用.NET代码之外的其他网络工具来检查这些内容是否有用。我认为hercules对此非常有用,因为您可以轻松地为您的应用程序打开一个tcp服务器,以便从客户端角度连接和/或测试连接。