ทำไมฉันไม่สามารถส่งอีเมลถึงตัวเองได้ที่: MyEmail@74.125.235.55


120

ผมเปิดและพิมพ์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.comemail@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-Version: 1.0 ที่ได้รับ: โดย 10.223.93.196 พร้อมด้วยรหัส SMTP w4mr3261626fam.44.1309944998035; พุธ, 06 กรกฎาคม 2011 02:36:38 -0700 (PDT) ได้รับ: โดย 10.223.104.194 ด้วย HTTP; Wed, 6 Jul 2011 02:36:37 -0700 (PDT) วันที่: Wed, 6 Jul 2011 17:36:37 +0800 ข้อความ -ID: หัวเรื่อง: ทดสอบจาก: Joseph ถึง: xxxxxx@74.125.235.54 ประเภทเนื้อหา: multipart / ทางเลือก ขอบเขต = 20cf3054a49348815504a763560c

testtest

ฉันไม่ได้รับอีเมล ทำไม?

ทำไมฉันไม่สามารถเพียงแค่ใช้แทนgmail.comเป็นส่วนหนึ่งกับ74.125.235.55?

คำตอบ:


152

เนื่องจาก 74.125.235.55 ไม่ใช่ MX (การแลกเปลี่ยนอีเมล) สำหรับ gmail.com

หากคุณ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.

อย่างที่คุณเห็นมีแม้แต่เซิร์ฟเวอร์หลายตัวที่จัดการอีเมลสำหรับ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( ฯลฯ ฯลฯ ... ) ดังนั้นมีวิธีที่จะแยกแยะความแตกต่างของผู้ใช้ไม่มี


49
คุณลืมที่จะพูดถึงว่าemail@74.125.39.27จะเป็นไวยากรณ์ที่ไม่ถูกต้องต่อ RFC 5322 § 3.4.1
JdeBP


9
nslookupจะให้ข้อมูลที่คล้ายกันในเครื่อง Windows
MikeJ-UK

12
nslookup -q=mx gmail.comจะแม่นยำ
grawity

25

เมื่อคุณส่งอีเมลไปที่ user@domain.com เซิร์ฟเวอร์อีเมลขาออกจะใช้ระเบียน DNS MXของโดเมนปลายทางเพื่อตรวจสอบว่าที่อยู่ IP ใดรับผิดชอบการจัดการอีเมลที่โดเมนนั้น นี่อาจไม่ใช่ที่อยู่ IP เดียวกันที่ส่งคืนระหว่างการ ping ปกติ

การใช้เครื่องมือ 'ขุด' บน 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 ที่แตกต่างอย่างสิ้นเชิง:

$ 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


11

ลองใช้:

email@[74.125.235.55]

นี่อาจไม่ได้ผลนักวิเคราะห์แสดงให้เห็น แต่อาจจะคุ้มค่ากับการลอง
slotishtype

1
ไม่รู้จักที่อยู่ "xxxxx @ [74.125.235.55]" ในช่อง "ถึง" โปรดตรวจสอบให้แน่ใจว่าที่อยู่ทั้งหมดถูกสร้างขึ้นอย่างถูกต้อง
Pacerier

ฉันรู้ว่านั่นคือการตั้งค่าที่เฉพาะเจาะจงของ Gmail คุณสามารถส่งได้จากโปรแกรมรับส่งเมลอื่น แต่อาจไม่ส่ง
slotishtype

btw ฉันอยากรู้ว่าอะไรคือสาเหตุที่ทำให้คุณคิดว่ามันจะได้ผล?
Pacerier

16
@[ip]เป็นไวยากรณ์พิเศษใน RFC ที่ถูกกำหนดให้เป็นบายพาสการค้นหา MX
Random832

7

74.125.235.55ไม่ใช่เกตเวย์ Gmail หากคุณไปที่ที่อยู่ IP ในเบราว์เซอร์โดยตรงจะไม่ไปที่เว็บไซต์ Gmail มันจะไปที่ Google เพื่อที่จะเป็นหนึ่งในจุด


1
เกตเวย์ gmail คืออะไร ในการใช้ถ้อยคำใหม่ฉันต้องพิมพ์ตัวเลขใดในเบราว์เซอร์เพื่อรับหน้าที่ฉันมักจะเห็นที่ gmail.com
Pacerier

