نحوه تنظیم Dynamic DNS

Dynamic DNS چیست؟

بیایید یک مثال معمول از راه اندازی DNS بگیریم. دامنه شما است example.com، و شما Aپرونده هایی برای server1.example.comو " " دارید server2.example.com. Server1 در Vultr میزبان است ، اما server2 در یک شبکه محلی مانند داخل مشاغل شما یا به عنوان یک دستگاه توسعه در خانه شما میزبان است. به طور معمول ، این نوع از محیط های محلی دارای آدرس های IP عمومی به طور پویا از ارائه دهنده خدمات اینترنت شما (ISP) اختصاص می یابند و ممکن است به طور غیر منتظره تغییر کنند. این امر باعث می شود که server2 ناگهان به یک آدرس IP اشتباه اشاره کند که می تواند خدمات را به شدت تحت تأثیر قرار دهد. در این مقاله نحوه تنظیم خدمات DNS پویا خود را که روی یک دستگاه محلی اجرا می شود نشان می دهد و می تواند پس از تغییر IP عمومی ، رکورد server2 را در Vultr DNS به طور خودکار بروزرسانی کند.

در حالی که مشتریان برای برخی از ارائه دهندگان DNS دوست دارند ddclientو inadynکار خواهند کرد ، Vultr در حال حاضر از این پشتیبانی نمی کند و در عوض از API سفارشی خود استفاده می کند. این سرویس به صورت محلی روی دستگاه شما اجرا می شود و از درخواست های GET و POST به همراه کلید دسترسی شما استفاده می کند.

پیش نیازها

  • برای تنظیم DNS و مدیریت کلیدهای دسترسی به حساب Vultr خود دسترسی پیدا کنید.
  • امکان اتصال به دستگاه محلی که دارای یک آدرس IP پویا است (یا دسترسی به یک دستگاه دیگر در همان شبکه).

نصب و راه اندازی

دامنه خود را برای استفاده از سرویس DNS Vultr تنظیم کنید

  • اگر از سرویس DNS Vultr برای دامنه خود استفاده نمی کنید ، این مقاله را دنبال کنید تا سرورهای نام خود را برای استفاده با Vultr تغییر دهید.
  • پس از راه اندازی Vultr DNS ، به صفحه مدیریت DNS تحت "سرورها -> DNS -> [نام دامنه شما]" بروید.
  • در اینجا تمام پرونده های تنظیم شده برای دامنه خود را پیدا خواهید کرد. بنویسید کدام رکورد (ها) را که می خواهید تغییر دهید بنویسید ، زیرا بعداً به این مورد نیاز خواهید داشت.
    • فقط Aسوابق توسط این ابزار پشتیبانی می شوند. اگر چندین Aضبط دارید که می خواهید به همان آدرس IP " CNAME" دهید ، آنها را به " " سوابق " " تغییر دهید و آنها را به یک " A" رکورد تبدیل کنید. این کار در طولانی مدت برای شما ساده تر خواهد بود و راهی مناسب برای پیکربندی DNS محسوب می شود.

ابزارهای مورد نیاز را نصب کنید

  • به سرور محلی خود وصل شوید. این می تواند مستقیم یا از طریق SSH باشد.
  • این ابزار به پایتون 3 احتیاج دارد. بیشتر توزیعهای لینوکس شامل پیش نصب شده Python است. در صورت عدم نصب در محیط شما ، دستورالعمل هایی در ویکی رسمی پایتون در اینجا موجود است:
  • این فرآیند همچنین به Git نیاز دارد ، که می توانید با دستورالعمل های زیر نصب کنید:

در حال بارگیری مشتری Dynamic DNS

از Git برای کلون کردن مخزن حاوی مشتری DDNS python استفاده کنید. شما باید این کار را در یک دایرکتوری ایمن انجام دهید که به آن دسترسی کامل دارید. پوشه خانه شما باید کافی باشد. دستور زیر را اجرا کنید:

git clone https://github.com/andyjsmith/Vultr-Dynamic-DNS.git vultrddns && cd vultrddns

ایجاد یک نشانه دسترسی شخصی

یک نشانه دسترسی شخصی در Vultr ایجاد کنید. این کار را می توان در "Account -> API -> Token Access Personal" انجام داد. در همان صفحه ، شما باید زیر "Access Control" بروید و روی دکمه "Allow All IPv4" کلیک کنید ، زیرا هر بار IP سرور محلی خود را نمی شناسید ، از این رو نقطه DNS پویا است.

