ddns: آموزش راه اندازی سرور ddns انحصاری بر روی هاست cpanel

محتوا

معرفی سرویس ddns و نحوه عملکرد

DNS مخفف Domain Name System است و وظیفه سرویس DNS، تبدیل اسم به IP است و ddns یا DynamicDNS آی پی متغیر یا دینامیک دارد یعنی هر بار آی پی توسط سرویس گیرنده هر بار تغییر می کند. ddns کاربرد های زیادی دارد از جمله زمانی که شما نیاز دارید به سرور شرکت یا سازمان و سرور شخصی خود از راه دور دسترسی داشته باشید. نحوه عملکرد این سرویس ساده است که در بازه های زمانی مشخص مثلا هر 20 دقیقه آی پی اینترنتی شما رو به سرور ddns ارسال می کند و در نهایتا رکوردی را آپدیت می کند. در این روش نیاز نیست شما دامین ثبت کنید و فقط از یک زیر دامنه استفاده می کنید به عنوان مثال در آدرس dl.turbodigital.ir قبل از turbodigital.ir از یک زیر دامنه یا sub domain به نام dl استفاده شده برای هاست دانلود.

محدودیت های این سرویس در ایران به خاطر تغییرات شرکت های سرویس دهنده

از نیمه دوم سال 1395 برخی از سرویس دهنده محدودیت هایی اعمال کردند که دیگر از سرویس ddns نمی شد استفاده کرد و این محدودیت بستن پورت نبود بلکه به زبان ساده تر به اشتراک گذاشتن یک آی پی (استفاده از NAT) بین چند مشترک به دلیل محدودیت IPv4 است. IPv4 در حدود ۴٬۲۹۴٬۹۶۷٬۲۹۶ آدرس ظرفیت دارد ولی باید به این توجه داشته باشید که بخشی از این مقدار هم برای شبکه های خصوصی رزور شده پس دلیل تغییراتی که در شبکه ی سرویس دهنده ها به وجود آمده به همین دلیل است و با نگاه کردن به بخش وضعیت مودم قابل مشاهده است ، برای مثال به تصویر زیر دقت کنید Default Gateway برابر است با 100.115.0.1 و به معنی این است که دیگر شما نمی توانید از آی پی داینامیک خود استفاده کنید و دلیل اصلی استفاده از NAT در ISP ها هست.

ddns

دریافت سورس کد و راهکارهای استفاده از این سرویس در همه ی تجهیزات

سورس کد و آموزش راه اندازی کامل این سرویس رایگان نبوده که هزینه دریافت سورس کد ، آموزش کامل و پشتیبانی 15 روزه مبلغ 2,000,000 تومان می باشد که صد البته تفاوت هایی هم با دیگر سرویس ها دارد مثل ارائه راهکارهایی برای استفاده از این سرویس به روش های مختلف برای تجهیزاتی که از این سرویس پشتیبانی نمی کنند و خیلی قدیمی هستند یا به دلیل تعریف نشدن سرویس شما در قسمت تنظیمات ddns امکان استفاده وجود ندارد که برای این منظور از تجهیزات خاصی استفاده می کنیم و این تجهیزات توسط ما طراحی شده است فقط قبل از تهیه این سرویس در مورد محدودیت سرویس دهنده که در همینجا هم اشاره شده تحقیق کنید تا به مشکل بر نخورید.

راه اندازی سرور ddns (غیر رایگان)

برای راه اندازی این سرویس به حداقل 50 مگابایت فضا و پنل مدیریتی cpanel و یک دامین نیاز می باشد فایل های مورد نیاز رو هم از (جهت دریافت فایل ها با شماره 09395367005 تماس حاصل فرمایید) دانلود کنید و در پوشه public_html آپلود و از حالت zip خارج کنید فقط دقت کنید فایل ها در صفحه اصلی باشند مرحله بعد ساخت دیتابیس و بازگردانی فایل ddns.sql می باشد. بعد از ساخت دیتابیس در cpanel بر روی گزینه phpmyadmin کلیک کنید و دیتابیس رو انتخاب کنید سپس بر روی Import کلیک ، فایل ddns.sql رو انتخاب و در نهایت دکمه go بزنید تا فایل آپلود شود و جداول ساخته شود

ddns

تنظیم کران جاب برای آپدیت رکورد ها

مرحله آخر تنظیم کران جاب در هاست برای فایل cronjob.php است. در cpanel بر روی Cron Jobs کلیک کنید و همانند شکل زیر پارامترها رو پر کنید Common Settings رو بر روی Once Per Five Minutes(*/5 * * * *) تنظیم کنید و در قسمت Command هم پارامتر زیر رو با توجه به آدرس فایل وارد کنید و در نهایت دکمه Add New Cron Job رو بزنید.

