เชิงเทคนิค · คำตอบพร้อมแหล่งอ้างอิง

Mail Transfer Agent (MTA) คืออะไร

Mail Transfer Agent (MTA) คือซอฟต์แวร์ที่ส่งต่อข้อความอีเมลจากคอมพิวเตอร์เครื่องหนึ่งไปยังอีกเครื่องหนึ่งโดยใช้ Simple Mail Transfer Protocol (SMTP) ทำหน้าที่เป็น relay รับข้อความจาก Mail User Agent (MUA) หรือ MTA อื่น แล้วกำหนดเส้นทางไปยังเซิร์ฟเวอร์ปลายทางตามเรคคอร์ด MX ใน DNS

กลไกการทำงาน

MTA ทำงานโดยรอฟังบนพอร์ตเฉพาะ โดยทั่วไปคือพอร์ต 25 สำหรับการสื่อสารระหว่างเซิร์ฟเวอร์ เมื่อข้อความมาถึง MTA จะวิเคราะห์ที่อยู่ผู้รับ สอบถาม Domain Name System (DNS) เพื่อหาเรคคอร์ด Mail Exchanger (MX) ของโดเมนปลายทาง และสร้างการเชื่อมต่อ TCP ไปยังเซิร์ฟเวอร์เป้าหมาย หากปลายทางใช้งานไม่ได้ MTA จะนำข้อความเข้าคิวเพื่อลองใหม่ภายหลังตามตารางที่กำหนดไว้

ความสำคัญต่อผู้ส่ง

MTA สำคัญต่อความสามารถในการส่งถึง เพราะจัดการการส่งจริงและ handshake กับเซิร์ฟเวอร์ผู้รับ MTA ที่ตั้งค่าถูกต้องช่วยให้ข้อความถูกส่งผ่านช่องทางที่ยืนยันตัวตนและเป็นไปตามมาตรฐานโปรโตคอล ผู้ส่งมักใช้ MTA เฉพาะทางหรือผู้ให้บริการคลาวด์เพื่อจัดการชื่อเสียงของ IP และให้แน่ใจว่าเมลไม่ถูกเซิร์ฟเวอร์ผู้รับปฏิเสธเพราะการกำหนดเส้นทางไม่ดีหรือขาดการยืนยันตัวตน

ข้อพิจารณาในการใช้งานจริง

ความล้มเหลวในการดำเนินงานที่พบบ่อย ได้แก่ การตั้งค่า relay ผิดที่ทำให้เกิด open relay นำไปสู่การใช้ในทางสแปม ผู้ส่งยังต้องตั้งค่า MTA ให้ใช้ STARTTLS เพื่อเข้ารหัสการส่ง การใช้เครื่องมือฟรีของ SendHQ ช่วยตรวจสอบว่าเรคคอร์ด DNS ที่สนับสนุน MTA เช่น SPF มีรูปแบบถูกต้อง เพื่อป้องกันการปลอมแปลงและเพิ่มระดับความน่าเชื่อถือของ agent ผู้ส่ง

ตัวอย่างที่เป็นรูปธรรม

ในขั้นตอนทั่วไป ผู้ใช้ส่งอีเมลผ่าน Outlook (MUA) Outlook ส่งเมลไปยังเซิร์ฟเวอร์ Postfix หรือ Exim ภายในองค์กร (MTA) MTA นี้ค้นหาเรคคอร์ด MX ของ gmail.com พบ IP ของเมลเซิร์ฟเวอร์ Google และ relay ข้อความผ่าน SMTP จากนั้น MTA ของ Google รับข้อความและส่งต่อให้ Local Delivery Agent (LDA) เพื่อวางในกล่องจดหมายของผู้ใช้

MTA กับ MDA

MTA รับผิดชอบการขนส่งและกำหนดเส้นทางอีเมลข้ามเครือข่าย ส่วน Mail Delivery Agent (MDA) รับผิดชอบขั้นตอนสุดท้าย MDA รับข้อความจาก MTA ตัวสุดท้ายในห่วงโซ่และเขียนลงกล่องจดหมายของผู้ใช้เฉพาะรายบนดิสก์ ซึ่งจากนั้นเข้าถึงได้ผ่านโปรโตคอลอย่าง IMAP หรือ POP3

คำถามที่ทีมมักถาม

เซิร์ฟเวอร์ SMTP เหมือนกับ MTA หรือไม่

ใช่ ในทางปฏิบัติ เซิร์ฟเวอร์ SMTP ที่ทำหน้าที่เป็น relay ก็คือ Mail Transfer Agent SMTP เป็นโปรโตคอลที่ MTA ใช้สื่อสาร

เซิร์ฟเวอร์เดียวเป็นทั้ง MTA และ MDA ได้หรือไม่

ได้ ชุดเมลเซิร์ฟเวอร์จำนวนมากอย่าง Postfix หรือ Sendmail จัดการทั้งการส่งต่อเมลระหว่างเซิร์ฟเวอร์และการส่งขั้นสุดท้ายเข้ากล่องจดหมายภายใน

จะเกิดอะไรขึ้นหาก MTA หาเรคคอร์ด MX ไม่พบ

หากไม่มีเรคคอร์ด MX MTA บางตัวจะพยายามส่งเมลไปยังเรคคอร์ด A ของโดเมน แม้จะพบได้น้อยลงในการตั้งค่าสมัยใหม่

Email API บนคลาวด์ใช้ MTA หรือไม่

ใช่ ผู้ให้บริการคลาวด์บริหารคลัสเตอร์ MTA ขนาดใหญ่เพื่อรองรับการขยายขนาด การเข้าคิว และการส่งอีเมลที่ส่งผ่าน API ของตน

แหล่งข้อมูลหลัก