الرئيسية

السبت، 29 أبريل 2017

عمل نسخة ليوزرات الهوتسبوت مايكروتك بالرصيد المتبقي | ماكس أبجريد

بسم الله الرحمن الرحيم


نظراً لطلب الكثير لرول عمل نسخة احتياطية ليوزرات الهوتسبوت بالوقت المتبقي او رصيد التحميل المتبقي
وذلك لنقل النسخة مثلا إلى روتر آخر أو ليقوم بعمل فورمات للروتر ومن ثم البرمجة من جديد وإعادة اليوزرات



نعلم جميعاً ان هناك طريقة لإستيراد يوزرات الهوتسبوت او اي اعدادات في الروتر عن طريق الأمر
export
كالتالي :

/ip hotspot user export file=myhotspotusers;

 في هذا الامر سيقوم بعمل نسخة لليوزرات الى ملف سكريبت بالإسم  myhotspotusers  ولكن عند استيراد هذه النسخة ستكون اليوزرات بوقت ورصيد جديد حيث ستعود اليوزرات كلها من جديد دون أي استخدام

فما هي الطريقة لكي نقوم بإستيراد اليوزرات بوقت متبقي ؟؟
هذا ما سنقدمه لكم الان عبر ثلاث خطوات.

الخطوة الأولى :

اولاً سنقوم بحذف اليوزرات المنتهية الاستخدام .. حسب الوقت وحسب رصيد التحميل 
وذلك لأننا لا نريد استرجاع اليوزرات المنتهية ولكن هذه الخطوة (اختيارية)
وذلك بإستخدام الرول التالي :

المنتهي حسب الوقت المحدد

/ip hotspot user remove [find limit-uptime=$uptime];

المنتهي حسب رصيد التحميل المحدد في قائمة limit-bytes-total

/ip hotspot user remove [find limit-bytes-total=($"bytes-in" + $"bytes-out")];

ملاحظة الرولات السابقة لن تجدوها في إي مكان وهي عمل خاص من ماكس أبجريد
فجميع المواقع تستخدم foreach للحذف وذلك عن طريق رول طويل ولكن الرولات السابقة مبتكرة وسهله جداً وبطريقة مختلفة


الخطوة الثانية :

بعد حذف اليوزرات المنتهية سنقوم بعمل رول يقوم بالتعديل في الوقت المحدد وايضا يقوم بالتعديل في التحميل المحدد
فمثلاً عندما نقوم بعمل يوزر بوقت محدد 3 ساعات و 400 ميجا فإننا سنقوم بوضع ذلك في limit-uptime
والرصيد في limit-bytes-total
كالتالي :


فإذا افترضنا ان هذا المستخدم قد قام بإستخدام من الوقت ساعة وقام بتحميل 150 ميجا

فإننا نريد من الرول أن يقوم بالتعديل على هذا اليوزر ليكون الوقت المحدد له هو ساعتين ومن التحميل 250 ميجا
ومن ثم نقوم بإستيراد نسخة لليوزرات الى ملف سكريبت كما في أول رول قمنا بوضعه أعلاه

والان مع الرول :

اذا كان التحديد فقط للوقت ولست محدد التحميل ستستخدم الرول التالي :


