X

جعل السرعة تشاركية للمشتركين الذين يستخدمون خاصية Shared-user

Collapse
  • تصفية
  • الوقت
  • عرض
مسح الكل
مشاركات جديدة
  • مشرف سيرفرات المايكروتيك
    • Oct 2018
    • 324





    جعل السرعة تشاركية للمشتركين الذين يستخدمون خاصية Shared-user



















    اي نفس اليوزر نيم بدون ان نثبت لهم

    اي بي وكيوز (تطوير للفكرة السابقة ب
    دل ان تتقسم السرعة على العملاء تصبح تشاركية بينهم)

    1- نفعل خاصية ال shared-user في البروفايل المطلوب

    وليكن مثلا العدد 3 والسرعة 512 كيلو للابلود والداون لود 1 ميكا


    2- عندما يفتح اكثر من عميل بيوزر له هذا البروفايل كل يوزر ياخذ السرعة كاملة

    3- الان نطبق السكربت على هذا البروفايل , كالاتي:

    نضع هذا السكرتب في خانة script on-login


    {

    :delay 1

    # ادخل سرعة الرفع والتحميل نهاية السطر ادناه

    :local up 512K

    :local down 1M

    :local s 1

    :local t

    /queue simple remove [find ((dynamic=yes)&&(limit-at="0/0"))]

    /queue simple remove [find ((dynamic=yes)&&(target=("$address"."/32")))]

    :foreach i in=[/ip hotspot active find user="$username"] do={

    :local a [/ip hotspot active get value-name=address $i]

    :set a ("$a"."/32")

    :if ($s=1) do={

    :set t $a

    /queue simple remove [find name="$username"]

    /queue simple add target=$a limit-at="$up/$down" max-limit="$up/$down" name="$username"} else={

    :set t ("$t".","."$a")

    queue simple set target=$t [find name="$username"]

    }

    :set s ($s+1)

    }} وهذا السكربت في خانة script on-logout

    {

    :delay 1

    # ادخل سرعة الرفع والتحميل نهاية السطر ادناه

    :local up 512K

    :local down 1M

    :local s 1

    :local t

    /queue simple remove [find ((dynamic=yes)&&(limit-at="0/0"))]

    :foreach i in=[/ip hotspot active find user="$username"] do={

    :local a [/ip hotspot active get value-name=address $i]

    :set a ("$a"."/32")

    :if ($s=1) do={

    :set t $a

    /queue simple remove [find name="$username"]

    /queue simple add target=$a limit-at="$up/$down" max-limit="$up/$down" name="$username"} else={

    :set t ("$t".","."$a")

    queue simple set target=$t [find name="$username"]

    }

    :set s ($s+1)

    }}

    :local l [:len [/ip hotspot active find user="$username"]]

    :if ($l=0) do={

    /queue simple remove [find name="$username"]

    }



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

    4- نجرب السكربت

    ونلاحظ كلما دخل عميل يضاف الاي بي الخاص بيه الى الكيوز وبالتالي تصبح السرعة تشاركية بين العملاء بدل ان كل عميل

    ياخذ السرعة كاملة

    بالامكان استخدم هذا الملف ليضاف البروفايل مباشرة لديك عن طريق نسخة ولصقه في الـNew terminal





    كود PHP:








    /ip hotspot user profile add name=SAW on-login="{\r\
    \n:delay 1\r\
    \n# \C7\CF\CE\E1 \D3\D1\DA\C9 \C7\E1\D1\DD\DA \E6\C7\E1\CA\CD\E3\ED\E1 \E4\
    \E5\C7\ED\C9 \C7\E1\D3\D8\D1 \C7\CF\E4\C7\E5\r\
    \n:local up 512K\r\
    \n:local down 1M\r\
    \n:local s 1\r\
    \n:local t\r\
    \n/queue simple remove [find ((dynamic=yes)&&(limit-at="0/0"))]\r\
    \n/queue simple remove [find ((dynamic=yes)&&(target=("\$address"."/32\
    ")))]\r\
    \n:foreach i in=[/ip hotspot active find user="\$username"] do={\r\
    \n:local a [/ip hotspot active get value-name=address \$i]\r\
    \n:set a ("\$a"."/32")\r\
    \n:if (\$s=1) do={\r\
    \n:set t \$a\r\
    \n/queue simple remove [find name="\$username"]\r\
    \n/queue simple add target=\$a limit-at="\$up/\$down" max-limit="\$up/\
    \$down" name="\$username"} else={\r\
    \n:set t ("\$t".","."\$a")\r\
    \nqueue simple set target=\$t [find name="\$username"]\r\
    \n}\r\
    \n:set s (\$s+1)\r\
    \n}}\r\
    \n"
    on-logout="{\r\
    \n:delay 1\r\
    \n# \C7\CF\CE\E1 \D3\D1\DA\C9 \C7\E1\D1\DD\DA \E6\C7\E1\CA\CD\E3\ED\E1 \E4\
    \E5\C7\ED\C9 \C7\E1\D3\D8\D1 \C7\CF\E4\C7\E5\r\
    \n:local up 512K\r\
    \n:local down 1M\r\
    \n:local s 1\r\
    \n:local t\r\
    \n/queue simple remove [find ((dynamic=yes)&&(limit-at="0/0"))]\r\
    \n:foreach i in=[/ip hotspot active find user="\$username"] do={\r\
    \n:local a [/ip hotspot active get value-name=address \$i]\r\
    \n:set a ("\$a"."/32")\r\
    \n:if (\$s=1) do={\r\
    \n:set t \$a\r\
    \n/queue simple remove [find name="\$username"]\r\
    \n/queue simple add target=\$a limit-at="\$up/\$down" max-limit="\$up/\
    \$down" name="\$username"} else={\r\
    \n:set t ("\$t".","."\$a")\r\
    \nqueue simple set target=\$t [find name="\$username"]\r\
    \n}\r\
    \n:set s (\$s+1)\r\
    \n}}\r\
    \n:local l [:len [/ip hotspot active find user="\$username"]]\r\
    \n:if (\$l=0) do={\r\
    \n/queue simple remove [find name="\$username"]\r\
    \n}\r\
    \n\r\
    \n\r\
    \n"
    rate-limit=512K/1M shared-users=3 transparent-proxy=yes

    Shared user Speed
    .txt











    منقول للافاده






    Link

Working...
X