2
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:连接尝试失败,因为连接方在一段时间后没有正确响应,或者连接的主机在 System.Net.Sockets.Socket 没有响应 202.88.253.162:25 导致连接失败.DoConnect(EndPoint endPointSnapshot, SocketAddress socketAddress)"

我怎么能解决这个问题?

4

3 回答 3

3

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

错误的可能原因:

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

更新

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

于 2011-06-14T12:53:40.497 回答
0

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

于 2019-12-31T05:16:12.547 回答
0

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

SmtpServer.Port = 587;

它开始工作了=)

于 2020-11-24T20:04:20.250 回答