我一直在互联网上寻找这个问题的答案,可悲的是我离这个还差得很远。
今天,我决定编写一个SMTP服务器,用于发送/接收来自RPi的电子邮件。我想从头开始做,所以切换到 Postfix 不是一种选择。我已经在 Java 上编写了代码,所有连接都使用套接字处理。
我的服务器的工作方式就像 - 据我所知 - 大多数SMTP服务器都工作: - 电子邮件发件人连接到端口 25 上的服务器。 - 我说"220 你好,欢迎来到我的服务器" - 然后他们回复 HELO 或 EHLO,因此通信继续进行。
到目前为止,这在GMail,一些匿名电子邮件发送网站,mail.com 等中效果很好,但我无法使其与Hotmail和Yahoo一起使用。他们连接,我向他们发送"220 Hello等"行,但他们没有回复 HELO 或 EHLO 或任何东西。
雅虎已经尝试连接了一段时间,但他们根本没有回复任何东西。Hotmail也没有。
你知道它们是否以某种特殊的方式工作,如果我把协议搞砸了,或者会发生什么?
谢谢。
编辑其他一些事情:- 我使用的是无IP地址。- 我正在侦听端口 25、465 和 587,它们都已在我的路由器中打开。
确保你的行以rn
结尾,而不仅仅是n
。