Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sockets 无法建立连接,因为目标计算机主动拒绝127.0.0.1:1055_Sockets_Localhost_Windows Services - Fatal编程技术网

Sockets 无法建立连接,因为目标计算机主动拒绝127.0.0.1:1055

Sockets 无法建立连接,因为目标计算机主动拒绝127.0.0.1:1055,sockets,localhost,windows-services,Sockets,Localhost,Windows Services,我正在尝试使用以下方法打开套接字(在WebApi中,连接到同一台计算机上的windows服务): 但它表示“无法建立连接,因为目标机器主动拒绝127.0.0.1:1055”。 相反,如果我使用LAN IP(例如192.168.0.190),它工作正常 有什么不对?连接被“主动拒绝”的原因有很多,但这很可能意味着您根本没有TCP服务器监听127.0.0.1:1055,但显然它正在监听192.168.0.190:1055。服务器选择它侦听的IP。如果不想,它不必监听127.0.0.1。IPEndPo

我正在尝试使用以下方法打开套接字(在WebApi中,连接到同一台计算机上的windows服务):

但它表示“无法建立连接,因为目标机器主动拒绝127.0.0.1:1055”。 相反,如果我使用LAN IP(例如192.168.0.190),它工作正常


有什么不对?

连接被“主动拒绝”的原因有很多,但这很可能意味着您根本没有TCP服务器监听
127.0.0.1:1055
,但显然它正在监听
192.168.0.190:1055
。服务器选择它侦听的IP。如果不想,它不必监听
127.0.0.1
IPEndPoint
构造函数的第二个参数是一个整数,而不是字符串。@RemyLebeau但是127.0.0.1与本地机器ip不一样。
127.0.0.1
是一个环回ip,
192.168.0.190
是一个LAN ip。它们可能都属于本地PC,但它们是不同的网络接口。服务器可以根据需要通过单独绑定到每个接口的IP来监听特定接口,也可以通过绑定到通配符
0.0.0
IP来同时监听所有本地接口。如果我使用netstat-anb,则有0.0.0.0通配符
Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
IPAddress IP = IPAddress.Parse("127.0.0.1");
IPEndPoint endPoint = new IPEndPoint(IP, "1055");
socket.Connect(endPoint);