طريقتان لإعداد DDNS على router من MikroTik
يوفر FastDDNS لكل hostname إعدادين جاهزين RouterOS. الطريقة 1 هي سطر واحد تلصقه في الطرفية: يحمّل سكربتًا مُعدًا لـ hostname الخاص بك، ثم ينشئ لك /system script سكربتًا و/system scheduler إدخالين. الطريقة 2 هي إدخال أمر التحديث نفسه يدويًا ضمن System > Scheduler. تستدعي الطريقتان رابط تحديث FastDDNS كل دقيقتين.
استخدم الطريقة 1 ما لم يكن لديك سبب لعدم استخدامها. استخدم الطريقة 2 إذا كنت تفضّل WinBox لوحة التحكم على الطرفية، أو إذا كان router يمنع التنزيل، أو إذا أردت تسمية scheduler بالاسم الذي تختاره.
| الطريقة 1 — السكربت التلقائي | الطريقة 2 — المجدول اليدوي | |
|---|---|---|
| مكان العمل | الطرفية (WinBox أو SSH) | System > Scheduler في WinBox / WebFig |
| ما تلصقه | سطر واحد | ثلاثة حقول بالإضافة إلى أمر واحد |
| اسم المجدول الذي ينشئه | FastDDNS.net (ثابت) | أي اسم تكتبه — وتقترح لوحة التحكم fastddns |
| فاصل التحديث | 120 ثانية | 00:02:00 |
| أول تحديث | يعمل مرة واحدة فورًا بعد التثبيت | يعمل بعد انتهاء الفاصل الزمني الأول |
| المهلة | تنتهي صلاحية رابط التحميل بعد ساعة من إنشائه في اللوحة | لا شيء |
قبل أن تبدأ
أربعة أمور، ويحدد اثنان منها ما إذا كان الوصول عن بُعد سيعمل أصلًا.
- اسم مضيف FastDDNS سريع. أنشئ واحدًا مجانًا على FastDDNS، ثم افتح ذلك hostname وانتقل إلى DDNS Configuration Parameters > MikroTik Routers.
- صلاحيات المسؤول للوصول إلى RouterOS عبر WinBox، WebFig، أو SSH.
- عنوان IP عام حقيقي على واجهة WAN. إذا وضعك مزود خدمة الإنترنت خلف Carrier-Grade NAT، فلن يتمكن DNS الديناميكي من مساعدتك — إذ سيشير hostname إلى عنوان لا يمكن لأي شخص خارج شبكة مزود الخدمة الوصول إليه. شغّل فاحص CGNAT في تطبيق FastDDNS على الهاتف المحمول قبل أن تقضي وقتًا على router.
- إعادة توجيه المنافذ لأي شيء تريد الوصول إليه. يحافظ DDNS فقط على توجيه الاسم إلى العنوان الصحيح. ما زلت بحاجة إلى قواعد الجدار الناري وNAT المطابقة على router، ويمكنك التحقق منها لاحقًا باستخدام فحص المنفذ.
لمعرفة ما يحتفظ به router فعليًا، اعرض العناوين وابحث عن الصف الذي تكون واجهته هي وصلة WAN — أي الوصلة التي تحمل المسار الافتراضي:
/ip address print
/ip route print where dst-address=0.0.0.0/0إذا كان عنوان WAN هذا يقع ضمن 10.0.0.0/8، 172.16.0.0/12، 192.168.0.0/16 أو 100.64.0.0/10، فهذا يعني أن router لا يملك عنوان IP عامًا وأن جهازًا آخر upstream ينفذ NAT. ويُعد النطاق 100.64.0.0/10 تحديدًا النطاق المحجوز لـ Carrier-Grade NAT.
الطريقة 1 — سكربت التثبيت التلقائي ذي السطر الواحد
الخطوة 1 — نسخ السطر من لوحة hostname
افتح اسم المضيف وانتقل إلى قسم DDNS Configuration Parameters في أسفل الصفحة. لكل عائلة أجهزة مدعومة لوحة خاصة بها هناك؛ واللوحة التي تريدها هي MikroTik Routers.

افتحها وانسخ المربع الموجود أسفل الطريقة 1. إنه سطر طويل واحد ينتهي بـ token مرتبط بحسابك:

