
dnscontrol v5.0.0-rc9
البنية التحتية كرمز لـ DNS!
DNSControl
DNSControl هي البنية التحتية ككود (Infrastructure as Code) لنظام DNS. تتضمن لغة تهيئة كاملة الميزات (متوافقة مع Javascript)، بالإضافة إلى "إضافات" (plug-ins) تتواصل مع واجهات برمجة تطبيقات مزوّدي DNS مثل AWS Route 53 وCloudflare وGandi. يمكنها إرسال نفس سجلات DNS إلى عدة مزوّدين. تعمل في أي بيئة يعمل فيها Go (Linux وmacOS وWindows). نموذج المزوّد قابل للتوسيع، لذا يمكن إضافة المزيد من المزوّدين.
مثال
dnsconfig.js:
// define our registrar and providers
var REG_NAMECOM = NewRegistrar("ndc_main");
var DSP_ROUTE53 = NewDnsProvider("r53_main");
D("example.com", REG_NAMECOM, DnsProvider(DSP_ROUTE53),
A("@", "1.2.3.4"),
CNAME("www","@"),
MX("@",5,"mail.myserver.com."),
A("test", "5.6.7.8")
)
سيؤدي تشغيل dnscontrol preview إلى التواصل مع المزوّدين (هنا name.com كمسجّل وroute 53 كمضيف DNS)، وتحديد التغييرات التي يجب إجراؤها.
سيؤدي تشغيل dnscontrol push إلى إجراء تلك التغييرات مع المزوّد وسيتم تحديث سجلات DNS الخاصة بي بشكل صحيح.
أسهل طريقة لتشغيل DNSControl هي استخدام حاوية Docker:
docker run --rm -it -v "$(pwd):/dns" ghcr.io/dnscontrol/dnscontrol preview
البدء
أسرع طريقة للبدء هي dnscontrol init. يسألك المعالج التفاعلي عن مزوّد DNS والمسجّل لديك، ويتحقق من بيانات اعتمادك ويكتب ملفي creds.json وdnsconfig.js جاهزين للعمل، بما في ذلك السجلات الموجودة بالفعل في نطاقاتك.
راجع صفحة البدء على موقع التوثيق للحصول على الشرح الكامل.
هل تريد تحكماً كاملاً بأسلوب "GitOps" على بيانات DNS الخاصة بك؟ استنسخ مستودع البداية dns-config للبدء!
المزوّدون المدعومون
يدعم DNSControl 68 مزوّد DNS ومسجّلاً:
¹يدعم أيضاً وظائف المسجّل ²مسجّل فقط