2011-12-27 4 views
6

Я пытаюсь найти почтовый сервер gmail.com с помощью команды dig и проверки результатов, возвращаемых командой dig, используя telnet.Устранение почтового сервера gmail.com

$ dig gmail.com MX 

; <<>> DiG 9.7.3 <<>> gmail.com MX 
;; global options: +cmd 
;; Got answer: 
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 54145 
;; flags: qr rd ra; QUERY: 1, ANSWER: 5, AUTHORITY: 0, ADDITIONAL: 0 

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

;; ANSWER SECTION: 
gmail.com.  800 IN MX 10 alt1.gmail-smtp-in.l.google.com. 
gmail.com.  800 IN MX 20 alt2.gmail-smtp-in.l.google.com. 
gmail.com.  800 IN MX 30 alt3.gmail-smtp-in.l.google.com. 
gmail.com.  800 IN MX 40 alt4.gmail-smtp-in.l.google.com. 
gmail.com.  800 IN MX 5 gmail-smtp-in.l.google.com. 

;; Query time: 14 msec 
;; SERVER: 192.168.1.1#53(192.168.1.1) 
;; WHEN: Tue Dec 27 02:09:50 2011 
;; MSG SIZE rcvd: 150 

Dig команда говорит "alt1.gmail-smtp-in.l.google.com" является один из почтового сервера. Порт smtp 25 или 587 не открывается (проверен с использованием telnet) для ссылки «alt1.gmail-smtp-in.1.google.com». Однако ссылка http://support.google.com/mail/bin/answer.py?hl=en&answer=13287 говорит, что smtp.gmail.com является почтовым сервером для gmail.com, и порт 587 открывается для него. Почему копать дает неправильные серверы электронной почты или где мое понимание в чтении выходного вывода идет не так.

ответ

15

Общая теория

Вообще говоря, сервер SMTP имеет две различные функции, которые часто получают сплавлены: исходящее представление почты и получать почту от других сетей. Эти две функции выполняются с использованием одного и того же протокола SMTP. Обычно эти две функции выполняются одной машиной, и исторически они могут выполняться даже на одном и том же порту. Поэтому легко понять, почему люди объединяют эти две функции.

Хотя эти две функции по-прежнему имеют один и тот же протокол SMTP, становится все меньше и меньше истинным, что они выполняются на одном и том же порту (поскольку системные администраторы не позволяют своим клиентам спамить, блокируя исходящий порт 25-трафика). Часто SMTP-передача использует SSL-шифрование в эти дни, в то время как транспортировка почты между двумя различными сетями по-прежнему выполняется в виде простого текста. Со сложностью сети Google меня не удивило бы, если эти две функции выполняются на разных машинах. (Отказ от ответственности: я работаю в Google, но у меня нет внутренних знаний о работе GMail.)

  1. Отправка исходящей почты. Когда вы отправляете электронное письмо от GMail, особенно когда вы настраиваете почтовый клиент, такой как Evolution для отправки из своей учетной записи gmail, вам нужно настроить SMTP-сервер, который будет использоваться для отправки вашей почты. Ваш почтовый клиент напрямую подключается к этому SMTP-серверу, и сервер SMTP берет на себя ответственность за отправку сообщения в нужное место в другом месте в Интернете. Это часто настраивается с использованием специального порта и требует регистрационной информации, чтобы только авторизованные пользователи могли отправлять электронную почту. Это функция, с которой связана ссылка поддержки. Вы настраиваете свой почтовый клиент для использования имени домена smtp.gmail.com на порту 587, и я думаю, что ваш почтовый клиент находит этот сервер с помощью записи DNS A для обычного поиска доменных имен.

  2. Получение электронной почты из других сетей. Сервер SMTP, передающий ваше сообщение в другую сеть, просматривает запись MX для gmail.com (в вашем случае, если место для отправки сообщения alt1.gmail-smtp-in.l.google.com) и отправляет сообщение в порт 25 на этом хосте. Это то, что вы искали в DIG, и протестировали с помощью telnet.

    Теперь, почему вы не видели порт alt1.gmail-smtp-in.l.google.com, когда вы пробовали telnetting из своего интернет-подключения к Интернету? Ответ заключается в том, что для предотвращения исходящего спама ваш интернет-провайдер блокирует исходящий трафик на порте 25. Таким образом, вы не можете отправить что-либо на порт, не пройдя через SMTP-сервер вашего ISP или какой-либо другой SMTP-сервер, требующий входа в систему и отправляющий сообщения на порт 587.

Что вы пытались сделать.

Итак, вы пытаетесь выполнить функцию # 2. Вы сами искали MX для gmail.com и обнаружили, что он соответствует серверу alt1.gmail-smtp-in.l.google.com. Затем вы попробовали telnetting на порт 587 на alt1.gmail-smtp-in.l.google.com.Это не сработало, потому что alt1.gmail-smtp-in.l.google.com не прослушивает этот порт (ему нужно только прослушивать порт 25 для выполнения функции № 2). Затем вы попробовали telnetting на порт 25 на alt1.gmail-smtp-in.l.google.com. Это не сработало, потому что ваш интернет-провайдер блокирует исходящие соединения на порту 25.

Что нужно сделать для отправки электронной почты на gmail.com, это найти сервер, который выполняет функцию №1, и отправить туда свою электронную почту. Кроме того, найдите интернет-провайдера, который не против быть убежищем для спама и не блокирует исходящий трафик на порте 25. (На самом деле, пожалуйста, не делайте этого.)

+0

Я думаю, вы неправильно поняли мой сервер проверки сервера (может быть, я должен был явно указать имя сервера, для которого я тестировал открытые порты). Я не проверял наличие открытых портов в «gmail.com». Я проверил «alt1.gmail-smtp-in.l.google.com» порты 25 и 587, которые сообщаются почтовым сервером gmail.com через dig. Я не собираюсь отправлять электронную почту с gmail.com. Предположим, что мне нужно написать почтовый клиент, который должен отправить электронное письмо на адрес «[email protected]». Первое, что я должен найти, - это почтовый сервер для gmail.com. Как это найти. –

+0

@Talespin_Kit: Я обновил свой ответ сейчас. Это помогает? –

+0

Спасибо за обновление ответа. У меня мало запросов относительно блокировки порта провайдером. Я могу подключиться к порту 25 «smtp.gmail.com», но я не могу подключиться к порту 25 «alt1.gmail-smtp-in.l.google.com». Итак, почему интернет-провайдер блокирует порт 25 для «alt1.gmail-smtp-in.l.google.com», но не «smtp.gmail.com». Есть ли способ узнать, блокирует ли ISP порт (у меня есть сомнения, действительно ли открыт порт 25 «alt1.gmail-smtp-in.l.google.com»). Еще один вопрос: почему информация о «smtp.gmail.com» отсутствует в записи MX. –

 Смежные вопросы

  • Нет связанных вопросов^_^