2
@Pacerier เว็บเซิร์ฟเวอร์จะแสดงหน้าต่างๆขึ้นอยู่กับชื่อโดเมนที่คุณใช้เพื่อเข้าถึง ตัวอย่างเช่นฉันจัดการ iconsf.org และ iconsfinc.com พวกเขาอยู่บนเซิร์ฟเวอร์เดียวกันที่อยู่ IP เดียวกัน แต่หน้าเว็บที่คุณเห็นขึ้นอยู่กับชื่อที่คุณพิมพ์ หากคุณใช้ที่อยู่ IP คุณจะเห็น iconsf.org
CarlF

6

อันดับแรกที่อยู่ IP นั้นจะไม่ถูกแสดงเป็นระเบียน DNS MX (แม้ว่าคุณจะใช้ที่อยู่ IP ของเซิร์ฟเวอร์อีเมลที่ถูกต้อง) ตามที่คนอื่น ๆ พูดดังนั้นมันจะไม่ไปหาเซิร์ฟเวอร์ตั้งแต่แรก จะไม่ไปเส้นทางตามที่อยู่ IP นั้นเพราะ@thedomainใช้สำหรับการค้นหา) แม้ว่าคุณจะใช้ telnet เพื่อเชื่อมต่อกับเซิร์ฟเวอร์โดยตรง (นี่คือวิธีที่ผู้เชี่ยวชาญทำการทดสอบอีเมลโดยตรง) แต่ก็ยังคงล้มเหลวด้วยเหตุผลดังต่อไปนี้:

เมื่อใดก็ตามที่ฉันกำหนดค่าระบบอีเมลและฉันทำมากกับ Microsoft Exchange หรืออื่น ๆ คุณต้องบอกเสมอว่ามันคือโดเมนที่จะยอมรับ ฉันป้อนเสมอ@thedomain.comซึ่งหมายความว่าจะยอมรับเฉพาะอีเมลสำหรับโดเมนนั้น เนื่องจาก@74.125.235.55ไม่ใช่โดเมนและแน่นอนไม่อยู่ในรายการโดเมนที่ยอมรับแม้ว่าคุณจะเชื่อมต่อกับเซิร์ฟเวอร์อีเมลโดยตรงก็จะยังคงปฏิเสธ


2
ที่จริงแล้ว74.125.235.55 เป็นโดเมน (ต่อ RFC 5322 § 3.4.1 ไม่ใช่ไวยากรณ์ของที่อยู่ IP ในaddr-spec) มันเป็นโดเมนที่ไม่มีตัวตน แต่เป็นโดเมนที่สร้างความรำคาญให้กับผู้ให้บริการเซิร์ฟเวอร์ DNS หลายราย โปรดทราบว่า MTSes หลายแห่งจะยอมรับอีเมลที่ส่งไปยังที่อยู่ IP ของเซิร์ฟเวอร์รีเลย์ SMTP ของตนโดยอัตโนมัติ (ในรูปแบบที่ถูกต้องทางไวยากรณ์) exim เวอร์ชันเก่าทำสิ่งนี้ ดังนั้น qmail
JdeBP

@JdeBP ฉันไม่ใช่ผู้เชี่ยวชาญเกี่ยวกับ RFC นั้นและเมื่อฉันดูที่นี่โดยหัวหน้าต้องการจะระเบิด แต่ไม่ควรมี. com หรือ. net เป็นโดเมนจริงหรือ ไม่ว่าในกรณีใดก็ตามเพื่อจุดประสงค์ในทางปฏิบัติทั้งหมดไม่ใช่โดเมนและแน่นอนไม่ได้อยู่ในคำถามที่ให้
KCotreau