پیکربندی ابزار برای سرور شما

  • config.json.exampleنمونه ای از پرونده پیکربندی خود را از طریق پرونده بخوانید .
  • config.jsonپرونده را با استفاده از ویرایشگر متن مورد علاقه خود باز کنید و مقادیر را بر اساس تنظیم سرور خاص خود پر کنید.
  • پرونده باید شامل موارد زیر باشد:

    {
        "api_key": "",
        "domain": "",
        "dynamic_records": [
        ""
        ]
    }
    
  • نماد دسترسی خود را وارد قسمت کنید api_key.

  • دامنه پایه خود را وارد قسمت کنید domain. به عنوان مثال، example.com.
  • اکنون Aپرونده هایی را که می خواهید در قسمت " " تغییر دهید ، وارد کنید dynamic_records. با استفاده از مثال قبلی ، می توانید آدرس IP را server2به طور خودکار تغییر دهید server2. ممکن است چندین زیر دامنه وارد کنید. اگر می خواهید Aپرونده " " پایه را برای دامنه خود تغییر دهید (معمولاً به عنوان یک " " ارجاع می شود @، سابقه ای که هنگام حرکت مستقیم به آن پاسخ می دهد example.com) ، به سادگی نقل قول های خالی را ترک کنید.
  • یک پرونده پیکربندی مناسب ممکن است به صورت زیر باشد ، جایی که می خواهید IP را به صورت پویا تغییر دهید example.comو server2.example.com:

    {
        "api_key": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
        "domain": "example.com",
        "dynamic_records": [
        "",
        "server2"
        ]
    }
    
  • اکنون این تغییرات را ذخیره کنید و پرونده شما باید خوب باشد!

پیکربندی خود را تست کنید

  • اسکریپت و تنظیمات را با اجرا تست کنید python3 ddns.py. در صورت عدم بازگشت خطا ، پیکربندی شما اسمی است و می توانید فرآیند اتوماسیون را شروع کنید.

اتوماسیون

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

لینوکس و مک OSX

لینوکس و مک از cronقبل نصب شده را دارند که به شما امکان می دهد اسکریپت ها را برای اجرای برنامه های تعیین شده مشخص کنید.

  • مسیر کامل ddns.pyپرونده را با استفاده از realpath ddns.pyدر حالی که هنوز در vultrddnsفهرست هستید ، پیدا کنید.
  • crontab -eبرای ویرایش crontab خود اجرا کنید.
  • خط زیر را به انتهای پرونده اضافه کنید و در مسیر واقعی پرونده اضافه ddns.pyکنید:

    */30 * * * * python3 [full path to ddns.py] > /dev/null 2>&1
    
  • با این کار اسکریپت هر 30 دقیقه انجام می شود و تمام خروجی آن به سمت راست هدایت می شود /dev/null.

  • از ویرایشگر متن ذخیره و خارج شوید. پرونده crontab به صورت خودکار نصب می شود و IP شما اکنون به طور خودکار به روز می شود.

پنجره ها

یک کار را در Task Scheduler ایجاد کنید تا هر 30 دقیقه یک بار اجرا شود. برای ایجاد کار اساسی ، از راهنمای مایکروسافت پیروی کنید .

  • Task Scheduler را باز کنید و روی "ایجاد کار ..." کلیک کنید.
  • به آن اسم دهید و یک ماشه جدید ایجاد کنید.
  • روی "روزانه" کلیک کنید. در زیر "تنظیمات پیشرفته" کلیک کنید تا هر 30 دقیقه کار را تکرار کنید و "را برای مدت زمان" به "نامحدود" تغییر دهید.
  • اقدام جدیدی را برای شروع یک برنامه اضافه کنید و به فهرست اجرایی Python خود بروید. اضافه کردن ddns.pyاسکریپت به عنوان یک استدلال.


Leave a Comment

اشتراک NFS را در Debian تنظیم کنید

اشتراک NFS را در Debian تنظیم کنید

NFS یک سیستم فایل مبتنی بر شبکه است که به رایانه ها اجازه می دهد تا از طریق شبکه رایانه ای به فایلها دسترسی پیدا کنند. این راهنما توضیح می دهد که چگونه می توانید پوشه ها را روی NF قرار دهید

نصب و راه اندازی ZNC در اوبونتو

نصب و راه اندازی ZNC در اوبونتو

ZNC یک پیشرانه پیشرفته شبکه IRC است که تمام وقت بهم متصل می شود تا مشتری IRC بتواند بدون از دست دادن جلسه گپ قطع یا وصل شود.

سرور DHCP را در ویندوز سرور 2012 راه اندازی کنید

سرور DHCP را در ویندوز سرور 2012 راه اندازی کنید

DHCP پروتکل است که برای اختصاص پویا آدرس IP به دستگاه های شبکه شما استفاده می شود. ویندوز سرور 2012 نه تنها می تواند سرور DNS یا Domai باشد

MailCatcher را در اوبونتو 14 نصب کنید

MailCatcher را در اوبونتو 14 نصب کنید

مقدمه MailCatcher ابزاری است که روشی آسان برای توسعه دهندگان برای بازرسی از ایمیل هایی که برنامه های آنها ارسال می شود بدون نیاز به انتظار برای