:foreach i in=[/ip hotspot user find where uptime>0s and limit-uptime>0s] do={
:local upt [/ip hotspot user get $i uptime];
:local limitupt [/ip hotspot user get $i limit-uptime];
:local newlimitupt ($limitupt - $upt);
:if ( $upt != $limitupt ) do={
/ip hotspot user set $i limit-uptime=$newlimitupt;
else={ /ip hotspot user set $i disabled=yes comment="end uptime"; }
}

اذا كنت محدد التحميل فقط ولست محدد الوقت ستستخدم الرول التالي :



:foreach i in=[/ip hotspot user find where bytes-out>0 and limit-bytes-total>0] do={
:local upload [/ip hotspot user get $i bytes-in];
:local download [/ip hotspot user get $i bytes-out];
:local limitdown [/ip hotspot user get $i limit-bytes-total];
:local updown ($upload + $download);
:local newlimitdown ($limitdown - $updown);
:if ( $updown != $limitdown ) do={
/ip hotspot user set $i limit-bytes-total=$newlimitdown;
else={ /ip hotspot user set $i disabled=yes comment="end download"; }
}


اذا كنت محدد الوقت والتحميل معاً ستستخدم الرول التالي :



:foreach i in=[/ip hotspot user find where uptime>0s and limit-uptime>0s and limit-bytes-total>0] do={
:local upt [/ip hotspot user get $i uptime];
:local limitupt [/ip hotspot user get $i limit-uptime];
:local newlimitupt ($limitupt - $upt);
:local upload [/ip hotspot user get $i bytes-in];
:local download [/ip hotspot user get $i bytes-out];
:local limitdown [/ip hotspot user get $i limit-bytes-total];
:local updown ($upload + $download);
:local newlimitdown ($limitdown - $updown);
:if ( $updown != $limitdown && $upt != $limitupt ) do={
/ip hotspot user set $i limit-uptime=$newlimitupt limit-bytes-total=$newlimitdown;
else={ /ip hotspot user set $i disabled=yes comment="end uptime and download"; }
}


الخطوة الثالثة والأخيرة :

سنقوم بعمل ريست لعداد الاستخدام لليوزرات ثم عمل النسخة الاحتياطية الجاهزة بالوقت والتحميل المتبقي لليوزرات في الهوتسبوت

طريقة عمل ريست لعداد الاستخدام



رول عمل نسخة 

/ip hotspot user export file=myhotspotusers;

كما سنجد ملف سكريبت نصي بإسم myhotspotusers.rsc في قائمة file نقوم بنسخه
ثم يمكنك استرجاع النسخة إلى روتر آخر مثلاً او بعد عمل فورمات لنفس الروتر
وذلك بنسخ الملف الى file ثم استخدم الامر التالي في newterminal

import file=myhotspotusers.rsc


تفادياً لأي مشاكل لسبب خطأ اثناء نسخ الرولات أو لأي خطأ قم بعمل نسخة احتياطية كاملة للاعدادات
وذلك من قائمة file ثم قم بالنقر على backup

-----------------------------------------

نرجوا ذكر المصدر عند النقل

----------------------------

تحياتنا لكم ،،،،

ماكس أبجريد لخدمات الشبكات والبرمجيات
اليمن - صنعاء - شارع عشرين تقاطع الدائري امام البطل للمفروشات
+967 1 214433
+967 771204505
+967 736024667

-------------------------------------------

export mikrotik hotspot users with session time left and total bytes limit 
بقلم الكاتب :
مهندس / أحمد محمد العليمي
هندسة وبرمجة شبكات | اليمن - صنعاء | ت : 771204505 - 736024667

هناك 22 تعليقًا:

  1. مشكووووووووووور يابش مهندس

    ردحذف
  2. يامهندس ياريت لو تحل لنا مشكله الخطوط الزرقاء الي تطلع في ال,r مكتوب radius accounting not send not respone على بعض يوزرات اليوزر منجر

    ردحذف
  3. اجمل خطوة عندما تقوم بعمل reset للعدادات بعد ضبط الوقت المتبقي

    ردحذف
  4. انتم الافضل ماكس ابجريد

    ردحذف
  5. فيه مشكلة السكريبت

    ردحذف
    الردود
    1. كان في وتم التعديل عليه .. السكريبت جاهز

      حذف
  6. بارك الله فك 100/100 انا جربت

    ردحذف
  7. السلام عليكم اخي احمد ،، انا اشوف في حالة الرغبة في عمل فورمات للنظام او نقل اليوزرات لروتر آخر ، الأسهل انك تسوي باك أب للنظام كامل عن طريق
    /sys backup save
    واسترجاعه في الروتر الثاني وبيرجع النظام مع اكروت مع عدد الساعات المستخدمة مع كمية التنزيل ،،
    وكمان انصح انه اي صاحب شبكة يسوي له اسكربت يكون يفعله باك أب يومياً بتاريخ اليوم في منتصف الليل ويحفظه في فلاش متصل بالروتر بشكل تلقائي ، وفي حالة حدوث اي مشكلة بالنظام يسترجع الباك أب بدون خسائر كبيرة ،،

    تحياتي لك مرة اخرى ،

    ردحذف
    الردود
    1. وعليكم السلام اخي .. نقل الباك اب من روتر إلى روتر اخر قد يسبب مشاكل وذلك لعدم تطابق المواصفات من روتر إلى روتر .. ولكن لما تنقل رول او ما يسمى بالتكست باك اب بيكون افضل بكثير

      اما بالنسبة لعمل باك اب كل يوم هذا اكيد افضل له والباك اب عشان ترجعه لنفس الروتر وما بيكون في اي مشكلة .. المشاكل فقط لما تنقل الباك اب من روتر الى روتر

      حذف
  8. يا بش مهندس
    انا استخدمت رول محدد الوقت والتحميل معاً والان توقف حساب العد لليوزر المشتركين ولا يحسب الوقت او كمية التحميل
    ما حل هذه المشكلة

    ردحذف
  9. السلام عليكم ممكن حل مشكلة عدم ظهور عداد الرصيد المتبقي في صفحة الهوت سبوت بعد تسجيل الدخول

    ردحذف
  10. الوقت مضبوط بس الجيجات يضهر unlimitd

    ردحذف
  11. ما ظبطت معي شو السبب

    ردحذف
  12. عالم كله تجارب قال مبتكر

    يعني الشركه المصنعه مش عارفه الابتكار

    ردحذف
  13. السلام عليكم باش مهندس عندي مشكلة وهي غياب العدد في خانة المتواجدين حاليا في اليوزر مانجر مع العلم انه كان موجود

    ردحذف
  14. وأيضا عندما أريد حذف بعض الكروت المنتهية لا يستجيب الأمر ولا يتم الحذف في اليوزر مانجر أقصد

    ردحذف
  15. نريد يالي مش فاضين تردو علينا كيف انقل النسخ الاحتاطي لليوزرمنجر SD

    ردحذف
  16. اذا ممكن طريقة عمل باك يومي وارساله عن طريق لايميل للجوال

    ردحذف
  17. يعني تعمل ريست قبل ماتعمل نسخه احتياطية او كيف

    ردحذف
  18. شكرا لك يا فخر العرب مشكور جزاك الله خيرا وبارك فيك يا أخي

    ردحذف