1
นั่นคือส่วนหนึ่งของปัญหา: มันเป็นโดเมนในคำถามโดยเฉพาะอย่างยิ่งสำหรับวัตถุประสงค์ในทางปฏิบัติ เป็นเพียงว่าผู้ถามเป็นเหมือนคุณและไม่ได้ตระหนักถึงสิ่งนั้น ในการให้addr-specลำดับของตัวอักษรที่74.125.235.55เป็นโดเมนที่มีฉลาก55, 235, 125และ74ในลำดับถัดลงมาจากราก ในปี 2008 Duane Wessels และคณะ ใส่ชื่อโดเมนที่ไม่มีอยู่เช่นนี้ทำให้เกิด 3.8% ของข้อความค้นหาที่เซิร์ฟเวอร์ DNS เนื้อหาราก "K" ของ ICANN ถึงเวลาแล้วที่คุณจะอ่าน RFC 4697. 2.9 ☺
JdeBP

ฉันควรจะพูดว่าโดเมน "แก้ไขได้" ในความคิดเห็นแรกของฉัน ใช่มันกำลังพยายามแก้ไข แต่หากไม่มี. com ฯลฯ จะล้มเหลวเสมอ
KCotreau

3

ปัญหาก็คือสิ่งที่อยู่อีเมลจริงคือ

ในรูปแบบโปรโตคอลจำนวนมากไวยากรณ์ของที่อยู่xxx@example.comหมายถึงเพียง "เชื่อมต่อกับอินเทอร์เน็ตโฮสต์example.comและระบุผู้ใช้ (สำหรับโปรโตคอลที่เกี่ยวข้อง) xxx" SSH, FTP, SCP และอื่น ๆ ตามรูปแบบนี้: example.comเป็นเพียงชื่อแฟนซีสำหรับที่อยู่ IP (ซึ่งได้รับการแก้ไขเช่นเดียวกับเมื่อทำ a ping) สำหรับอีเมลมันแตกต่างกัน สตริงเต็มxxx@example.comอยู่ที่นี่ที่อยู่อีเมลโดเมนเป็นส่วนหนึ่งของที่อยู่ไม่ใช่แค่เซิร์ฟเวอร์ที่เชื่อมต่อเพื่อส่ง เซิร์ฟเวอร์นี้เรียกว่า "รีเลย์" และได้มาจากส่วนโฮสต์นั้นโดยคำขอ DNS พิเศษ (บันทึก MX) ตามที่อธิบายไว้ในคำตอบอื่น ๆ แต่โปรดจำไว้ว่า:

  1. มันอาจจะตรงกับหรือไม่กับที่อยู่ IP "ปกติ" สำหรับexample.com( Aบันทึก) บ่อยครั้งที่พวกเขาแตกต่างกัน

  2. เมื่อลูกค้าค้นพบรีเลย์และเชื่อมต่อกับมันก็ยังต้องบอกที่อยู่อีเมลแบบเต็ม "ฉันต้องการส่งอีเมลไปที่xxx@example.com" (รีเลย์เดียวกันสามารถประมวลผลอีเมลสำหรับโดเมนที่แตกต่างกัน)

BTW จุดที่สอง (แต่ไม่ใช่อันดับแรก) จะใช้กับHTTPด้วยเช่นกันตั้งแต่ 1.1: โดเมนนี้ใช้เพื่อแก้ไขที่อยู่ IP ของโฮสต์ แต่ใช้เพื่อระบุทรัพยากรด้วย


2

จำไว้ว่าเซิร์ฟเวอร์อีเมลปลายทางดูที่อยู่ทั้งหมดรวมถึงชื่อที่ตามหลัง@เครื่องหมาย เซิร์ฟเวอร์อีเมลของ Gmail เท่านั้นจะเส้นทางข้อความที่สิ้นสุดใน@gmail.comทิ้งหรือปฏิเสธที่อยู่อื่น ๆ ทั้งหมด[1]

อีเมลเซิร์ฟเวอร์ที่อยู่ IP ของ Gmail 74.125.45.27คือ แต่อยู่ไม่ได้เป็นสิ่งเดียวกับtyler@gmail.com tyler@74.125.45.27Gmail จะพูดว่า "ฉันรู้ว่าใครคือ tyler@gmail.com แต่ฉันไม่เคยได้ยินชื่อ tyler@74.125.45.27" และตัดสินใจว่าไม่สามารถส่งไปยังที่อยู่ที่สองได้


[1]ใช่ฉันรู้ว่ามันไม่จริงอย่างแน่นอนและใช่ฉันรู้เกี่ยวกับ Google Apps

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.