Почему я не могу написать себе по электронной почте: MyEmail@74.125.235.55?
Я открыл 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>
У меня есть аккаунт Gmail, поэтому я отправил себе электронное письмо, но вместо email@gmail.com
я использовал email@74.125.235.55
,
Отклик:
Это автоматическое извещение о состоянии доставки
ЭТО ТОЛЬКО ПРЕДУПРЕДИТЕЛЬНОЕ СООБЩЕНИЕ.
ВАМ НЕ НУЖНО ПЕРЕСЫЛАТЬ ВАШЕ СООБЩЕНИЕ.
Доставка до следующего получателя была отложена:
xxxxxx@74.125.235.54
Сообщение будет повторено еще 2 дня
Технические подробности временного сбоя: сервер-получатель не принял наши запросы на подключение. Подробнее читайте по адресу http://mail.google.com/support/bin/answer.py?answer=7720 [74.125.235.54 (1): в соединении отказано]
----- Оригинал сообщения -----
MIME-версия: 1.0 Получено: по 10.223.93.196 с идентификатором SMTP w4mr3261626fam.44.1309944998035; Ср, 06 июля 2011 02:36:38 -0700 (PDT) Получено: по 10.223.104.194 с HTTP; Ср, 6 июля 2011 г. 02:36:37 -0700 (PDT) Дата: ср., 6 июля 2011 г. 17:36:37 +0800 ID сообщения: Тема: test От: Joseph To: xxxxxx@74.125.235.54 Тип содержимого: многочастному / альтернативные; граница = 20cf3054a49348815504a763560c
testtest
Я не получил письмо. Зачем?
Почему я не могу просто заменить gmail.com
расставаться с 74.125.235.55
?
7 ответов
Потому что 74.125.235.55 не является MX (обмен почтой) для gmail.com.
Если вы пингуете 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.
Как видите, есть даже несколько серверов, обрабатывающих электронную почту для gmail.com, и каждый из них имеет разные приоритеты (число в последнем столбце).
И если вы продолжите, вы увидите, что gmail-smtp-in.l.google.com (первый mx
в приведенном выше списке) указывает на другой 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
Так что вам придется использовать recipient@[74.125.39.27]
(это правильный синтаксис, упомянутый в комментариях JdeBP).
НО Google не примет эти письма:
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))
Подумайте еще об этом: Google не будет или не может принимать эти письма, потому что они не знают, кому вы хотите их отправить. Сервер за 74.125.39.27 может обрабатывать электронные письма для gmail.com
, google.com
, picasa.com
(и т. д. и т. д.), поэтому нет способа отличить пользователя.
Когда вы отправляете электронное письмо по адресу user@domain.com, сервер исходящей почты использует запись MX DNS DNS домена назначения, чтобы определить, какой IP-адрес отвечает за обработку почты в этом домене. Это может быть не тот же IP-адрес, возвращаемый во время обычного пинга.
Используя инструмент 'dig' в Linux, я могу определить, что запись MX для gmail.com разрешается на следующий набор серверов:
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.
которые дают совершенно разные результаты пинга:
$ 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
Возможность отправки электронной почты непосредственно на этот IP-адрес, вероятно, зависит от вашего почтового клиента и почтового сервера, и вам может потребоваться заключить адрес в квадратные скобки в соответствии с ответом slotishtype.
74.125.235.55
не является шлюзом Gmail. Если вы перейдете непосредственно к IP-адресу в браузере, он не перейдет на веб-сайт Gmail; это пойдет в Google, так что это может быть одна точка.
Во-первых, сам IP-адрес не будет указан в качестве записи MX DNS (даже если вы использовали правильный IP-адрес почтового сервера), как сказали другие, поэтому он не найдет сервер в первую очередь (это также не собирается маршрутизировать на основе этого IP-адреса в качестве @thedomain
просто используется для поиска). Даже если вы использовали telnet для прямого подключения к серверу (именно так эксперты тестируют электронную почту напрямую), она все равно не будет работать по следующей причине:
Всякий раз, когда я настраиваю почтовую систему, и я делаю многие из них, с Microsoft Exchange или другими, вы всегда должны сообщать ему, какие домены он примет. Я всегда вхожу @thedomain.com
Это означает, что он будет принимать электронные письма только для этого домена. поскольку @74.125.235.55
не является доменом и, конечно, не входит в список принятых доменов, даже если вы были напрямую подключены к почтовому серверу, он все равно будет отклонен.
Вопрос в том, какой адрес электронной почты на самом деле.
Во многих схемах протоколов адресный синтаксис xxx@example.com
значит просто "подключиться к интернет-хосту" example.com
и укажите (для соответствующего протокола) пользователя xxx
". SSH, FTP, SCP и другие следуют этой схеме: example.com
это просто причудливое имя для IP-адреса (который разрешается так же, как при выполнении ping
). Для электронной почты все по-другому. Полная строка xxx@example.com
здесь адрес электронной почты, домен является частью адреса, а не просто сервер, к которому подключаются для его отправки; этот сервер называется "ретранслятором", и он получен из этой части хоста специальным DNS-запросом (MX-записями), как объяснено в других ответах, но имейте в виду:
может совпадать или не совпадать с "нормальным" IP-адресом для
example.com
(A
запись). часто они разные.как только клиент обнаружит реле и подключится к нему, он все равно должен указать полный почтовый адрес: "Я хочу отправить письмо
xxx@example.com
" (один и тот же ретранслятор может обрабатывать почту для разных доменов).
Кстати, второй пункт (но не первый) также относится к HTTP, так как 1.1: домен используется для разрешения IP-адреса хоста, но он также используется для указания ресурса.
Помните, что почтовые серверы назначения смотрят на весь адрес, включая имя, которое следует за @
знак. Почтовые серверы Gmail будут маршрутизировать только те сообщения, которые заканчиваются на @gmail.com
, отбрасывая или отклоняя все остальные адреса[1].
IP-адрес почтового сервера Gmail: 74.125.45.27
, Но адрес tyler@gmail.com
это не то же самое, что tyler@74.125.45.27
, Gmail скажет: "Я знаю, кто такой tyler@gmail.com, но я никогда не слышал об имени tyler@74.125.45.27", и решит, что не сможет доставить по второму адресу.
[1] Да, я знаю, что это не совсем так, и да, я знаю о Службах Google.