我需要知道消息大小 SMTP 服务器的固定上限。例如,对于 GMAIL,我们有 25MB 作为发送邮件的限制。
任何人都可以帮助我使用我可以使用的命令。我同样参考了 RFC 1870。
谢谢和问候, NehaC
您可以通过发送EHLO
消息并查看服务器是否以以下方式响应来猜测这一点SIZE
:
$ nc -v aspmx.l.google.com. 25
Connection to aspmx.l.google.com. 25 port [tcp/smtp] succeeded!
220 mx.google.com ESMTP gv4si23346623qab.115
EHLO somehost
250-mx.google.com at your service, [YOUR_IP]
250-SIZE 35882577
250-8BITMIME
250-STARTTLS
250 ENHANCEDSTATUSCODES
在这种情况下,服务器报告了 35 MB 的限制。
SMTP
HELO
/EHLO
响应表示最大消息大小,请参阅http://www.samlogic.net/articles/smtp-commands-reference.htm:
SIZE SIZE 命令有两个用途。SMTP 服务器可以通知客户端最大邮件大小是多少,客户端可以通知 SMTP 服务器将要发送的电子邮件的(估计)大小。客户端不应发送大于服务器报告大小的电子邮件消息,但通常如果消息比客户端通知服务器的大小稍大一点也没有问题。下面的示例显示了服务器 (S) 和客户端 (C) 如何相互报告大小:
S: 250 SIZE 1000000
C: MAIL FROM:<mail@samlogic.com> SIZE=500000
客户端发送 SIZE 命令和大小信息以及 MAIL FROM 命令。服务器单独发送命令和大小信息。大小始终以字节为单位。