为什么我不能给自己发送电子邮件:MyEmail@74.125.235.55?

Pac*_*ier 120 gmail smtp ping ip

我打开cmd并输入ping gmail.com。它告诉我:

C:\Windows\system32>ping gmail.com

Pinging gmail.com [74.125.235.55] with 32 bytes of data:
Reply from 74.125.235.55: bytes=32 time=6ms TTL=56
Reply from 74.125.235.55: bytes=32 time=6ms TTL=56
Reply from 74.125.235.55: bytes=32 time=6ms TTL=56
Reply from 74.125.235.55: bytes=32 time=215ms TTL=56

Ping statistics for 74.125.235.55:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 6ms, Maximum = 215ms, Average = 58ms

C:\Windows\system32>
Run Code Online (Sandbox Code Playgroud)

我有一个Gmail帐户,所以我给自己发了电子邮件,但email@gmail.com我没有使用email@74.125.235.55.

回复:

这是一个自动生成的传送状态通知

这仅是一个警告信息。

你不用重新发送你的讯息。

传递到下列收件人已被推迟:

xxxxxx@74.125.235.54
Run Code Online (Sandbox Code Playgroud)

消息将再重试 2 天

临时故障的技术细节:接收方服务器不接受我们的连接请求。如需了解详情,请访问 http://mail.google.com/support/bin/answer.py?answer=7720 [74.125.235.54 (1):连接被拒绝]

- - - 原始信息 - - -

MIME 版本:1.0 接收:由 10.223.93.196 使用 SMTP id w4mr3261626fam.44.1309944998035;2011 年 7 月 6 日星期三 02:36:38 -0700 (PDT) 收到:10.223.104.194 使用 HTTP;2011 年 7 月 6 日星期三 02:36:37 -0700 (PDT) 日期:2011 年 7 月 6 日星期三 17:36:37 +0800 消息 ID:主题:测试 发件人:Joseph 收件人:xxxxxx@74.125.235.54 内容类型:多部分/替代;边界=20cf3054a49348815504a763560c

测试一下

我没有收到电子邮件。为什么?

为什么我不能用 代替gmail.com零件74.125.235.55

tru*_*url 154

因为 74.125.235.55 不是 gmail.com 的 MX(邮件交换)。

如果您ping gmail.com,则ping使用A 记录执行其任务,但发送电子邮件(通常)会包含其他服务器。

您可以使用该工具dig(在 Windows 上:nslookup -q=mx gmail.com正如评论中提到的那样)查看这些DNS记录:

Probe:~ trurl$ dig -t ANY gmail.com

; <<>> DiG 9.6.0-APPLE-P2 <<>> -t ANY gmail.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 65087
;; flags: qr rd ra; QUERY: 1, ANSWER: 13, AUTHORITY: 0, ADDITIONAL: 9

;; QUESTION SECTION:
;gmail.com.         IN  ANY

;; ANSWER SECTION:
gmail.com.      3519    IN  MX  30 alt3.gmail-smtp-in.l.google.com.
gmail.com.      3519    IN  MX  5 gmail-smtp-in.l.google.com.
gmail.com.      74086   IN  NS  ns4.google.com.
gmail.com.      3519    IN  MX  10 alt1.gmail-smtp-in.l.google.com.
gmail.com.      74086   IN  NS  ns3.google.com.
gmail.com.      3   IN  A   209.85.148.18
gmail.com.      3519    IN  MX  40 alt4.gmail-smtp-in.l.google.com.
gmail.com.      3   IN  A   209.85.148.83
gmail.com.      3   IN  A   209.85.148.17
gmail.com.      74086   IN  NS  ns1.google.com.
gmail.com.      3   IN  A   209.85.148.19
gmail.com.      3519    IN  MX  20 alt2.gmail-smtp-in.l.google.com.
gmail.com.      74086   IN  NS  ns2.google.com.
Run Code Online (Sandbox Code Playgroud)

如您所见,甚至有多个服务器处理gmail.com 的电子邮件,并且每个服务器都有不同的优先级(最后一列中的数字)。

如果继续,您会看到gmail-smtp-in.l.google.commx上面列表中的第一个)指向不同的 IP 地址:

;; QUESTION SECTION:
;gmail-smtp-in.l.google.com.    IN  ANY

;; ANSWER SECTION:
gmail-smtp-in.l.google.com. 42  IN  A   74.125.39.27
Run Code Online (Sandbox Code Playgroud)

所以你必须使用recipient@[74.125.39.27](这是评论中提到的 JdeBP 的正确语法)。


谷歌不会接受这些邮件:

