找到托管电子邮件地址的 SMTP 服务器但仍收到递送状态代码

找到托管电子邮件地址的 SMTP 服务器但仍收到递送状态代码

我想向电子邮件地址以以下结尾的用户发送一封邮件@thinc.本地由于我无法以通常的方式发送这封邮件(例如,gmail 与无法识别该地址的 Google MX 服务器通信),因此我不得不找到一个托管该电子邮件地址的邮件服务器。

因此,我通过 SMTP ( telnet IP_add 25) 连接到不同的服务器,并使用 VRFY 或 EXPN 命令检查电子邮件地址是否由服务器托管。

我有一台服务器做出了“肯定”的回应:

VRFY henry

252 <[email protected]>

EXPN henry

250 <[email protected]>

我知道邮件服务器的 IP 地址和域名 (barry.thinc.local)。所以我尝试发送电子邮件至[电子邮件保护]通过在 Thunderbird 中将此服务器添加到外发 SMTP 服务器列表中(我未选择安全或身份验证方法,这可能是一个问题)。但我仍然收到邮寄状态代码消息回。

我想听听你的意见,因为我觉得我遗漏了一些东西。

附言:我在培训环境中工作,所以不需要问我是否在做一些违法的事情;-)

答案1

你似乎忽略了一点.local,名字的本质就是只有已知和可见的里面您的本地网络,因此“外部”邮件服务器无法正确解析它们,无论是否有 MX。(该.local域专门为此目的保留。)

不过,这不仅仅是名称的问题——99% 的情况下,这些“本地”名称也会解析为私有 IP 地址(例如 192.168.xx 或 fe80::x 或 RFC 1918 保留的其他范围)。因此,即使您选择的邮件服务器可以解析名称,但仍然无法到达实际地址。


请记住,此类“私有”地址在许多网络中是重复的。你家的地址是 192.168.1.1,你邻居的 LAN 的地址是不同的192.168.1.1,而几十亿家庭也都有自己的192.168.1.1。

名字也是同样的情况.local——同一个名字whatever.local在不同的地方可能有不同的含义。即使你可以找到一个接受邮件地址的 SMTP 服务器.local,您仍然无法知道它实际上将邮件发送到了哪里。

换句话说,@thinc.local通过 Gmail 发送邮件就像在纸质信件上写“收件人:J. Smith”,然后尝试通过纽约邮局或其他地方发送。


所以简短的回答是,你必须投递邮件直接地(通过连接到thinc.local:25),或者通过在相同的计算机处于开启状态时进入 LAN thinc.local

尝试第一个选项——从你的电脑直接连接到 MX(好吧,我猜测您提到的域名是 的 MX thinc.local)或域名本身:

telnet barry.thinc.local 25

telnet thinc.local 25

事实上,既然您说您有 IP 地址,那就尝试连接该地址吧。

如果该邮件到达收件人手中,就完成了。

相关内容