System.Net.Sockets.SocketException

本文关键字:SocketException Sockets Net System | 更新日期: 2023-09-27 17:59:01

Encoding en = Encoding.GetEncoding("iso-8859-1"); // default encoding
IPHostEntry IPhst = Dns.GetHostEntry(_Host);
IPEndPoint endPt = new IPEndPoint(IPhst.AddressList[0], 25);
Socket s = new Socket(endPt.AddressFamily, SocketType.Stream, ProtocolType.Tcp);
s.Connect(endPt);

我得到的错误如下:

System.Net.Sockets.SocketException:由于连接方在一段时间后没有正确响应,连接尝试失败,或者由于连接的主机未能响应,建立的连接失败202.88.253.162:25位于System.Net.Socket.Socket.DoConnect(端点endPointSnapshot,SocketAddress SocketAddress(">

我该怎么解决这个问题?

System.Net.Sockets.SocketException

在您尝试连接的指定ip/端口上没有服务器在侦听。

错误的可能原因:

  1. 您使用了错误的IP地址
  2. 您使用的端口错误

更新

没有看到您正在尝试连接到SMTP服务器。许多ISP会为除自己的SMTP服务器之外的所有ip地址屏蔽端口25。这是为了减少垃圾邮件。所以这也可能是原因。

尝试使用IP 127.0.0.1。它可能会起作用。

我在代码中将端口25更改为587。

SmtpServer.Port = 587;

它开始工作=(