Jul  6 13:25:15 lofi postfix/smtp[31213]: C6FXXXXXXX: to=<REMOVED@[74.125.39.27]>,
relay=74.125.39.27[74.125.39.27]:25, delay=3.4, delays=0.16/0.01/0.15/3.1, dsn=5.1.1,
status=bounced(host 74.125.39.27[74.125.39.27] said:
550-5.1.1 The email account that you tried to reach does not exist. Please try
550-5.1.1 double-checking the recipient's email address for typos or
550-5.1.1 unnecessary spaces. Learn more at
550 5.1.1 http://mail.google.com/support/bin/answer.py?answer=6596 REMOVEDg.99
(in reply to RCPT TO command))
Run Code Online (Sandbox Code Playgroud)

进一步思考这一点:Google 不会或不能接受这些邮件,因为他们不知道您想将其发送给谁。74.125.39.27 后面的服务器可以处理gmail.com, google.com, picasa.com(etc., etc...) 的电子邮件,因此无法区分用户。

  • 你忘了提到 `email@74.125.39.27` 无论如何都是错误的语法,根据 RFC 5322 § 3.4.1。 (50认同)
  • [相关 RFC 部分](http://tools.ietf.org/html/rfc5322#section-3.4.1)。 (13认同)
  • `nslookup -q=mx gmail.com` 准确地说。 (12认同)
  • `nslookup` 将在 Windows 机器上提供类似的信息。 (9认同)

小智 25

当您向 user@domain.com 发送电子邮件时,外发邮件服务器使用目标域的DNS MX 记录来确定哪个 IP 地址负责处理该域中的邮件。这可能与正常 ping 期间返回的 IP 地址不同。

使用 Linux 上的“dig”工具,我可以确定 gmail.com 的 MX 记录解析为以下服务器集:

gmail-smtp-in.l.google.com.
alt1.gmail-smtp-in.l.google.com.
alt2.gmail-smtp-in.l.google.com.
alt3.gmail-smtp-in.l.google.com.
alt4.gmail-smtp-in.l.google.com.
Run Code Online (Sandbox Code Playgroud)

产生完全不同的 ping 结果:

$ ping gmail-smtp-in.l.google.com.
PING gmail-smtp-in.l.google.com (209.85.227.27) 56(84) bytes of data.
64 bytes from wy-in-f27.1e100.net (209.85.227.27): icmp_req=1 ttl=50 time=12.8 ms
Run Code Online (Sandbox Code Playgroud)

您是否可以将电子邮件直接发送到该 IP 地址可能取决于您的电子邮件客户端和邮件服务器,并且您可能需要根据slotishtype的回答将地址放在方括号中。


slo*_*ype 11

尝试使用:

email@[74.125.235.55]
Run Code Online (Sandbox Code Playgroud)

  • `@[ip]` 是 RFC 中定义为绕过 MX 查找的特殊语法。 (16认同)

San*_*sal 7

74.125.235.55不是 Gmail 网关。如果您直接访问浏览器中的 IP 地址,则不会访问 Gmail 网站;它将转到谷歌,所以这可能是一分。

  • @Pacerier,Web 服务器将根据您用于访问它们的域名显示不同的页面。例如,我管理iconsf.org 和iconsfinc.com。它们位于同一 IP 地址的同一服务器上,但您看到的网页取决于您键入的名称。如果您只使用 IP 地址,您将始终看到 iconsf.org。 (2认同)

KCo*_*eau 6

首先,该 IP 地址本身不会被列为 DNS MX 记录(即使您使用了邮件服务器的正确 IP 地址),正如其他人所说,因此它不会首先找到服务器(它也不会基于该 IP 地址进行路由,因为@thedomain它仅用于查找)。即使你使用telnet直接连接服务器(专家直接测试邮件的方式),它仍然会失败,原因如下:

每当我使用 Microsoft Exchange 或其他工具配置邮件系统时,我做了很多工作,您总是必须告诉它它将接受哪些域。我总是输入@thedomain.com,这意味着它只会接受该域的电子邮件。由于@74.125.235.55不是域,而且肯定不在接受域列表中,即使您直接连接到邮件服务器,它仍然会拒绝它。

  • 实际上,`74.125.235.55` **是一个域(根据 RFC 5322 § 3.4.1,它不是 `addr-spec` 中 IP 地址的语法)。这是一个不存在的域,但它是一个域,这让几个内容 DNS 服务器运营商非常烦恼。另请注意,多个 MTS 将**自动**接受发送至其 SMTP 中继服务器 IP 地址的邮件(以语法正确的方式)。[旧版本的 exim 做到了这一点。](http://exim.org./exim-html-3.30/doc/html/spec_11.html#SEC254) [qmail 也是如此。](http://qmail.org. /qmail-manual-html/man8/qmail-smtpd.html) (2认同)