رکوردهای CNAME ابزار مهمی در دنیای برندسازی تجاری و مدیریت وب سایت هستند که اهداف متعددی را دنبال میکنند. برای نمونه، به زیر دامنههای store.odoonix.ir یا blog.odoonix.ir فکر کنید – اینها بخشهای متمایز یک وبسایت را نشان میدهند که انواع محتوای خاصی را در اختیار بازدیدکنندگان قرار میدهند. ایجاد و مدیریت زیر دامنه هایی مانند "store" یا "blog" با استفاده از رکوردهای CNAME امکان پذیر است. یکی دیگر از موارد استفاده از رکوردهای CNAME، فعال کردن استفاده از شبکه های تحویل محتوا (CDN) است که زمان بارگذاری صفحه و تجربه کاربر را بهبود میبخشد. در این مقاله، نحوه عملکرد رکوردهای CNAME را بررسی میکنیم، موارد استفاده آنها را بررسی می کنیم و بهترین روش ها برای پیاده سازی رکوردهای CNAME را یاد می گیریم.
رکورد CNAME چیست؟
CNAME، مخفف نام متعارف یا Canonical Name، نوعی رکورد DNS (سیستم نام دامنه) است. یک رکورد CNAME در دو زمینه استفاده می شود:
-
برای ایجاد یک زیر دامنه که به سرور دیگری هدایت میشود
- برای ارسال بازدیدکنندگان از یک دامنه به دامنه دیگر
بیایید با کاربرد اول شروع کنیم. تصور کنید یک فروشگاه آنلاین دارید و می خواهید زیر دامنه "shop.odoonix.ir" را ایجاد کنید. می توانید یک رکورد CNAME ایجاد کنید تا به دامنه اصلی (odoonix.ir) یا به منبع دیگری مانند یک وب سایت شخص ثالث با استفاده از URL ارائه شده آنها اشاره کند. به عنوان مثال، اگر یک حساب Shopify دارید، می توانید از یک رکورد CNAME (shop.odoonix.ir) برای ارسال مشتریان خود به وب سایت Shopify خود (shops.myshopify.com) استفاده کنید.
در کاربرد دوم، یک رکورد CNAME به عنوان یک اشاره گر یا نام مستعار از یک نام دامنه به نام دامنه دیگر استفاده میشود. این به شما امکان می دهد یک نام دامنه را با آدرس IP یک نام دامنه دیگر مرتبط کنید. به عبارت ساده تر، یک رکورد CNAME مانند یک نام مستعار یا میانبر برای یک دامنه است.
اجزای یک رکورد CNAME چیست؟
در اینجا یک جدول با نمونه ای از رکورد CNAME آمده است:
Hostname | Record Type | Value | TTL |
www.example.com | CNAME | @ | Auto. |
blog.example.com | CNAME | blogalias.com | Auto. |
mail.example.com | CNAME | domainverify.googlehosted.com | Auto. |
بیایید هر یک از این اجزا و عملکرد آنها را با جزئیات بررسی کنیم.
- نام میزبان. نام میزبان یک شناسه یا یک برچسب منحصر به فرد برای شناسایی و متمایز ساختن دستگاه ها در یک شبکه است. در سیستم نام دامنه (DNS)، نام میزبان معمولاً با نام دامنه مرتبط می شود. به عنوان مثال، در نام دامنه "www.example.com"، "www" نام میزبانی است که نشان دهنده یک سرور یا سرویس خاص در دامنه "example.com" است. نام میزبان به مسیریابی درخواست های شبکه به دستگاه یا سرور مناسب کمک می کند. علاوه بر وب سایت ها، می توان از آن برای دسترسی به منابعی مانند سرورهای ایمیل، سرورهای FTP یا هر دستگاه متصل به شبکه دیگری نیز استفاده کرد.
- نوع ضبط نوع رکورد برای سوابق CNAME همیشه روی "CNAME" تنظیم می شود تا حل کننده DNS بتواند آن را به این صورت شناسایی کند. این به حل کننده اجازه می دهد تا نام مستعار را دنبال کند و نام متعارف را حل کند و آدرس IP مربوطه یا نوع سرور دیگر را بازیابی کند.
- مقدار. این نشاندهنده مقصد یا هدفی است که DNS باید در آن کوئریها را برای نام میزبان مشخص شده هدایت کند. به عنوان مثال، اگر باید نام دامنه خود را در Google تأیید کنید، باید یک رکورد CNAME با مقدار منحصر به فردی که آنها ارائه می دهند مانند "domainverify.googlehosted.com" اضافه کنید.
- TTL (زمان برای زندگی). مقدار TTL برای یک رکورد CNAME، مدت زمانی را تعیین میکند که حلکنندههای DNS و سرورهای ذخیرهکننده باید قبل از بررسی بهروزرسانیها، رکورد را ذخیره کنند. در ثانیه مشخص شده است. به عنوان مثال، TTL 3600 نشان دهنده یک ساعت زمان کش است.
کاربردهای CNAME Records
سوابق CNAME انعطافپذیری را در هدایت ترافیک، راهاندازی زیر دامنهها یا اجرای خدمات شخص ثالث فراهم میکنند. سوابق CNAME چه تغییر مسیر دامنهها، مدیریت شبکههای تحویل محتوا (CDN) یا تسهیل خدمات ایمیل، به صاحبان وبسایتها این امکان را میدهد تا حضور آنلاین خود را سفارشی و بهینه کنند، صرف نظر از نوع یا اندازه کسبوکارشان. بیایید به برخی از موارد استفاده از رکوردهای CNAME با عمق بیشتری نگاه کنیم.
تغییر مسیر دامنهها
سوابق CNAME میتوانند ترافیک را از یک دامنه به دامنه دیگر هدایت کنند و جابهجایی بین وبسایتها یا هدایت بازدیدکنندگان را به یک مکان آنلاین دیگر آسان کند. هنگامی که یک رکورد CNAME برای یک دامنه ایجاد می شود، به عنوان یک نام مستعار یا مستعار عمل می کند و به دامنه منبع اجازه می دهد به همان آدرس IP دامنه مورد نظر اشاره کند.
مثال: John's Apparel، یک خردهفروش آنلاین لباس، تصمیم گرفت تا وبسایت خود را تغییر نام دهد و به یک نام دامنه جدید، «new-johnsapparel.com» روی بیاورد. برای اطمینان از انتقال یکپارچه، این شرکت یک رکورد CNAME برای دامنه قدیمی، "old-johnsapparel.com" ایجاد می کند و کاربران را به وب سایت جدید هدایت می کند. هنگامی که کاربران "old-johnsapparel.com" را در مرورگرهای وب خود تایپ می کنند، رکورد CNAME آنها را به وب سایت جدید هدایت می کند. کاربران نیازی به یادگیری یا به خاطر سپردن یک URL جدید ندارند، که هر گونه ضرر احتمالی کسب و کار را هنگام تغییر نام دامنه از بین می برد.
در اینجا یک نمونه رکورد CNAME برای تغییر مسیر دامنه آورده شده است:
Type | Hostname | Value |
CNAME | old-johnapparel.com | new-johnapparel.com |
مدیریت زیر دامنهها
رکوردهای CNAME اغلب برای ساختن زیردامنه هایی استفاده می شود که به سرورها یا سرویس های جداگانه هدایت میشوند. این به سازمان ها کمک میکند تا قسمت های خاصی از وب سایت خود را به طور مستقل ترتیب دهند و مدیریت کنند.
مثال: ABC Corporation یک شرکت توسعه نرم افزار با خدمات و بخش های متعدد است. می خواهد خدمات مختلف خود را تحت زیر دامنه های خاص سازماندهی و مدیریت کند. به عنوان مثال، یک زیر دامنه "support.abc-corp.com" باید به "support-target-server.com" برای پورتال پشتیبانی مشتری خود اشاره شود. این به آنها اجازه میدهد تا به طور مستقل بخشهای مختلف کسبوکار خود را اداره کنند و در عین حال حضور آنلاین خود را با UX عالی حفظ کنند.
در اینجا یک نمونه رکورد CNAME برای راه اندازی زیر دامنه آورده شده است:
Type | Hostname | Value |
CNAME | support.abc-corp.com | support-target-server.com |
شبکه تحویل محتوا (CDN)
رکوردهای CNAME را می توان برای ادغام CDN ها استفاده کرد، که محتوای وب سایت را در حافظه پنهان و بین چندین سرور توزیع می کند و عملکرد وب سایت و دسترسی جهانی را بهبود می بخشد.
مثال: Shoes & More یک فروشگاه آنلاین است که طیف گسترده ای از محصولات کفش و لوازم جانبی را به مشتریان در سطح جهانی می فروشد. آنها رشد قابل توجهی را تجربه کرده اند که منجر به ترافیک وب سایت بالا و نیاز به بهینه سازی عملکرد وب سایت و سرعت بارگذاری آنها می شود. این شرکت تصمیم گرفت یک CDN را برای بهبود عملکرد وب سایت خود ادغام کند. برای رسیدن به این هدف، آنها برای یک سرویس CND ثبت نام کردند و به آنها توصیه شد که یک رکورد CNAME راه اندازی کنند.
در اینجا یک نمونه رکورد CNAME برای شبکه تحویل محتوا آورده شده است:
Type | Hostname | Value |
CNAME | shoesandmore.com | cdn-provider-example.com |
مدیریت ایمیل
سوابق CNAME به صاحبان دامنه امکان میدهد تا سرویسهای ایمیل ارائهدهندگان شخص ثالث را پیکربندی کنند. به عنوان مثال، با ایجاد یک رکورد CNAME، می توانید زیر دامنه ایمیل دامنه خود (به عنوان مثال، "mail.example.com") را با یک ارائه دهنده خدمات ایمیل اختصاصی مانند Google یا Microsoft مرتبط کنید.
مثال: صنایع دستی و گنجینه یک تجارت الکترونیکی کوچک است که صنایع دستی و کالاهای صنایع دستی را به صورت آنلاین می فروشد. آنها می خواهند ارتباطات ایمیل خود را با استفاده از یک سرویس ایمیل حرفه ای تقویت کنند، بنابراین تصمیم می گیرند برای یک ارائه دهنده خدمات ایمیل شخص ثالث ثبت نام کنند. برای تنظیم آن، آنها باید یک رکورد CNAME برای سرویس ایمیل جدید ایجاد کنند.
در اینجا یک نمونه رکورد CNAME برای سرویس ایمیل آمده است:
Type | Hostname | Value |
CNAME | mail.handmadecrafts-treasures.com | mail.provider.com |
یکپارچه سازی خدمات
با استفاده از سوابق CNAME، سازمانها میتوانند بدون زحمت خدمات شخص ثالث مانند پلتفرمهای تجارت الکترونیک، سیستمهای پشتیبانی مشتری یا ابزارهای تجزیه و تحلیل را ادغام کنند و از تجربه کاربری یکپارچه اطمینان حاصل کنند. به عنوان مثال، اگر نیاز به استفاده از Google Analytics برای وب سایت خود دارید، باید یک رکورد CNAME را به سوابق DNS خود اضافه کنید تا نام دامنه خود را تأیید کنید.
مثال: فروشگاه اینترنتی XYZ Goods یک تجارت الکترونیکی است که طیف وسیعی از محصولات را از طریق وب سایت خود به فروش می رساند. آنها میخواهند Google Analytics را ادغام کنند تا بینش ارزشمندی در مورد ترافیک وبسایت و رفتار مشتری به دست آورند. برای رسیدن به این هدف، آنها باید یک رکورد CNAME را به سوابق DNS خود اضافه کنند تا نام دامنه خود را برای Google Analytics تأیید کنند.
در اینجا یک رکورد CNAME برای ادغام یک سرویس شخص ثالث (Google Analytics) آمده است:
Type | Hostname | Value |
CNAME | www.xyz-goods-onlinestore.com | analytics.google.com |
چگونه DNS رکوردهای CNAME را مدیریت و استفاده میکنند؟
مدیریت و حل و فصل رکوردهای CNAME نیاز به استفاده از DNS دارد که مخفف Domain Name System است.
در اینجا مراحل استفاده شده توسط DNS برای مدیریت و حل و فصل رکوردهای CNAME آمده است:
- کاربر درخواست ارسال را میکند. این فرآیند زمانی شروع می شود که کاربر درخواستی مانند وارد کردن URL یک وب سایت در مرورگر وب خود ارسال می کند.
- حل کننده DNS کاربر که معمولاً توسط ارائهدهنده خدمات اینترنتی (ISP) یا یک ارائهدهنده DNS عمومی اداره میشود، به عنوان حلکننده DNS عمل میکند. حلکننده DNS مسئول رسیدگی به پرسشهای DNS و حل نام دامنه در آدرسهای IP است.
- سرورهای ریشه DNS اگر حلکننده DNS اطلاعات درخواستی را در حافظه پنهان خود نداشته باشد، با ارسال درخواستی به سرورهای DNS ریشه، یک کوئری DNS را آغاز میکند. سرورهای DNS ریشه نقطه شروع فرآیند حل DNS هستند و مسئول ارائه اطلاعات در مورد سرورهای سطح بالای دامنه (TLD) هستند.
- سرور DNS TLD. سرورهای DNS ریشه با ارائه آدرس IP سرور DNS TLD که مسئول TLD خاص دامنه درخواستی است، به درخواست حلکننده پاسخ میدهند. به عنوان مثال، اگر دامنه درخواستی "example.com" باشد، سرور DNS TLD برای TLD ".com" شناسایی می شود.
- سرور DNS معتبر حلکننده DNS با سرور TLD DNS تماس میگیرد تا آدرس IP سرور DNS معتبر مسئول دامنه "example.com" را بدست آورد. سرور DNS معتبر جایی است که سوابق DNS خاص، از جمله رکوردهای CNAME، برای دامنه نگهداری می شود. پس از آن، حلکننده DNS اطلاعات بهدستآمده را در حافظه پنهان ذخیره میکند، که به پاسخهای سریعتر برای پرسوجوهای بعدی کمک میکند و بار زیرساخت DNS را کاهش میدهد.
به طور خلاصه، DNS سوابق CNAME را با استفاده از حلکنندهها مدیریت میکند تا به طور سیستماتیک سرورهای DNS معتبر را پرس و جو کند، و هر رکورد CNAME در طول مسیر با آن مواجه میشود، تا رسیدن به مقصد نهایی را دنبال میکند. حافظه پنهان کارایی را بهبود می بخشد و نیاز به پرس و جوهای مکرر را کاهش می دهد.
بهترین روش های کار با CNAME Records
ایجاد رکوردهای CNAME نیاز به بررسی متفکرانه ای دارد تا از تجربه یکپارچه اطمینان حاصل شود و از مشکلات احتمالی جلوگیری شود - مانند پیکربندی نادرست رکوردهای CNAME - که می تواند منجر به از کار افتادن خدمات آنلاین شود. با پیروی از این پنج روش برتر، می توانید به طور موثر رکوردهای CNAME خود را مدیریت کرده و تنظیم نام دامنه خود را بهینه کنید.
هدف از رکورد CNAME خود را شناسایی کنید
هدف رکورد CNAME را به وضوح تعریف کنید. آیا برای تغییر مسیر دامنه، راه اندازی زیر دامنه یا ادغام با خدمات شخص ثالث است؟
بررسی سازگاری رکورد
هنگامی که هدف از رکورد CNAME را تعیین کردید، مطمئن شوید که رکوردهای CNAME که ایجاد میکنید با موارد استفاده خاص شما و سرویسهایی که قصد دارید ادغام کنید، سازگار است. به عنوان مثال، اگر یک CDN را در وب سایت خود ادغام می کنید، باید با ارائه دهنده CDN تماس بگیرید تا مقدار صحیح CNAME مورد نیاز خود را برای افزودن به رکورد CNAME خود بدست آورید. توجه به این نکته مهم است که سرویسهای مختلف ممکن است الزامات و محدودیتهای خاص خود را در مورد سوابق CNAME داشته باشند، بنابراین به شدت توصیه میشود برای کمک با تیم پشتیبانی ارائهدهنده میزبانی DNS خود تماس بگیرید.
مدیریت TTL
Time to live (TTL) مقداری است که طول عمر داده ها را در یک شبکه قبل از حذف نشان می دهد. برای مدیریت موثر TTL، یک مقدار TTL مناسب برای رکورد CNAME تنظیم کنید. فراوانی تغییرات و پاسخگویی مورد نظر را در نظر بگیرید. مقادیر کمتر TTL منجر به بهروزرسانی سریعتر میشود، اما ممکن است بار پرس و جو DNS را افزایش دهد.
مثال: هنگام تنظیم CDN، باید مقدار صحیح ارائه شده توسط ارائه دهنده CDN خود را وارد کنید. این مقدار تعیین میکند که DNS چه مدت باید رکوردهای DNS را در حافظه پنهان نگه دارد. به طور معمول، مقدار TTL توصیه شده برای این مورد حدود 3600 ثانیه (1 ساعت) است که به تعادل راندمان کش و پاسخگویی کمک می کند.
از زنجیرهای CNAME اجتناب کنید
به حداقل رساندن استفاده از چندین رکورد CNAME در یک زنجیره برای جلوگیری از تأخیر غیر ضروری و نقاط احتمالی شکست توصیه می شود. هر جستجوی اضافی CNAME تاخیرهایی را در فرآیند حل DNS معرفی می کند و احتمال مواجهه با مشکلات را افزایش می دهد.
مثال: در اینجا یک زنجیره CNAME متشکل از سه پیوند است. این زنجیره با زیر دامنه "sales.example.com" شروع می شود که به "marketing.example.com" هدایت می شود. زیر دامنه "marketing.example.com" به نوبه خود به "promotions.example.com" و در نهایت زیر دامنه "promotions.example.com" به "offers.example.com" هدایت می شود.
Type | Hostname | Value |
CNAME | sales.example.com | marketing.example.com |
CNAME | marketing.example.com | promotions.example.com |
CNAME | promotions.example.com | offers.example.com |
این معمولا زمانی اتفاق میافتد که صاحب وب سایت یک صفحه وب جدید ایجاد می کند و همچنین یک زیر دامنه جدید ایجاد می کند، سپس می خواهد کاربران را به سایت جدید هدایت کند. این روند دوباره تکرار می شود و صاحب وب سایت تصمیم می گیرد یک وب سایت دیگر ایجاد کند. در نتیجه، می تواند باعث تغییر مسیرهای بیش از حد شود که می تواند منجر به تاخیر برای کاربران شود.
انجام تست رکورد
برای اطمینان از اینکه رکورد CNAME شما به درستی کار می کند، پیکربندی آن را آزمایش کرده و عملکرد آن را همانطور که انتظار می رود تأیید کنید. می توانید این کار را با تأیید اینکه رکورد به طور دقیق حل می شود و ترافیک را به مقصد مورد نظر هدایت می کند، انجام دهید. به عنوان مثال، پس از تنظیم یک رکورد CNAME، جستجوهای DNS را انجام دهید یا از ابزارهای DNS آنلاین برای تأیید صحت رکورد استفاده کنید.
محدودیت های رکوردهای CNAME چیست؟
پس از درک روشهای مختلف استفاده از رکوردهای CNAME در وبسایت خود، مهم است که محدودیتهای همراه با آنها را در نظر داشته باشید. این بخش بعدی این محدودیت ها و تأثیر بالقوه آنها را بررسی می کند.
- استفاده مستقیم محدود برای دامنه ریشه. یک اشکال مهم رکوردهای CNAME این است که نمی توان از آنها برای دامنه ریشه (example.com) استفاده کرد. فقط زیر دامنه ها (به عنوان مثال، mail.example.com) می توانند از رکوردهای CNAME استفاده کنند.
- زمان وضوح DNS ممکن است بیشتر طول بکشد. با توجه به مرحله اضافی در جستجوی DNS، میتواند منجر به تجربه بارگیری کندتر وبسایت برای کاربران، به خصوص برای اولین باری که از وبسایت بازدید میکنند، شود.
- نمی تواند با سایر رکوردهای DNS همزیستی داشته باشد. قوانین DNS از داشتن هر دو نوع CNAME و سایر انواع رکورد برای یک زیر دامنه جلوگیری می کند. برای مثال، نمیتوانید یک CNAME برای «mail.example.com» راهاندازی کنید و همچنین یک رکورد MX با همین نام ایجاد کنید.
برای وضعیت دوم، Gcore DNS ویژگی CNAME Flattening را فراهم می کند. اما CNAME Flattening دقیقا چیست و چگونه عمل می کند؟ بیایید در بخش بعدی به جزئیات بپردازیم.
نتیجه گیری
رکوردهای CNAME برای ارائه خدمات آنلاین بسیار مهم هستند و معمولاً برای تغییر مسیر زیر دامنه، ادغام CDN، خدمات ایمیل و تجزیه و تحلیل استفاده می شوند. با این حال، استفاده از رکوردهای CNAME در دامنه ریشه چالش هایی را ایجاد می کند. برای غلبه بر این، می توان از صاف کردن CNAME استفاده کرد و رکوردهای CNAME را برای سازگاری به رکوردهای A تبدیل کرد.
در Gcore، ما صاف کردن CNAME را به عنوان یک ویژگی رایگان در سرویس میزبانی DNS خود ارائه می دهیم، که به شما امکان می دهد رکوردهای DNS را به طور موثر مدیریت کنید و از عملکرد یکپارچه برای کاربران اطمینان حاصل کنید. چه در DNS تازه کار باشید و چه یک وب مستر باتجربه، میزبانی DNS ما مدیریت رکوردهای CNAME و دیگر DNS را آسان و بدون دردسر می کند. با کارشناسان ما تماس بگیرید و ما خوشحال خواهیم شد که به شما در شروع کار کمک کنیم.
کاربرد رکورد CNAME چیست؟ نحوه کار، موارد استفاده و اهمیت