MX Record چیست؟ بررسی اهمیت و نحوه ایجاد آن
تا به حال فکر کردهاید یک ایمیل چطور مسیر خود را پیدا میکند و مستقیم به صندوق ورودی گیرنده میرسد؟ این فرایند دقیق، بر عهده سیستم نام دامنه (DNS) است. در این میان، یک رکورد به نام MX مانند مامور پست بوده و آدرس دقیق نامههای الکترونیکی را تعیین میکند. بدون این تنظیمات، ارتباطات ایمیلی شما با بنبست روبهرو میشود و هیچ پیامی به مقصد نمیرسد. در این مقاله از بخش آموزش CDN در بلاگ پارسپک ارزیابی میکنیم که رکورد MX چیست، چه ساختاری دارد و چطور باید آن را تنظیم کنید.
رکورد امایکس (Mail Exchanger Record) یکی از مهمترین رکوردهای تنظیم شده است که وظیفه مشخص کردن سرور ایمیل (Mail Server) برای یک دامنه خاص را بر عهده دارد. به زبان سادهتر، زمانی که شخصی قصد دارد ایمیلی به آدرس شما ارسال کند، سرور فرستنده ابتدا یک درخواست به سرورهای DNS ارسال میکند تا متوجه شود که دقیقا کدام سرور وظیفه دریافت ایمیلهای دامنه شما را بر عهده دارد.
رکورد MX در واقع به جهان اینترنت اعلام میکند که تمامی پیامهای متنی، پیوستها و نامههای الکترونیکی مربوط به دامنه شما باید به سمت کدام آدرس یا سرور هدایت شوند. این رکوردها منحصرا برای پروتکل SMTP (Simple Mail Transfer Protocol) طراحی شدهاند و ستون فقرات ارتباطات ایمیلی در بستر وب محسوب میشوند. اگر از خود میپرسید که اصلیترین کاربرد MX Record چیست؟ باید گفت که این رکورد تضمین میکند ترافیک ایمیلها از ترافیک وبسایت تفکیک شده و به سرور تخصصی مربوط به خود ارجاع داده شود.
اگر میخواهید با ساختار کلی این سیستم آشناتر شوید، پیشنهاد میکنیم مقاله زیر را مطالعه کنید:
DNS چیست؟
استفاده صحیح از این رکورد برای هر سازمان یا کسبوکاری که به ارتباطات ایمیلی وابسته است، نه تنها مهم، بلکه دقیقا الزامی است. دلیل اصلی اهمیت آن، قابلیتپذیر ساختن فرایند دریافت ایمیل است. بدون تنظیم این رکورد، سرورهای ارسالکننده (مانند جیمیل یا یاهو) نمیتوانند سرور مقصد را پیدا کنند و در حاصل ایمیل با خطای Bounce مواجه شده و به فرستنده بازگشت داده میشود.
علاوه بر این، این رکوردها نقش مهمی در پایداری سیستم (High Availability) و توزیع بار (Load Balancing) ایفا میکنند. مدیران سیستم و متخصصان شبکه میتوانند با تعریف چندین رکورد با اولویتهای مختلف، اطمینان حاصل کنند که در صورت قطعی یا از دسترس خارج شدن سرور ایمیل اصلی، ترافیک نامهها به صورت خودکار به سرورهای پشتیبان هدایت میشود تا هیچ پیامی در این میان از دست نرود. این معماری تضمینکننده ارتباطات بیوقفه در سطح سازمانی است.
ساختار این رکورد نسبت به سایر رکوردهای DNS دارای یک مولفه اضافه و بسیار مهم به نام «اولویت» است. برای درک بهتر، در ادامه اجزای اصلی تشکیلدهنده این رکورد را به صورت تیتروار مرور میکنیم:
برای آشنایی با سایر رکوردها و تفاوتهای میان این مفاهیم، میتوانید مقاله زیر را ارزیابی کنید:
رکورد CNAME چیست؟
هر دامنه میتواند یک یا چند رکورد MX داشته باشد. برای مثال، google.com در شرایط فعلی یک رکورد MX با اولویت ۱۰ وجود دارد که به یکی از سرورهای ایمیل گوگل اشاره میکند. این سرور نیز از طریق رکوردهای A به چندین آدرس IP مختلف نگاشت میشود تا بار ترافیک بین چند سرور توزیع شده و دسترسپذیری سرویس رشد یابد. اما محدودیتی برای داشتن تنها یک رکورد MX وجود ندارد؛ یک دامنه میتواند چندین رکورد MX با اولویتهای متفاوت داشته باشد.
در این حالت، سرورهای ارسالکننده ایمیل ابتدا تلاش میکنند به رکوردی با کمترین عدد اولویت متصل شوند و اگر آن سرور در دسترس نباشد، به ترتیب از رکوردهای با اولویت بالاتر استفاده میکنند. برای مثال، اگر دامنهای دارای رکوردهای mail1.example.com با اولویت ۱۰، mail2.example.com با اولویت ۲۰ و mail3.example.com با اولویت ۳۰ باشد، تا زمانی که mail1 در دسترس باشد تمام ایمیلها به آن تحویل داده میشوند و تنها در صورت بروز مشکل، ارسالکننده به سراغ mail2 و سپس mail3 میرود. در ادامه میتوان چند رکورد MX با اولویت یکسان تعریف کرد تا بار پردازش ایمیل بین چند سرور توزیع شود و افزونگی (Redundancy) بیشتری فراهم شود.
فرایند تنظیم و تغییر رکوردهای ایمیل در محیطهای میزبانی اعم از هاست اشتراکی و سرورهای اختصاصی شباهت زیادی به یکدیگر دارد و معمولا از طریق کنترلپنلهای محبوبی مانند سیپنل (cPanel) یا دایرکتادمین (DirectAdmin) انجام میشود. برای انجام این کار کافی است مراحل زیر را دنبال کنید:
ابتدا با وارد کردن نام کاربری و رمز عبور به محیط کنترلپنل هاست خود وارد شوید. در بخش Domains، به دنبال گزینهای با عنوان Zone Editor (در سیپنل) یا DNS Management (در دایرکتادمین) بگردید و روی آن کلیک کنید.
در صفحهای که باز میشود، لیستی از تمامی رکوردهای دامنه خود را مشاهده خواهید کرد. برای ایجاد رکورد تازه، روی دکمه Add Record کلیک کرده و از منوی کشویی نوع رکورد، گزینه MX را انتخاب کنید. در فیلد Name نام دامنه خود را وارد کنید (یا علامت @ را قرار دهید). در قسمت Priority عدد اولویت مورد نظر (مثلاً ۱۰) و در قسمت Destination/Value، آدرس سرور ایمیل خود را با دقت تایپ کنید. در نهایت با کلیک روی گزینه Save یا Add اصلاحات شما در فایل Zone سرور ذخیره خواهد شد.
استفاده از شبکههای توزیع محتوا (CDN) و سرویسهای ابری نیازمند تنظیم رکوردها در پنل همان سرویسدهنده است. اگر دامنه شما به سرویسهایی نظیر CDN پارسپک یا Cloudflare و سرویسهای مشابه متصل است، مدیریت ایمیلها باید از آنجا پیگیری شود. برای انجام این کار مراحلی که در ادامه آورده شده است را طی کنید:
وارد حساب کاربری خود در پنل مدیریت CDN شوید و دامنه مدنظرتان را انتخاب کنید. از منوی مدیریت CDN به بخش DNS بروید. روی دکمه Add Record یا ایجاد DNS نوین کلیک کنید.
برای قسمت Type یا نوع DNS، گزینه MX را انتخاب نمایید. در کادر Name یا نام هاست از علامت @ (به معنای ریشه دامنه) استفاده کنید. آدرس سرور ایمیل را در بخش Data یا Mail server قرار داده و در بخش Priority عدد اولویت را وارد نمایید (بسته به پنل مدیریت DNS عناوین بخشها ممکن است این موارد یا موارد مشابه باشد). در نهایت روی اضافه کردن کلیک کنید تا رکورد فعال شود.
برای آشنایی با راهنمای جامع کلودفلر، مطالعه مقاله زیر به شما کمک خواهد کرد:
آموزش افزودن DNS در کلودفلر
این پروسه در پنل سرویسهای دیگر نیز دقیقا به همین شکل است. کافیست در بخش «مدیریت رکوردها»، نوع رکورد را روی MX قرار داده و مقادیر هاستنیم سرور ایمیل و اولویت را در فیلدهای مربوطه جایگذاری کنید.
علاوه بر این لازم است مقصدی که وارد میکنید به آی پی معتبر سرور ایمیل شما resolve شود.
برای مثال اگر مقصد رکورد MX را mail.example.com وارد کردید، باید حداقل یک A یا AAAA رکورد به آی پی سرور ایمیل شما برای این زیر دامنه موجود باشد.
نکته:
در صورت استفاده از CDN گاهی ممکن است فعال بودن پروکسی CDN برای این رکورد، اختلالاتی ایجاد کند لذا توصیه میشود حالت پروکسی CDN برای این رکورد خاموش باشد.
یکی از سوالات تخصصی در حوزه مدیریت سرور این است که آیا رکوردهای مسیریابی ایمیل با امنیت ارتباطات و گواهینامههای SSL تداخلی دارند یا خیر. واقعیت این است که رکورد امایکس صرفاً وظیفه هدایت و آدرسدهی ترافیک به سمت سرور مقصد را بر عهده دارد و به تنهایی هیچگونه رمزنگاری روی دادهها انجام نمیدهد. اما ارتباط این دو زمانی پررنگ میشود که سرور ارسالکننده بخواهد از طریق پروتکلهای امن مانند TLS با سرور مقصد ارتباط برقرار کند (مانند استانداردهای MTA-STS).
در این حالت، سرور معرفیشده توسط رکورد MX باید حتماً دارای یک گواهی SSL معتبر باشد تا فرایند دستتکان دادن (Handshake) با موفقیت انجام شده و ایمیل به صورت مفصلا رمزنگاریشده و امن تبادل شود. در غیر این صورت، در محیطهای سازمانی سختگیرانه، ارتباط لغو شده و ایمیل تحویل داده نخواهد شد.
نگرانی عمده بسیاری از وبمسترها هنگام مهاجرت سرور، از دست رفتن ایمیلها در زمان تغییر رکوردها است. به طور کلی، تغییر این رکورد به خودی خود باعث حذف یا از بین رفتن ایمیلها نمیشود، اما به دلیل ماهیت سیستم کشینگ در ساختار DNS (وابسته به عدد TTL)، اعمال تحولات نوین در سراسر جهان ممکن است بین چند دقیقه تا ۲۴ ساعت زمان ببرد. در این بازه زمانی که اصطلاحاً به آن Propagation میگویند، برخی از ایمیلها ممکن است به سرور قدیمی و برخی به سرور بهروز هدایت شوند.
پروتکل SMTP به گونهای طراحی شده که اگر سروری در دسترس نباشد، پیام را در صف (Queue) نگه میدارد و بعداً مجدداً تلاش میکند. با این حال، بهترین روش و رویکرد حرفهای این است که پیش از تغییر رکورد اصلی، عدد TTL را نزول دهید و سرور ایمیل قدیمی را تا زمان انتشار مفصل رکوردها در شبکه جهانی (حداقل ۴۸ ساعت) روشن و فعال نگه دارید تا هیچ اختلالی در روند دریافت پیامها رخ ندهد.
درک صحیح از زیرساختهای شبکهای، پایه و اساس داشتن یک کسبوکار اینترنتی موفق است. همانطور که مرور کردیم، رکورد MX قطبنمای هدایت ایمیلها در سطح وب است که با تعیین سرور مقصد و مشخص کردن اولویتهای توزیع بار، از گم شدن مکاتبات حیاتی شما جلوگیری میکند. پیکربندی درست این رکوردها در کنار تنظیمات امنیتی، پایداری جریان ارتباطی شما را تضمین خواهد کرد. برای تجربه میزبانی پایدار و مدیریت بینقص و امن ایمیلهای سازمانی خود، میتوانید از سرویسهای هاست و سرور پارسپک استفاده کنید که فرصت مدیریت پیشرفته و آسان رکوردهای DNS را در محیطی استاندارد برای شما فراهم میکنند.
رکورد A آدرس متنی (دامنه وبسایت) را به یک آدرس IP عددی متصل میکند تا سایت در مرورگر بارگذاری شود، اما رکورد MX اختصاصاً وظیفه هدایت ترافیک مربوط به ایمیلها را به سمت Mail Server بر عهده دارد و باید حتماً به یک رکورد A معتبر اشاره کند.
بله، یکی از بهترین رویکردهای فنی برای صعود پایداری (Redundancy) تنظیم چندین رکورد با مقادیر Priority مختلف است. اگر سروری که اولویت بالاتری دارد (عدد کمتری دارد) از دسترس خارج شود، ایمیلها به صورت خودکار به سرورهای جایگزین بعدی ارسال خواهند شد.
این زمان مفصلا وابسته به مقدار تنظیمشده در فیلد TTL دامنه شماست. ارتقا رکوردهای کششده در سرورهای ارائهدهندگان اینترنت (ISP) سراسر جهان ممکن است از چند دقیقه تا نهایتاً ۴۸ ساعت به طول بینجامد.
