2011-12-27 20 views
6

Estoy tratando de encontrar el servidor de correo gmail.com usando el comando dig y verificando los resultados devueltos por el comando dig usando telnet.Resolviendo el servidor de correo 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 

comando dig dice "alt1.gmail-smtp-in.l.google.com" es uno de los servidores de correo. Los puertos smtp 25 o 587 no se abren (se verifica mediante telnet) para el enlace "alt1.gmail-smtp-in.1.google.com". Sin embargo, el enlace http://support.google.com/mail/bin/answer.py?hl=en&answer=13287 dice que smtp.gmail.com es el servidor de correo para gmail.com y el puerto 587 se abre para él. ¿Por qué excavar es dar servidores de correo electrónico equivocados o donde mi comprensión en la salida de lectura de excavación está fallando?

Respuesta

15

Teoría General

En términos generales, un servidor SMTP tiene dos funciones diferentes que a menudo se confunden: envío de correo saliente, y recibir correo de otras redes. Estas dos funciones se realizan utilizando el mismo protocolo SMTP. Por lo general, estas dos funciones las realiza la misma máquina, e históricamente incluso podrían realizarse en el mismo puerto. Por lo tanto, es fácil ver por qué las personas combinan estas dos funciones.

Aunque estas dos funciones siguen siendo el mismo protocolo SMTP, cada vez es menos cierto que se realizan en el mismo puerto (ya que los administradores del sistema evitan que sus clientes envíen spam bloqueando el tráfico saliente del puerto 25). A menudo, el envío de SMTP utiliza el cifrado SSL en estos días, mientras que el transporte de correo entre dos redes diferentes todavía se realiza en texto plano. Con la complejidad de la red de Google, no me sorprendería si estas dos funciones se realizan en diferentes máquinas. (Negación: trabajar para Google, pero no tengo conocimiento interno sobre el funcionamiento de Gmail.)

  1. presentación de correo saliente. Cuando envía un correo electrónico desde GMail, particularmente cuando configura un cliente de correo electrónico como Evolution para enviar desde su cuenta de Gmail, debe configurar un servidor SMTP para usarlo para enviar su correo. Su cliente de correo electrónico se conecta directamente con este servidor SMTP, y ese servidor SMTP asume la responsabilidad de enviar el mensaje al lugar correcto en otro lugar en Internet. Esto a menudo se configura utilizando un puerto especial y requiriendo información de inicio de sesión para que solo los usuarios autorizados puedan enviar correos electrónicos. Esta es la función que trata el enlace de soporte anterior. Configura su cliente de correo electrónico para usar el nombre de dominio smtp.gmail.com en el puerto 587, y creo que su cliente de correo electrónico encuentra este servidor utilizando el registro DNS A para una búsqueda de nombre de dominio común.

  2. Recepción de correo electrónico de otras redes. El servidor SMTP que está retransmitiendo su mensaje a la otra red busca el registro MX para gmail.com (en su caso, descubriendo que el lugar para enviar el mensaje es alt1.gmail-smtp-in.l.google.com) y envía el mensaje al puerto 25 en ese host. Esto es lo que buscaste en DIG, y probado con telnet.

    ¿Por qué no vio el puerto 25 de alt1.gmail-smtp-in.l.google.com cuando intentó usar telnet en su conexión de internet del consumidor? La respuesta es que para evitar el spam saliente, su ISP bloquea el tráfico saliente en el puerto 25. Por lo tanto, no puede enviar nada al gmail.com puerto 25 sin pasar por el servidor SMTP de su ISP o algún otro servidor SMTP que requiera un inicio de sesión y reciba envíos en el puerto 587.

Lo que intentó hacer.

Por lo tanto, intenta realizar la función n. ° 2. Hizo la búsqueda de MX para gmail.com usted mismo, y encontró que corresponde al servidor alt1.gmail-smtp-in.l.google.com. Luego, intenté usar telnet en el puerto 587 en alt1.gmail-smtp-in.l.google.com.Eso no funcionó porque alt1.gmail-smtp-in.l.google.com no está escuchando en ese puerto (solo necesita escuchar en el puerto 25 para realizar la función n. ° 2). Luego, intenté usar telnet en el puerto 25 en alt1.gmail-smtp-in.l.google.com. Eso no funcionó porque su ISP bloquea las conexiones salientes en el puerto 25.

Lo que necesita hacer para enviar un correo electrónico a gmail.com es encontrar un servidor que realice la función n. ° 1 y envíe su correo electrónico. Alternativamente, encuentre un ISP que no le importe ser un refugio de spam y no bloquee el tráfico saliente en el puerto 25. (En realidad, no lo haga)

+0

Creo que ha entendido mal mi servidor de verificación de puerto (puede debería haber mencionado explícitamente el nombre del servidor para el que he probado los puertos abiertos). No verifiqué los puertos abiertos en "gmail.com". He comprobado los puertos "alt1.gmail-smtp-in.l.google.com" 25 y 587, que se informa como el servidor de correo de gmail.com por dig. No estoy pensando en enviar correos electrónicos desde gmail.com. Supongamos que tengo que escribir un cliente de correo que debe enviar un correo electrónico a "[email protected]". Lo primero que tengo que encontrar es qué es el servidor de correo para gmail.com. Cómo encontrar eso –

+0

@Talespin_Kit: He actualizado mi respuesta ahora. ¿Eso ayuda? –

+0

Gracias por actualizar la respuesta. Tengo pocas consultas sobre el bloqueo del puerto por parte del ISP. Puedo conectarme al puerto 25 de "smtp.gmail.com", pero no puedo conectarme al puerto 25 de "alt1.gmail-smtp-in.l.google.com". Entonces, ¿por qué el ISP bloquea el puerto 25 para "alt1.gmail-smtp-in.l.google.com" pero no para "smtp.gmail.com"? ¿Hay algún método para averiguar si el ISP bloquea un puerto? (Tengo una duda si el puerto 25 de "alt1.gmail-smtp-in.l.google.com" está realmente abierto). Una consulta más es, ¿por qué la información sobre "smtp.gmail.com" no está presente en el registro MX? –

Cuestiones relacionadas