نحوه نصب PiVPN در Debian

نحوه نصب PiVPN در Debian

مقدمه یک راه آسان برای راه اندازی سرور VPN در دبیان با PiVPN است. PiVPN نصب و بسته بندی OpenVPN است. این دستورات ساده را برای شما ایجاد می کند

از rezv.conf از DHCP در FreeBSD 10 محافظت کنید

از rezv.conf از DHCP در FreeBSD 10 محافظت کنید

اگر رأی دهنده خود را اجرا می کنید ، یا مایل به استفاده از یک ارائه دهنده شخص ثالث هستید ، ممکن است متوجه شوید که پرونده /etc/resolv.conf شما توسط DHCP رونویسی می شود

VPN را در ویندوز سرور 2012 راه اندازی کنید

VPN را در ویندوز سرور 2012 راه اندازی کنید

تنظیم VPN در ویندوز سرور نسبتاً آسان است. با استفاده از VPN می توانید با سایر رایانه های متصل به VPN ارتباط برقرار کنید. همچنین می توانید به هفتم وصل شوید

پیکربندی BGP در Vultr

پیکربندی BGP در Vultr

ویژگی Vultrs BGP به شما امکان می دهد فضای IP شخصی خود را بیاورید و از آن در هر مکان دیگری استفاده کنید. برای شروع استفاده از BGP ، شما نیاز دارید: یک Vult مستقر

پیکربندی BGP با استفاده از Quagga در Vultr (CentOS 7)

پیکربندی BGP با استفاده از Quagga در Vultr (CentOS 7)

Vultrs عملکرد IP فضای شما را امکان پذیر می سازد تا آزادی بی سابقه ای در اختصاص منابع IP شخصی شما به سرورهای cloud Vultr داشته باشید. ما کلی

پیکربندی آسان IPTables و نمونه هایی از اوبونتو 16.04

پیکربندی آسان IPTables و نمونه هایی از اوبونتو 16.04

مقدمه iptables ابزاری قدرتمند است که برای پیکربندی فایروال یکپارچه هسته های لینوکس استفاده می شود. با این حال ، در اکثر توزیع های اوبونتو از قبل نصب شده است

نحوه ایجاد تونل GRE بین دو سرور CentOS 7

نحوه ایجاد تونل GRE بین دو سرور CentOS 7

مقدمه GRE چیست؟ مزایای آن چیست؟ GRE مخفف Generic Routing Encapsulation است که به دو سرور امکان برقراری ارتباط خصوصی را می دهد. GR

پیوستن به یک دامنه فعال دایرکتوری برای مشتریان Windows

پیوستن به یک دامنه فعال دایرکتوری برای مشتریان Windows

هنگامی که سرور Active Directory خود را تنظیم کردید ، می توانید به دامنه Active Directory خود بپیوندید. این را می توان در مشتری های ویندوز انجام داد که b

یک آدرس IPv4 ثانویه به VPS خود اضافه کنید

یک آدرس IPv4 ثانویه به VPS خود اضافه کنید

در این آموزش نحوه تنظیم آدرس IPv4 اضافی در Vultr VPS شما توضیح داده شده است. ما موارد زیر را فرض خواهیم کرد: آدرس IP اصلی VPS شما 1.2.3.4 است.

در دسترس بودن زیاد در Vultr با IP و BGP شناور

در دسترس بودن زیاد در Vultr با IP و BGP شناور

Vultr به شما امکان می دهد تا دو ویژگی از ما (IP های شناور و BGP) را برای دستیابی به دسترسی بالا ترکیب کنید. راه اندازی شما به دو مورد در سام نیاز دارید

Mailserver ساده با Postfix ، Dovecot و Sieve On Debian 7

Mailserver ساده با Postfix ، Dovecot و Sieve On Debian 7

آموزش زیر نحوه تنظیم یک mailserver ساده با استفاده از Postfix به عنوان MTA ، Dovecot as MDA و Sieve awesome برای مرتب سازی نامه را شرح می دهد. استارت

چندین شبکه خصوصی

چندین شبکه خصوصی

Vultr در اوایل سال 2018 پشتیبانی از چندین شبکه خصوصی را معرفی کرد. این ویژگی به عنوان پیشرفت شبکه های خصوصی استاندارد ارائه شده است. چرخ

نمونه نامه مجوز برای اطلاعیه های BGP

نمونه نامه مجوز برای اطلاعیه های BGP

لطفاً هنگام درخواست مجوز برای اعلانات BGP از الگوی زیر استفاده کنید. نامه اعتبار (تاریخ) که ممکن است به آنها مربوط شود ، Thi

نصب Bro IDS در اوبونتو 16.04

نصب Bro IDS در اوبونتو 16.04

