【问题标题】:Check whether mail.domain.com is POP or IMAP检查 mail.domain.com 是 POP 还是 IMAP
【发布时间】:2015-09-18 09:15:35
【问题描述】:

如何查看服务器是使用 POP 还是 IMAP 协议? mail.domain.com 中没有提到它,但它是可以访问的。 当我知道该邮件服务器的用户名和密码时,我想检查邮件服务器使用的协议而不从中下载任何数据。

【问题讨论】:

  • 只需尝试使用任一协议连接?
  • 尝试的唯一方法是连接到各自的端​​口(110 和 143)。

标签: java android imap pop3


【解决方案1】:

某些服务器使用 DNS SRV 记录提供此信息,如 RFC 6186 - Use of SRV Records for Locating Email Submission/Access Services 中所述。您可以查找 _imap._tcp.domain.com_imaps._tcp.domain.com_pop3._tcp.domain.com_pop3s._tcp.domain.com 的 SRV 记录,并查看哪些存在。

您可以使用dig 实用程序从命令行尝试此操作。例如,查看 Gmail 提供的服务:

$ dig +short -t SRV _imap._tcp.gmail.com
0 0 0 .

$ dig +short -t SRV _imaps._tcp.gmail.com
5 0 993 imap.gmail.com.

$ dig +short -t SRV _pop3._tcp.gmail.com
0 0 0 .

$ dig +short -t SRV _pop3s._tcp.gmail.com
20 0 995 pop.gmail.com.

结果中的前两个数字是优先级和权重,如果只有一个答案,我们可以忽略它们。第三个数字是端口号,最后一个是域名。 0 . 是一个特殊的值,表示不提供服务,所以从上面的结果我们可以看出:

  • Gmail 不提供未加密的 IMAP 访问。
  • Gmail 在主机 imap.gmail.com 的端口 993 上提供加密的 IMAP 访问。
  • Gmail 不提供未加密的 POP3 访问。
  • Gmail 在主机 pop.gmail.com 的端口 995 上提供加密的 POP3 访问。

但是,大多数服务器不会费心为电子邮件设置 DNS SRV 记录,因此大多数时候您唯一的机会就是尝试连接并查看服务器是否响应。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-04-05
    • 2011-06-12
    • 2011-01-31
    • 2013-08-08
    • 2017-04-23
    • 2011-05-31
    • 2014-01-30
    相关资源
    最近更新 更多