:do { /tool fetch check-certificate=no url="https://fastddns.net/ar/member/download/YOUR-DOWNLOAD-TOKEN" dst-path=fastddns.txt; import fastddns.txt} on-error={ [:terminal style error]; :put "ERROR"; }انسخ السطر الفعلي من اللوحة بدلًا من إعادة كتابته؛ فهذا token هو الذي يعرّف hostname الخاص بك.
الخطوة 2 — الصقه في الطرفية
في WinBox افتح New Terminal، أو اتصل عبر SSH، ثم الصق السطر واضغط Enter. /tool fetch ينزّل السكربت المخصّص إلى قائمة Files في الراوتر كـ fastddns.txt، ثم import ينفّذه.
بالنسبة إلى check-certificate=no: يخبر هذا الخيار fetch بتجاوز التحقق من سلسلة الثقة لشهادة TLS. يستخدم RouterOS الإعداد no افتراضيًا، وتوضحه اللوحة حتى يظل التنزيل يعمل على router ذي مخزن شهادات فارغ أو ساعة لم تتم مزامنتها بعد. إذا كنت تفضّل التحقق من الشهادة، فغيّره إلى check-certificate=yes — ولن ينجح ذلك إلا بعد استيراد مخزن CA إلى router وضبط ساعته بشكل صحيح. لاحظ ما يشمله هذا التبديل وما لا يشمله: فهو ينطبق على هذا التنزيل لمرة واحدة فقط. أما السكربت الذي يثبّته router بعد ذلك، فيتضمن إعداد check-certificate=no الخاص به لكل تحديث دوري، وكذلك الأمر في الطريقة 2.
الخطوة 3 — ما الذي ينشئه السكربت
الملف المستورد ليس صندوقًا أسود. فهو يطبع hostname واسم المستخدم والمفتاح الخاص بك، ثم ينفّذ أربعة أشياء:
- يزيل أي سكربت وجدول زمني موجودين باسم FastDDNS.net، لذا فإن إعادة تشغيله لا تترك نسخًا مكررة؛
- يضيف /system script باسم FastDDNS.net يتضمن أمر التحديث؛
- يضيف /system scheduler باسم FastDDNS.net مع
interval=120sوstart-time=startup؛ - يشغّل السكربت مرة واحدة فورًا، بدلًا من الانتظار حتى موعد أول تشغيل مجدول.
يظهر التثبيت المكتمل في الطرفية هكذا:
ADD new Script: Complete.
ADD new Scheduler: Complete.
Complete add FastDDNS.اقرأ هذه السطور الثلاثة كما هي: السكربت والمجدول موجودان الآن. لكنها لا تثبت أن hostname تم تحديثه — يطبع المثبّت Complete add FastDDNS. حتى لو رُفض ذلك التشغيل الأول. أكّد التحديث نفسه باستخدام الفحوصات أدناه.
الخطوة 4 — تنتهي صلاحية رابط التحميل بعد ساعة واحدة
يُنشأ token الموجود في ذلك السطر عند عرض صفحة اللوحة، ويتوقف عن العمل بعد 3600 ثانية. الصق نسخة قديمة، وسيطبع router ERROR، لأن الخادم أرسل 410 # Download token expired.بدلًا من سكربت. والحل ببساطة هو إعادة تحميل صفحة hostname ونسخ السطر مرة أخرى.
التسجيل التالي أقدم. أُعيد تصميم اللوحة منذ ذلك الحين، لذلك لن تتطابق مع لقطات الشاشة أعلاه — لكن الخطوات والأمر نفسه لم يتغيرا.
الطريقة 2 — إعداد المجدول يدويًا
تحصل بهذه الطريقة على النتيجة نفسها كما في الطريقة 1، لكنك تكتب الإعداد بنفسك ولا يُنزَّل أي شيء إلى router.
الخطوة 1 — إنشاء إدخال المجدول
في WinBox انتقل إلى System > Scheduler وأضف إدخالًا جديدًا بهذه القيم الثلاث، التي تعرضها اللوحة بجانب السكربت، مع زر نسخ لكل قيمة:

| الحقل | القيمة | وظيفته |
|---|---|---|
| Name | fastddns |
يمكنك استخدام أي اسم؛ وهذا الاسم يجعل الإدخال واضحًا في القائمة |
| Start Time | startup |
يربط الجدولة بوقت الإقلاع بدلًا من وقت محدد على الساعة — راجع الملاحظة أسفل هذا الجدول |
| Interval | 00:02:00 |
يتكرر كل دقيقتين |
هناك تفصيل مهم في RouterOS: start-time=startup يتصرف كما لو أن وقت البدء بعد ثلاث ثوانٍ من ظهور وحدة التحكم، لكن توثّق MikroTik أن الإدخال الذي يحتوي على فترة زمنية غير صفرية لا يعمل عند بدء التشغيل. لذلك يحدث التنفيذ الأول بعد فترة زمنية واحدة من الإقلاع، وليس عند الإقلاع. بعد إعادة التشغيل، يُحدَّث hostname بعد نحو دقيقتين، لا فورًا.
الخطوة 2 — الصق أمر التحديث في On Event
انسخ مربع On Event من اللوحة. والصيغة هي:
:do {/tool fetch check-certificate=no url="https://client.fastddns.net/?hostname=myhome.fastddns.net&user_name=YOUR-USERNAME&user_pass=YOUR-UPDATE-PASSWORD" dst-path=fastddns.ip; :local statusip [:pick [/file get fastddns.ip contents] 0 3]; if ($statusip = "noc" || $statusip = "goo") do={[/terminal style ambiguous];:put "Updated IP address";}; } on-error={[:terminal style error];:put "Can not connect to server FastDDNS.net.";:error "exit";};لا تستبدل أي شيء يدويًا — فاللوحة ملأت بالفعل hostname واسم المستخدم وكلمة مرور التحديث الخاصة بحسابك. العناصر النائبة الثلاثة أعلاه تمثل فقط قيمًا خاصة بحسابك.
الخطوة 3 — كيف يعرف السكربت أن التحديث نجح
يحفظ الأمر fetch استجابة الخادم في fastddns.ip، ويقرأ :pick … 0 3 أول ثلاثة أحرف منها. يرد FastDDNS بمصطلحات DynDNS القياسية، لذا تكفي هذه الأحرف الثلاثة لتمييز النتائج المختلفة:
| الرد | أول 3 أحرف | المعنى |
|---|---|---|
good |
goo |
تم تحديث hostname إلى عنوان جديد |
nochg |
noc |
لم يتغير العنوان — لا حاجة إلى إجراء |
badauth |
bad |
اسم المستخدم أو كلمة مرور التحديث غير صحيحة |
يختبر السكربت فقط goo و noc، ويطبع Updated IP address عند تحقق أيٍّ منهما. أما أي شيء آخر — بما في ذلك badauth — فيُتجاهل بصمت: لقد نجح fetch، لذلك لا يتم تشغيل on-error ولا تتم طباعة أي شيء. الصمت لا يعني النجاح. اقرأ fastddns.ip عند الشك. البروتوكول نفسه موثق على صفحة واجهة برمجة تطبيقات FastDDNS إذا كنت تفضل كتابة سكربت خاص بك.
الطريقة اليدوية في الفيديو — وهو أيضًا تسجيل قديم للوحة، مع القيم الأربع نفسها.
تحقق من أن اسم المضيف يتم تحديثه فعليًا
ثلاثة فحوصات على router، وفحص واحد خارجه. على router:
/system scheduler print
/file print
:put [/file get fastddns.ip contents]تحتوي قائمة الجدولة على عمود run-count يزداد كل دقيقتين. هذا يخبرك بأن الإدخال يعمل — لكنه لايفعل
أخبرك بأن التحديث نجح، لأن scheduler الذي يشغّل أمرًا فاشلًا يواصل زيادة العدد. الدليل هو الملف: fastddns.ip يجب أن يكون موجودًا، ويجب أن يبدأ محتواه بـيبدأ بـ
good أو nochg — قد يضيف الخادم العنوان الذي سجّله.
خارج الراوتر، نفّذ استعلامًا عن hostname من أي جهاز، وقارنه بعنوان IP العام الحالي لديك:
nslookup myhome.fastddns.netيعرض قسم hostname لديك أيضًا طابعًا زمنيًا باسم آخر تحديث، ويتغير من Not yet updatedفي المرة الأولى التي يتصل فيها الراوتر بالخدمة. يطبّق FastDDNS العنوان الجديد خلال أقل من 60 ثانية، لكن ذاكرة التخزين المؤقت المحلية لـ DNS قد تحتفظ بالعنوان القديم لفترة أطول قليلًا.
استكشاف أخطاء DDNS في MikroTik
| ما تراه | السبب | ما يجب فعله |
|---|---|---|
ERRORمباشرة بعد لصق سطر الطريقة 1 |
انتهت صلاحية token التنزيل، أو تعذّر على الراوتر الوصول إلى الموقع | أعد تحميل صفحة hostname، وانسخ السطر مرة أخرى، ثم الصقه خلال ساعة |
| Can not connect to server FastDDNS.net. | يتعذّر على الراوتر حل عنوان URL للتحديث أو الوصول إليه | شخّص المشكلة قبل تغيير أي شيء: /ip dns print للموفّر المُكوَّن، ثم :put [:resolve client.fastddns.net]لاختبار حل الأسماء من الراوتر نفسه. أضف DNS resolvers عامة فقط إذا كانت القائمة فارغة — فالكتابة فوق DNS resolver داخلي يعمل ستعطّل حل الأسماء محليًا |
fastddns.ipيحتوي على badauth |
اسم مستخدم أو كلمة مرور تحديث غير صحيحة في الأمر | انسخ مربع On Event من اللوحة مرة أخرى؛ وإذا كنت قد انتقلت من مزوّد آخر، فراجع الدليل حول استبدال عنوان خادم No-IP أو DynDNS |
| اسم المضيف يحل، لكن لا شيء يستجيب على المنفذ الخاص بك | يعمل DDNS؛ لكن المسار إلى شبكتك لا يعمل | أضف قواعد NAT والجدار الناري، ثم اختبر port من الخارج باستخدام فحص المنفذ |
| يُحلّ hostname إلى عنوان ليس عنوان IP العام لديك | يوجد الراوتر خلف طبقة NAT أخرى، غالبًا CGNAT | قارن /ip address printبما يعرضه فحص عنوان IP العام؛ إذا اختلفا، فاطلب من مزوّد خدمة الإنترنت عنوان IP عامًا |
| كل شيء كان يعمل، ثم توقف بعد عدة أشهر | يُجدَّد hostname المجاني مرة واحدة سنويًا، بينما يدوم hostname المؤقت 30 يومًا | جدّده من حسابك، أو انتقل إلى خطة لا تنتهي صلاحية hostname فيها |
احتفظ بسكربت التحديث سريًا
تخزّن كلتا الطريقتين hostname واسم المستخدم وكلمة مرور التحديث بنص واضح على router — في حقل On Event للجدول الزمني، أو داخل /system script. ويمكن لأي شخص يقرأ الإعدادات قراءة هذه القيم، لذا تعامل مع ملف تصدير RouterOS الكامل كما تتعامل مع ملف كلمات المرور. إذا سبق أن لصقته في منشور بمنتدى أو تذكرة دعم، فغيّر كلمة مرور التحديث في حسابك وأعد تثبيت السكربت.
السكربت المُنزّل fastddns.txtضروري فقط أثناء التثبيت. يمكنك حذفه بعد ذلك من Files دون التأثير على الجدول الزمني.
الأسئلة الشائعة
هل أحتاج إلى فتح port لتحديث DDNS نفسه؟
لا. يفتح router اتصال HTTPS صادرًا إلى FastDDNS، لذلك لا تحتاج إلى قاعدة واردة للتحديث. لكنك تحتاج إلى port forwarding للخدمات التي تريد الوصول إليها عبر hostname، مثل 554 لـ RTSP أو منفذ الويب الخاص بالكاميرا.
كم مرة يرسل MikroTik التحديث، وما سرعة تغيّر hostname؟
يعمل scheduler كل دقيقتين في كلتا الطريقتين. عند تغيّر العنوان فعليًا، يطبّقه FastDDNS خلال أقل من 60 ثانية، لذا فإن أسوأ حالة بعد تغيّر IP هي نحو دقيقتين من انتظار scheduler، إضافةً إلى وقت الانتشار.
هل سيعمل هذا إذا كان مزود خدمة الإنترنت لدي يستخدم CGNAT؟
لا. عند وجودك خلف NAT على مستوى مزود الخدمة، لا يمتلك router لديك عنوان IP عامًا خاصًا به، لذلك لا يوجد عنوان يمكن لـ hostname أن يشير إليه بشكل مفيد، كما يحظر مزود خدمة الإنترنت الاتصالات الواردة. يحل DNS الديناميكي مشكلة تغيّر العناوين، لا مشكلة غيابها. اطلب من مزود خدمة الإنترنت عنوان IP عامًا، أو استخدم خدمة تنشئ نفقًا للاتصالات الصادرة.
هل تنتهي صلاحية اسم المضيف؟
يُجدَّد hostname الدائم المجاني مرة واحدة سنويًا من حسابك، بينما تدوم hostnames المؤقتة 30 يومًا. ولا تنتهي صلاحية hostnames ضمن الخطة المدفوعة؛ التفاصيل موجودة في صفحة الأسعار.
هل تستخدم router مختلفًا؟ يعمل رابط التحديث نفسه في أي مكان يمكنه إجراء طلب HTTPS مجدول، بما في ذلك إعداد DrayTek المغطى هنا.