/usr/bin/php -q /home/public_html/ddns/cronjob.php >/dev/null

ddns

در تصاویر زیر نمونه صفحات ورود و گزارش وضعیت رو می تونید مشاهده کنید. با وارد کردن نام کاربری که همان زیر دامنه می باشد می توانید تعداد دفعات ارسالی و وضعیت زیر دامنه ، زمان ، تاریخ و آی پگی لحظه رو مشاهده کنید.

ddns

برای ارسال آی پی به سرور از متد Get به روش زیر استفاده کنید

http://your-domain.ir/ddns/index.php?sub=test&pass=123456

در صورت نمایش Update successful یعنی همه مراحل رو درست پیش رفتید و آی پی جدید جایگزین شد

در صورت نمایش No Update آی پی شما با آی پی موجود در سرور یکسان و نیاز به آپدیت ندارد

توضیح مختصر درباره نحوه عمکرد

تا اینجا با آدرس تعیین شده از طریق متد GET یک فیلد بنام ddns_ip در صورت تایید اعتبار بروز رسانی می شود فایل cronjob.php این وظیفه رو بر عهده داره که طبق بازه زمانی که در تنظیمات cron jobs اعمال کردیم هر 5 دقیقه فیلد مربوط به همه ی اکانت ها را در جدول wp_users بررسی و در صورتی که مقدار ddns_ip با فیلد old_ip یکسان نباشد آدرس مربوطه را برابر با ddns_ip می کند و مقدار old_ip رو هم برابر با ddns_ip می کند در نتیجه هر بار نیاز به بروز رسانی همه رکورد ها نیست.

نقش TTL در عملکرد این سرویس

در مورد TTL در دامنه منظور زمان زنده مانده آدرس یه دامنه در کش (cache) می باشد یعنی الان عمر زیر دامنه در کش فقط 100 ثانیه می باشد و بعد از 100 ثانیه دوباره سرور آدرس رو در کش ها بروز رسانی می کند و باید این رو در نظر بگیرید زمان پایین تر باعث افزایش استفاده از منابع هاست مثل cpu و ram می شود و درصورتی که تعداد اکانت ها زیاد شد سعی کنید این زمان رو به 1000 تغییر دهید.

0 0 votes
امتیازدهی به مقاله
بخش نظرات
مشترک شوید
Notify of
guest
24 نظرات
قدیمی ترین
جدیدترین بیشترین آرای
Inline Feedbacks
View all comments
فدا
فدا
6 years ago

Error 301>Invalid JSON: ><head
سلام این مال چی هست با اجرای cronjob

محسن
محسن
6 years ago

سلام و وقت بخیر. ممنون از مقاه خوبتون.
فقط یک سوال : متد دریافت آدرس از این آیپی چجوریه؟ ینی میشه مثه نو آیپی با دسترسی به آدرسی مثه myhost.ddns.net به آیپی مورد نظر دسترسی داشت؟
سوال دوم اینکه پورت در کجا تعریف میشه؟

محسن
محسن
6 years ago

من فکر کنم نتونستم منظور سوالم رو درست برسونم. سرورهای ddns که تو نت موجودن (مثه noip.com) این قابلیت رو دارن که صرفا با داشتن اون آدرس خاص (myhost.ddns.net) بتونید مستقیما به آیپی که با اون اکانت آپدیت میشه متصل بشی.ینی من که آدرس myhost.ddns.net رو وارد میکنم تو مرورگر خودم مستقیما صفحه کنسول مودم ام رو میاره! حالا کافیه یه پورت فورواردینگم براش بذارم تا پورت موردنظرم رو برای برد ESP8266 ام فوروارد کنه و من بتونم با زدن myhost.ddns.net:myport از هر نقطه دنیا به ماژول Esp ام وصل بشم. اما تو روشی که شما ارائه دادی من همچین… بیشتر بخوانید »

علیرضا
علیرضا
6 years ago

سلام خسته نباشید اطلاعات هاست یعنی یوزر و پسورد هاست و قسمت localhost کجاست لطفا یکم راهنمایی کنید به مشکل خوردم و در قسمت وارد کردن یوزر و پسورد برای مشاهده وضعیت پسورد رو از کجا باید تعیین کرد ممنون

علیرضا
علیرضا
6 years ago

با سلام خسته نباشید برای قسمت صفحه نمایش آی پی ها تا یک حدودی که پر میشه دیگه رفرش نمیشه چیکار باید کرد

24
0
Would love your thoughts, please comment.x
×
×

سبد خرید