ممکن برای شما هم این اتفاق افتاده باشد که برای مشتری یا همکارتان ایمیلی بفرستید، اما پیام هیچوقت به مقصد نرسد و در عوض یک پیام Bounce دریافت کنید. در چنین شرایطی، همیشه مشکل از خود سرور ایمیل نیست و گاهی باید تنظیمات DNS دامنه را بررسی کرد.
یکی از مهمترین رکوردهای DNS برای مدیریت ایمیل، رکورد MX است. این رکورد مشخص میکند ایمیلهای یک دامنه باید به کدام سرور تحویل داده شوند. اگر MX Record بهدرستی تنظیم نشده باشد، حتی یک سرور ایمیل قدرتمند هم نمیتواند پیامها را در مسیر درست دریافت کند.
در این مطلب ابتدا میبینیم MX Record چیست و چطور کار میکند؛ سپس سراغ اجزای آن، نحوۀ تنظیم، خطاهای رایج و نکاتی میرویم که هنگام تغییر سرور ایمیل باید در نظر داشته باشید.
MX Record چیست؟
رکورد MX یا Mail Exchange یکی از رکوردهای DNS است که سرور یا سرورهای مسئول دریافت ایمیل یک دامنه را مشخص میکند.
برای مثال، وقتی کسی ایمیلی به آدرس info@example.com میفرستد، سرور فرستنده ابتدا DNS دامنه example.com را بررسی میکند. سپس رکورد MX آن دامنه را میخواند تا متوجه شود پیام باید به کدام سرور ایمیل تحویل داده شود.
نکتۀ مهم این است که MX رکورد ارتباطی با مسیر بارگذاری وبسایت ندارد و فقط در مسیریابی ایمیل کاربرد دارد. برای نمونه، رکورد A مشخص میکند دامنه برای نمایش وبسایت به کدام IP متصل شود؛ در حالی که MX مقصد ایمیلهای دامنه را تعیین میکند.
به همین دلیل، وبسایت و سرویس ایمیل یک دامنه میتوانند روی دو سرور کاملاً جداگانه قرار داشته باشند.
رکورد MX چطور کار میکند؟
وقتی ایمیلی ارسال میشود، سرور فرستنده ابتدا دامنه گیرنده را از آدرس ایمیل استخراج میکند. سپس یک درخواست DNS برای پیدا کردن رکورد MX همان دامنه میفرستد.
اگر دامنه بیش از یک رکورد MX داشته باشد، سرور فرستنده بر اساس مقدار Priority تصمیم میگیرد ابتدا پیام را به کدام سرور تحویل دهد.
هرچه عدد Priority کوچکتر باشد، اولویت سرور بیشتر است. فرض کنید برای یک دامنه دو MX رکورد با Priorityهای ۱۰ و ۲۰ تعریف شده باشد. در این حالت، سرور فرستنده ابتدا سروری با Priority برابر با ۱۰ را امتحان میکند. اگر آن سرور در دسترس نباشد یا پاسخ ندهد، سراغ سرور بعدی با Priority برابر با ۲۰ میرود.
به این ترتیب میتوان بیش از یک سرور برای دریافت ایمیل در نظر گرفت تا در صورت از دسترس خارج شدن یکی از آنها، مسیر دیگری برای تحویل پیام وجود داشته باشد.
یک نکتۀ فنی هم وجود دارد. اگر دامنهای رکورد MX نداشته باشد، برخی سرورهای فرستنده ممکن است برای تحویل پیام به مقصدی که از رکورد A دامنه به دست میآید مراجعه کنند. با این حال، نباید روی این رفتار بهعنوان جایگزینی برای MX حساب کرد. برای دامنهای که قرار است ایمیل دریافت کند، بهتر است رکورد MX معتبر بهصورت مشخص تعریف شود.
اجزای یک رکورد MX چیست؟
هر رکورد MX از چند مقدار تشکیل میشود که مشخص میکنند ایمیلها به کدام سرور تحویل داده شوند و این اطلاعات تا چه مدت در کش DNS باقی بمانند. در جدول زیر این اجزا به تفکیک قابل مشاهده است:
| بخش | توضیح | نمونه |
| Priority | عدد اولویت؛ عدد کوچکتر یعنی اولویت بالاتر | ۱۰ |
| Mail Server Hostname | نام کامل سرور دریافتکننده ایمیل | mail.example.com |
| TTL | مدت ماندگاری رکورد در کش سرورهای DNS | ۳۶۰۰ ثانیه |
در میان این مقادیر، TTL معمولاً کمتر مورد توجه قرار میگیرد، اما هنگام تغییر سرور ایمیل اهمیت زیادی پیدا میکند.
هرچه TTL بالاتر باشد، اطلاعات قبلی رکورد مدت بیشتری در کش سرورهای DNS باقی میماند. در نتیجه، اگر MX را تغییر دهید، ممکن است مدتی طول بکشد تا همۀ سرورها مقدار جدید را دریافت کنند.
چرا تنظیم درست MX Record اهمیت دارد؟
راهاندازی سرور ایمیل بهتنهایی کافی نیست. تا زمانی که رکورد MX دامنه به سرور درست اشاره نکند، پیامهای ورودی هم مسیر صحیحی برای رسیدن به آن نخواهند داشت.
این مشکل بهخصوص هنگام جابهجایی سرویس ایمیل زیاد دیده میشود؛ به این معنی که سرور جدید راهاندازی شده، اما MX هنوز به سرور قبلی اشاره میکند یا مقدار آن بهدرستی تغییر نکرده است.
برای سرویسهایی که به ایمیل وابستهاند، چنین خطایی میتواند دردسرساز باشد. ایمیل تأیید ثبتنام، فاکتور خرید، اعلانهای سیستمی یا لینک بازیابی رمز عبور نمونههایی هستند که تأخیر یا اختلال در دریافت آنها مستقیماً روی تجربۀ کاربر اثر میگذارد.
در کنار MX، رکوردهایی مانند SPF و DKIM هم در پیکربندی سرویس ایمیل اهمیت دارند. MX مسیر دریافت پیام را مشخص میکند و SPF و DKIM بیشتر برای احراز هویت و اعتبارسنجی ایمیلهای ارسالی به کار میروند.
آموزش گامبهگام تنظیم رکورد MX
ظاهر پنلهای DNS با یکدیگر متفاوت است، اما روند ایجاد رکورد MX در بیشتر آنها تقریباً یکسان و به صورت زیر است:
- اطلاعات MX را از ارائهدهندۀ سرویس ایمیل دریافت کنید. این اطلاعات معمولاً شامل یک یا چند Hostname و مقدار Priority هرکدام است.
- وارد پنل مدیریت DNS دامنه شوید و بخش مربوط به رکوردهای MX را پیدا کنید.
- یک رکورد MX جدید ایجاد کنید و Hostname سرور ایمیل را در فیلدی مانند Value یا Points to قرار دهید.
- مقدار Priority را مطابق دستورالعمل سرویسدهنده وارد کنید. اگر چند سرور دارید، مقدار اولویت هرکدام را دقیقاً طبق اطلاعات ارائهشده تنظیم کنید.
- مقدار TTL را روی مقدار پیشفرض قرار دهید، مگر اینکه برای تغییرات بعدی برنامۀ مشخصی داشته باشید.
- تنظیمات را ذخیره کنید و پس از آن، MX رکورد دامنه را بررسی کنید تا مطمئن شوید مقدار جدید بهدرستی ثبت شده است.
برای بررسی رکورد MX از خط فرمان نیز میتوانید از دستور زیر استفاده کنید:
dig MX example.com +short
خروجی این دستور، رکوردهای MX دامنه را همراه با Priority آنها نمایش میدهد.
اگر بلافاصله پس از تغییر تنظیمات هنوز رکورد قبلی را در خروجی میبینید، لزوماً به این معنی نیست که تنظیمات اشتباه بوده است. ممکن است رکورد قبلی همچنان در کش برخی سرورهای DNS وجود داشته باشد و انتشار مقدار جدید کمی زمان ببرد.
نکتۀ کاربردی: اگر قصد دارید MX یک دامنۀ فعال را تغییر دهید، بهتر است چند ساعت قبل از جابهجایی، TTL رکورد قبلی را کاهش دهید. با این کار، نسخۀ قدیمی رکورد مدت کمتری در کش DNS باقی میماند و انتقال به سرور جدید سریعتر انجام میشود.
رکورد MX در مقایسه با سایر رکوردهای DNS
MX فقط یکی از انواع مدیریت رکوردهای DNS است. هر رکورد وظیفۀ مشخصی دارد و دانستن تفاوت آنها هنگام مدیریت دامنه کمک میکند تنظیمات را اشتباه وارد نکنید. در جدول زیر با انواع MX رکورد و کاربرد اصلی هر یک آشنا میشوید:
| نوع رکورد | کاربرد اصلی | نمونه مقدار |
| A | اتصال دامنه به آدرس IPv4 سرور | 192.0.2.10 |
| CNAME | تعریف یک نام دامنه بهعنوان نام مستعار دامنه دیگر | www.example.com |
| MX | مشخص کردن سرور دریافتکننده ایمیل دامنه | mail.example.com |
| TXT | ذخیره اطلاعات متنی مانند SPF، DKIM یا تأیید مالکیت دامنه | v=spf1 include:… |
رکوردهای TXT مربوط به SPF و DKIM معمولاً در کنار تنظیمات سرویس ایمیل دیده میشوند. این رکوردها وظیفۀ MX را انجام نمیدهند، اما برای احراز هویت پیامها و کاهش احتمال تشخیص ایمیلهای معتبر بهعنوان پیام جعلی یا اسپم اهمیت دارند.
اشتباهات رایج در تنظیم MX Record
بخش زیادی از مشکلات مربوط به دریافت ایمیل، نه از خود سرویس ایمیل، بلکه از اشتباه در تنظیم DNS ایجاد میشود و چند مورد بیشتر از بقیه تکرار میشوند، مانند:
- وارد کردن IP بهجای Hostname: مقدار MX باید به یک نام میزبان اشاره کند، نه مستقیماً به یک آدرس IP.
- باقی گذاشتن رکوردهای قدیمی: پس از تغییر سرویسدهنده ایمیل، باقی ماندن MXهای قبلی ممکن است باعث شود بخشی از پیامها به مقصد نامناسب هدایت شوند.
- تنظیم نادرست Priority: مقادیر اولویت باید مطابق معماری سرویس ایمیل یا دستورالعمل ارائهدهنده تنظیم شوند.
- نادیده گرفتن افزونگی: اگر سرویس شما از چند MX استفاده میکند، حذف یکی از رکوردهای موردنیاز میتواند در زمان قطعی سرور اصلی مشکل ایجاد کند.
نکتۀ کاربردی: بعد از تغییر MX، فقط ثبت شدن رکورد در پنل را بررسی نکنید. Hostname، مقدار Priority و نتیجۀ Query از DNS را نیز کنترل کنید تا مطمئن شوید رکورد همان چیزی است که انتظار دارید.
MX Record و انتخاب زیرساخت میزبانی مناسب
اگر قصد دارید سرور ایمیل اختصاصی خودتان را راهاندازی کنید، علاوه بر تنظیم MX باید به زیرساختی که سرویس ایمیل روی آن اجرا میشود هم توجه داشته باشید. برای سازمانهایی که چند دامنه، تعداد زیادی صندوق ایمیل یا حجم بالایی از پیام دارند، سرور اختصاصی میتواند منابع سختافزاری بیشتری در اختیارشان قرار دهد. برای پروژههای کوچکتر یا تیمهایی که به منابع محدودتری نیاز دارند، سرور مجازی لینوکس معمولاً گزینۀ اقتصادیتری است و کنترل بیشتری نسبت به هاست اشتراکی در اختیار مدیر سرور قرار میدهد.
اگر زیرساخت ایمیل شما شامل چند سرور است، میتوانید رکوردهای MX را مطابق معماری سرویس و اولویت هر سرور تنظیم کنید. در چنین ساختاری، از دسترس خارج شدن یک سرور لزوماً به معنی قطع کامل دریافت ایمیل نخواهد بود؛ البته به شرطی که سرورهای دیگر نیز برای دریافت همان دامنه بهدرستی پیکربندی شده باشند.
وبسایت و ایمیل نیز الزامی ندارند روی یک سرور اجرا شوند. میتوانید وبسایت را روی زیرساختی جداگانه قرار دهید و سرویس ایمیل را مستقل مدیریت کنید. در این حالت، تغییراتی مانند استفاده از CDN برای وبسایت هم تا زمانی که Hostname مقصد ایمیل تغییر نکرده باشد، نیازی به تغییر MX ایجاد نمیکند.
جمعبندی
رکورد MX مشخص میکند ایمیلهای یک دامنه باید به کدام سرور برسند. بنابراین اگر این رکورد وجود نداشته باشد یا اشتباه تنظیم شود، ممکن است پیامهای ورودی به مقصد درست نرسند.
هنگام تنظیم MX، سه مورد را جدی بگیرید: Hostname سرور مقصد، Priority رکوردها و TTL. پس از هر تغییر هم بهتر است نتیجه را از طریق DNS بررسی کنید و فقط به اطلاعات نمایشدادهشده در پنل مدیریت دامنه اکتفا نکنید.
اگر در حال راهاندازی سرویس ایمیل دامنه هستید و برای میزبانی آن به زیرساخت مناسبی نیاز دارید، میتوانید با توجه به حجم ایمیل و منابع موردنیاز، از گزینههایی مانند هاست، سرور مجازی یا سرور اختصاصی استفاده کنید.
سؤالات متداول
رکورد MX با رکورد A چه فرقی دارد؟
رکورد A یک دامنه یا زیردامنه را به آدرس IP متصل میکند و معمولاً برای دسترسی به سرویسهایی مانند وبسایت استفاده میشود. رکورد MX مشخص میکند ایمیلهای دامنه باید به کدام سرور تحویل داده شوند. این دو مورد مستقل از یکدیگرند. برای مثال، وبسایت میتواند روی یک سرور مجازی قرار داشته باشد و ایمیل روی سرور دیگری مدیریت شود.
چند رکورد MX میتوان برای یک دامنه تنظیم کرد؟
برای یک دامنه میتوان بیش از یک رکورد MX تعریف کرد. تعداد و Priority رکوردها به سرویس ایمیل و معماری آن بستگی دارد. در ساختارهایی که از چند سرور با اولویتهای مختلف استفاده میکنند، سرور دارای Priority پایینتر ابتدا بررسی میشود و در صورت در دسترس نبودن آن، سرورهای بعدی در اولویت قرار میگیرند.
آیا رکورد MX روی هاست اشتراکی هم قابل تنظیم است؟
بله. بسیاری از پنلهای هاست مانند cPanel امکان مدیریت MX را در اختیار کاربر قرار میدهند. در این بخش میتوانید Hostname و Priority اعلامشده از طرف سرویسدهنده ایمیل را وارد کنید. اگر از سرویسی جداگانه مانند Google Workspace استفاده میکنید، باید رکوردهای MX را مطابق مقادیری که همان سرویس در اختیار شما قرار میدهد تنظیم کنید.
بعد از تغییر رکورد MX چقدر طول میکشد تا ایمیلها به مسیر جدید برسند؟
زمان اعمال تغییر به TTL رکورد قبلی و وضعیت کش DNS بستگی دارد. ممکن است تغییر در مدت کوتاهی دیده شود یا انتشار کامل آن زمان بیشتری ببرد. در این فاصله، برخی سرورها ممکن است همچنان مقدار قبلی را در کش داشته باشند. به همین دلیل، هنگام مهاجرت سرویس ایمیل بهتر است سرور قبلی را تا زمان اطمینان از تکمیل انتقال از دسترس خارج نکنید.
اگر رکورد MX اشتباه تنظیم شود چه اتفاقی برای ایمیلها میافتد؟
نتیجه به نوع خطا بستگی دارد. ممکن است سرور فرستنده مقصد معتبری پیدا نکند و پیام Bounce را برگرداند، یا ایمیل به سروری هدایت شود که دیگر برای دامنۀ شما فعال نیست. اگر Hostname اشتباه باشد یا سرور مقصد بهدرستی پیکربندی نشده باشد، دریافت ایمیلهای دامنه با مشکل روبهرو خواهد شد.