با استفاده از یک سیستم متفاوت؟ مقدمه Bro یک چارچوب تحلیل شبکه منبع باز قدرتمند است. تمرکز اصلی Bros بر نظارت بر امنیت شبکه است. برو

Mailserver ساده با Postfix ، Dovecot و Sieve On FreeBSD 10

Mailserver ساده با Postfix ، Dovecot و Sieve On FreeBSD 10

در این آموزش نحوه دریافت سرور پست الکترونیکی ساده در FreeBSD 10 با Postfix به عنوان MTA ، Dovecot as MDA و Sieve برای مرتب سازی نامه به شما نشان داده می شود - در کل

سرور DNS را در ویندوز سرور 2012 راه اندازی کنید

سرور DNS را در ویندوز سرور 2012 راه اندازی کنید

ویندوز سرور 2012 را می توان به عنوان یک سرور DNS پیکربندی کرد. DNS برای حل و فصل نام دامنه در آدرس های IP استفاده می شود. با میزبانی سرورهای DNS خود ، mor دارید

نحوه نصب بستر سبد خرید LiteCart در اوبونتو 16.04

نحوه نصب بستر سبد خرید LiteCart در اوبونتو 16.04

LiteCart یک بستر سبد خرید آزاد و منبع باز است که به زبان های PHP ، jQuery و HTML 5 نوشته شده است. این نرم افزار ساده ، سبک و با کاربرد آسان است.

نحوه نصب Anchor CMS بر روی یک VPS Fedora 26 LAMP

نحوه نصب Anchor CMS بر روی یک VPS Fedora 26 LAMP

با استفاده از یک سیستم متفاوت؟ Anchor CMS یک سیستم مدیریت محتوا (CMS) بسیار ساده و بسیار سبک ، بسیار آزاد و آزاد است.

اشتراک NFS را در Debian تنظیم کنید

اشتراک NFS را در Debian تنظیم کنید

NFS یک سیستم فایل مبتنی بر شبکه است که به رایانه ها اجازه می دهد تا از طریق شبکه رایانه ای به فایلها دسترسی پیدا کنند. این راهنما توضیح می دهد که چگونه می توانید پوشه ها را روی NF قرار دهید

نحوه بروزرسانی CentOS 7 ، Ubuntu 16.04 و Debian 8

نحوه بروزرسانی CentOS 7 ، Ubuntu 16.04 و Debian 8

هنگام راه اندازی سرور جدید لینوکس ، به روزرسانی سیستم های هسته و سایر بسته ها تا آخرین نسخه پایدار یک روش توصیه شده است. در این مقاله

نحوه نصب Matomo Analytics در Fedora 28

نحوه نصب Matomo Analytics در Fedora 28

با استفاده از یک سیستم متفاوت؟ Matomo (سابقا پیویک) یک بستر تحلیلی منبع باز است ، یک جایگزین باز برای Google Analytics. منبع Matomo میزبان o

یک سرور TeamTalk را در لینوکس تنظیم کنید

یک سرور TeamTalk را در لینوکس تنظیم کنید

TeamTalk یک سیستم کنفرانس است که به کاربران امکان می دهد مکالمات صوتی / تصویری با کیفیت بالا ، چت متنی ، انتقال فایل ها و صفحه های به اشتراک بگذارند. من

با استفاده از کلید SSH خود برای ورود به کاربران غیر ریشه استفاده کنید

با استفاده از کلید SSH خود برای ورود به کاربران غیر ریشه استفاده کنید

Vultr یک ویژگی را فراهم می کند که به شما امکان می دهد با ایجاد یک نمونه جدید ، کلیدهای SSH را از قبل نصب کنید. این اجازه می دهد تا به کاربر root دسترسی داشته باشید ، با این حال ، th

نحوه نصب انجمن NodeBB در FreeBSD 12

نحوه نصب انجمن NodeBB در FreeBSD 12

با استفاده از یک سیستم متفاوت؟ NodeBB یک نرم افزار انجمن مبتنی بر Node.js است. از سوکت های وب برای تعامل فوری و اعلامیه های زمان واقعی استفاده می کند. NodeB

نصب و راه اندازی ZNC در اوبونتو

نصب و راه اندازی ZNC در اوبونتو

ZNC یک پیشرانه پیشرفته شبکه IRC است که تمام وقت بهم متصل می شود تا مشتری IRC بتواند بدون از دست دادن جلسه گپ قطع یا وصل شود.

نحوه نصب Ranger Terminal File Manager در لینوکس

نحوه نصب Ranger Terminal File Manager در لینوکس

رنجر یک مدیر فایل مبتنی بر خط فرمان است که دارای کلیدهای اتصال VI است. این برنامه یک رابط لعنتی مینیمالیستی و زیبا با نمای سلسله مراتب فهرست ارائه می دهد