<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
	<channel>
		<title>Mikrotik.moscow [тема: PPPoE user script (по типу F.A.P) Fair Access Policy]</title>
		<link>http://mikrotik.moscow</link>
		<description>Новое в теме PPPoE user script (по типу F.A.P) Fair Access Policy форума RouterOS на сайте Mikrotik.moscow [mikrotik.moscow]</description>
		<language>ru</language>
		<docs>http://backend.userland.com/rss2</docs>
		<pubDate>Thu, 20 Aug 2026 00:57:57 -0400</pubDate>
		<item>
			<title>PPPoE user script (по типу F.A.P) Fair Access Policy</title>
			<description><![CDATA[<b><a href="http://mikrotik.moscow/forum/forum57/73481-pppoe-user-script-_po-tipu-f.a.p_-fair-access-policy/message296574">PPPoE user script (по типу F.A.P) Fair Access Policy</a></b> <i>RouterOS</i> в форуме <a href="http://mikrotik.moscow/forum/forum57/">RouterOS</a>. <br />
			Где мне нужно вводить скрипты? В MT или в моем Daloradius? Кстати, я использую dalo radius. <br />
			<i>21.05.2013 08:53:00, ener.</i>]]></description>
			<link>http://mikrotik.moscow/forum/forum57/73481-pppoe-user-script-_po-tipu-f.a.p_-fair-access-policy/message296574</link>
			<guid>http://mikrotik.moscow/forum/forum57/73481-pppoe-user-script-_po-tipu-f.a.p_-fair-access-policy/message296574</guid>
			<pubDate>Tue, 21 May 2013 08:53:00 -0400</pubDate>
			<category>RouterOS</category>
		</item>
		<item>
			<title>PPPoE user script (по типу F.A.P) Fair Access Policy</title>
			<description><![CDATA[<b><a href="http://mikrotik.moscow/forum/forum57/73481-pppoe-user-script-_po-tipu-f.a.p_-fair-access-policy/message296573">PPPoE user script (по типу F.A.P) Fair Access Policy</a></b> <i>RouterOS</i> в форуме <a href="http://mikrotik.moscow/forum/forum57/">RouterOS</a>. <br />
			Вот что я сделал, возможно, это можно было бы лучше спроектировать. Я настроил запланированный скрипт под названием "special_mode_control", чтобы он запускался каждую минуту, и вот код:<br />:set sTime [:pic [/system clock get time] 0 2]<br />:if (($sTime &gt;= “22” && $sTime &lt;= “23”) || ($sTime &gt;= “00” && $sTime &lt; “06”)) do={<br />:if ([/system scheduler get continous_special disabled]) do={<br />:log info “STARTING SPECIAL MODE”<br />/system scheduler set continous_special disabled=no<br />}<br />}<br />:if ($sTime &gt;= “06” && $sTime &lt;= “06”) do={<br />:if ([/system scheduler get continous_special disabled] = false) do={<br />:log info “STARTING NORMAL MODE”<br />/system scheduler set continous_special disabled=yes<br />/system script run do_normal<br />}<br />}<br />Затем, с 10 вечера и до 06 утра, он включает другой запланированный скрипт каждую минуту. Вот код:<br />:set mCnt 0<br />:foreach i in=[/queue simple find] do= {<br />:if ([/queue simple get $i max-limit] = “67000/67000”) do={<br />/queue simple set $i max-limit=“127000/127000” limit-at=“127000/127000” burst-limit=512000/512000 burst-threshold=256000/256000 burst-time=8s/8s<br />:set mCnt ($mCnt + 1)<br />}<br />:if ([/queue simple get $i max-limit] = “129000/129000”) do={<br />/queue simple set $i max-limit=“255000/255000” limit-at=“255000/255000” burst-limit=1024000/1024000 burst-threshold=512000/512000 burst-time=8s/8s<br />:set mCnt ($mCnt + 1)<br />}<br />}<br />:if ($mCnt &gt; 0) do={<br />:log info (“do_special: " . $mCnt . " clients added to the special mode”)<br />}<br />Наконец, скрипт "special_mode_control" отключает запланированный скрипт "continous_special" в 6 утра и запускает скрипт "do_normal", возвращая всех клиентов из специального режима в нормальный до 10 вечера. Вот код для скрипта "do_normal":<br />:set mCnt 0<br />:foreach i in=[/queue simple find] do= {<br />:if ([/queue simple get $i max-limit] = “127000/127000”) do={<br />/queue simple set $i max-limit=“67000/67000” limit-at=“67000/67000” burst-limit=250000/250000 burst-threshold=128000/128000 burst-time=8s/8s<br />:set mCnt ($mCnt + 1)<br />}<br />:if ([/queue simple get $i max-limit] = “255000/255000”) do={<br />/queue simple set $i max-limit=“129000/129000” limit-at=“129000/129000” burst-limit=512000/512000 burst-threshold=256000/256000 burst-time=8s/8s<br />:set mCnt ($mCnt + 1)<br />}<br />}<br />:if ($mCnt &gt; 0) do={<br />:log info (“do_normal: " . $mCnt . " clients back to normal mode”)<br />}<br />Пока что, все работает как надо. Спасибо. <br />
			<i>30.10.2006 20:27:00, Ozelo.</i>]]></description>
			<link>http://mikrotik.moscow/forum/forum57/73481-pppoe-user-script-_po-tipu-f.a.p_-fair-access-policy/message296573</link>
			<guid>http://mikrotik.moscow/forum/forum57/73481-pppoe-user-script-_po-tipu-f.a.p_-fair-access-policy/message296573</guid>
			<pubDate>Mon, 30 Oct 2006 20:27:00 -0500</pubDate>
			<category>RouterOS</category>
		</item>
		<item>
			<title>PPPoE user script (по типу F.A.P) Fair Access Policy</title>
			<description><![CDATA[<b><a href="http://mikrotik.moscow/forum/forum57/73481-pppoe-user-script-_po-tipu-f.a.p_-fair-access-policy/message296572">PPPoE user script (по типу F.A.P) Fair Access Policy</a></b> <i>RouterOS</i> в форуме <a href="http://mikrotik.moscow/forum/forum57/">RouterOS</a>. <br />
			Ну, я запускал свой скрипт каждые 10 минут, но в твоем случае, наверное, можно просто скопировать скрипт в новый и запускать его каждые 5 или 10 минут после 11 вечера. Другими словами, у тебя будет два одинаковых скрипта, но запускаемые в разное время и с разным интервалом. <br />
			<i>26.10.2006 22:18:00, danz9370.</i>]]></description>
			<link>http://mikrotik.moscow/forum/forum57/73481-pppoe-user-script-_po-tipu-f.a.p_-fair-access-policy/message296572</link>
			<guid>http://mikrotik.moscow/forum/forum57/73481-pppoe-user-script-_po-tipu-f.a.p_-fair-access-policy/message296572</guid>
			<pubDate>Thu, 26 Oct 2006 22:18:00 -0400</pubDate>
			<category>RouterOS</category>
		</item>
		<item>
			<title>PPPoE user script (по типу F.A.P) Fair Access Policy</title>
			<description><![CDATA[<b><a href="http://mikrotik.moscow/forum/forum57/73481-pppoe-user-script-_po-tipu-f.a.p_-fair-access-policy/message296571">PPPoE user script (по типу F.A.P) Fair Access Policy</a></b> <i>RouterOS</i> в форуме <a href="http://mikrotik.moscow/forum/forum57/">RouterOS</a>. <br />
			Работает просто отлично! Здорово! Но есть одна вещь, которая бросилась мне в глаза, и я не понял, как это можно сделать лучше: когда лучше всего запускать скрипт. Как ты запускаешь свой? То есть, я могу запускать свой скрипт каждый день в 11 вечера, чтобы проверять, нет ли каких-то специальных пользователей и менять им скорость. Но если пользователь подключается после 11 вечера, то ему достается обычная скорость. Получается, мне нужно запускать скрипт каждую минуту после 11 вечера до 6 утра. Есть ли способ запускать скрипт при подключении пользователей, вместо того, чтобы запускать его по расписанию? Спасибо! <br />
			<i>25.10.2006 13:17:00, Ozelo.</i>]]></description>
			<link>http://mikrotik.moscow/forum/forum57/73481-pppoe-user-script-_po-tipu-f.a.p_-fair-access-policy/message296571</link>
			<guid>http://mikrotik.moscow/forum/forum57/73481-pppoe-user-script-_po-tipu-f.a.p_-fair-access-policy/message296571</guid>
			<pubDate>Wed, 25 Oct 2006 13:17:00 -0400</pubDate>
			<category>RouterOS</category>
		</item>
		<item>
			<title>PPPoE user script (по типу F.A.P) Fair Access Policy</title>
			<description><![CDATA[<b><a href="http://mikrotik.moscow/forum/forum57/73481-pppoe-user-script-_po-tipu-f.a.p_-fair-access-policy/message296570">PPPoE user script (по типу F.A.P) Fair Access Policy</a></b> <i>RouterOS</i> в форуме <a href="http://mikrotik.moscow/forum/forum57/">RouterOS</a>. <br />
			Поясните, пожалуйста, подробнее. <br />
			<i>25.10.2006 07:07:00, ahmedramze.</i>]]></description>
			<link>http://mikrotik.moscow/forum/forum57/73481-pppoe-user-script-_po-tipu-f.a.p_-fair-access-policy/message296570</link>
			<guid>http://mikrotik.moscow/forum/forum57/73481-pppoe-user-script-_po-tipu-f.a.p_-fair-access-policy/message296570</guid>
			<pubDate>Wed, 25 Oct 2006 07:07:00 -0400</pubDate>
			<category>RouterOS</category>
		</item>
		<item>
			<title>PPPoE user script (по типу F.A.P) Fair Access Policy</title>
			<description><![CDATA[<b><a href="http://mikrotik.moscow/forum/forum57/73481-pppoe-user-script-_po-tipu-f.a.p_-fair-access-policy/message296569">PPPoE user script (по типу F.A.P) Fair Access Policy</a></b> <i>RouterOS</i> в форуме <a href="http://mikrotik.moscow/forum/forum57/">RouterOS</a>. <br />
			Интересный скрипт! Хотел бы узнать, работает ли он с динамическими простыми очередями, которые добавляются при получении лимита скорости от RADIUS? То есть, сможет ли он получать какую-то информацию из RADIUS и сохранять её где-то или, возможно, изменит лимит скорости на динамической простой очереди или применяется только к статическим? Например: Представим, что пользователь, который подключается и получает лимит скорости от RADIUS, — это обычный пользователь и у него должна быть динамическая простая очередь. И я хочу, чтобы некоторые "особые" пользователи в моей pppoe ac могли получать или не получать какие-то другие параметры от RADIUS (возможно, другой лимит скорости, чем у обычных пользователей). Я бы хотел запускать скрипт каждый день в 22:00, чтобы он идентифицировал этих особых пользователей и удваивал их лимит скорости. А другой скрипт возвращал бы их к нормальному использованию в 06:00. Мне кажется, ваш скрипт для этого идеально подходит, правда? Хотел бы как можно скорее протестировать эту идею, если вы её уже не проверяли. Спасибо. <br />
			<i>24.10.2006 22:40:00, Ozelo.</i>]]></description>
			<link>http://mikrotik.moscow/forum/forum57/73481-pppoe-user-script-_po-tipu-f.a.p_-fair-access-policy/message296569</link>
			<guid>http://mikrotik.moscow/forum/forum57/73481-pppoe-user-script-_po-tipu-f.a.p_-fair-access-policy/message296569</guid>
			<pubDate>Tue, 24 Oct 2006 22:40:00 -0400</pubDate>
			<category>RouterOS</category>
		</item>
		<item>
			<title>PPPoE user script (по типу F.A.P) Fair Access Policy</title>
			<description><![CDATA[<b><a href="http://mikrotik.moscow/forum/forum57/73481-pppoe-user-script-_po-tipu-f.a.p_-fair-access-policy/message296568">PPPoE user script (по типу F.A.P) Fair Access Policy</a></b> <i>RouterOS</i> в форуме <a href="http://mikrotik.moscow/forum/forum57/">RouterOS</a>. <br />
			Можно использовать дерево очередей вместо этого. <br />
			<i>19.10.2006 11:51:00, danz9370.</i>]]></description>
			<link>http://mikrotik.moscow/forum/forum57/73481-pppoe-user-script-_po-tipu-f.a.p_-fair-access-policy/message296568</link>
			<guid>http://mikrotik.moscow/forum/forum57/73481-pppoe-user-script-_po-tipu-f.a.p_-fair-access-policy/message296568</guid>
			<pubDate>Thu, 19 Oct 2006 11:51:00 -0400</pubDate>
			<category>RouterOS</category>
		</item>
		<item>
			<title>PPPoE user script (по типу F.A.P) Fair Access Policy</title>
			<description><![CDATA[<b><a href="http://mikrotik.moscow/forum/forum57/73481-pppoe-user-script-_po-tipu-f.a.p_-fair-access-policy/message296567">PPPoE user script (по типу F.A.P) Fair Access Policy</a></b> <i>RouterOS</i> в форуме <a href="http://mikrotik.moscow/forum/forum57/">RouterOS</a>. <br />
			Можешь помочь? Нужен скрипт, который будет делить полосу пропускания между пользователями. Например, у меня есть общая пропускная способность 128/256. Если заходит 1 пользователь (через PPPoE или HotSpot), его лимит будет 128/256. Если заходят 2 пользователя, полоса пропускания должна делиться поровну, то есть по 64/128 на каждого. Хочу, чтобы полоса пропускания распределялась по мере увеличения числа подключенных пользователей. <br /><br />Заранее спасибо! <br />
			<i>19.10.2006 09:01:00, ahmedramze.</i>]]></description>
			<link>http://mikrotik.moscow/forum/forum57/73481-pppoe-user-script-_po-tipu-f.a.p_-fair-access-policy/message296567</link>
			<guid>http://mikrotik.moscow/forum/forum57/73481-pppoe-user-script-_po-tipu-f.a.p_-fair-access-policy/message296567</guid>
			<pubDate>Thu, 19 Oct 2006 09:01:00 -0400</pubDate>
			<category>RouterOS</category>
		</item>
		<item>
			<title>PPPoE user script (по типу F.A.P) Fair Access Policy</title>
			<description><![CDATA[<b><a href="http://mikrotik.moscow/forum/forum57/73481-pppoe-user-script-_po-tipu-f.a.p_-fair-access-policy/message296566">PPPoE user script (по типу F.A.P) Fair Access Policy</a></b> <i>RouterOS</i> в форуме <a href="http://mikrotik.moscow/forum/forum57/">RouterOS</a>. <br />
			Я использую Windows Radius сервер (Vircom), и да, скрипт может менять скорость пользователей, назначенную сервером Radius. Он на 100% работает с динамической простой очередью. Ты можешь улучшить скрипт, если хочешь, это твой базовый скрипт. <br />
			<i>25.10.2006 09:49:00, danz9370.</i>]]></description>
			<link>http://mikrotik.moscow/forum/forum57/73481-pppoe-user-script-_po-tipu-f.a.p_-fair-access-policy/message296566</link>
			<guid>http://mikrotik.moscow/forum/forum57/73481-pppoe-user-script-_po-tipu-f.a.p_-fair-access-policy/message296566</guid>
			<pubDate>Wed, 25 Oct 2006 09:49:00 -0400</pubDate>
			<category>RouterOS</category>
		</item>
		<item>
			<title>PPPoE user script (по типу F.A.P) Fair Access Policy</title>
			<description><![CDATA[<b><a href="http://mikrotik.moscow/forum/forum57/73481-pppoe-user-script-_po-tipu-f.a.p_-fair-access-policy/message296565">PPPoE user script (по типу F.A.P) Fair Access Policy</a></b> <i>RouterOS</i> в форуме <a href="http://mikrotik.moscow/forum/forum57/">RouterOS</a>. <br />
			Вот перевод текста на русский язык:<br /><br />Вот ещё один скрипт для пользователей PPPoE. Этот скрипт снизит скорость загрузки пользователя на 1/4 от его назначенной скорости. Например, если пользователю назначена скорость 128000/256000, то 256000 делится на 64000, и это значение вычитается из скорости загрузки. Таким образом, 256000 - 64000 = 192000. Следовательно, новая скорость теперь 128000/192000.<br /><br />Вот как это работает: у пользователя PPPoE изначально была назначена пропускная способность 128000/512000, но менее чем за 30 минут онлайн он уже скачал более 10 МБ. В этом случае скорость будет снижена до 128000/384000.<br /><br />Тот же пользователь теперь находится в сети более 30 минут, но менее часа и скачал более 15 МБ. Скорость теперь будет снижена до 128000/288000.<br /><br />Опять же, тот же пользователь находится в сети более часа, но менее 5 часов и скачал более 50 МБ. Скорость теперь будет снижена до 128000/216000.<br /><br />Вы можете расширить код, чтобы снижать скорость ещё больше, в зависимости от вашей политики FAP. Надеюсь, вам понравится!<br /><br />:foreach i in=[/ppp active find] \<br />do= { \<br /><br />:set sName [/interface get $i name]<br />:set sTotalBytes [/queue simple get $sName total-bytes] ; \<br />:set sUptime [/ppp active get $i uptime]<br /><br />:set mLimit [/queue simple get $sName max-limit]<br />:set slashpos [:pic [:find $mLimit "/"]]<br />:set mdSize [:pic $mLimit [:tonum(([:tonum($slashpos)] +1))] 30] <br />:set mPart ([:pic $mLimit [:tonum(([:tonum($slashpos)] +1))] 30] / 4)<br />:set muSize [:pic $mLimit 0 $slashpos]<br /><br />:if ($sUptime &lt; 30m && $sTotalBytes &gt;10240000) \<br /><br />do={ \<br /> &nbsp; &nbsp; &nbsp; :set NewSpeed ($muSize . "/" . ($mdSize - $mPart)) &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br /> &nbsp; &nbsp; &nbsp; :log info ("SPEED " . $sName . " exceeds 10 Mega Bytes and has been online for " . $sUptime . " reducing speed to " . $NewSpeed )<br /> &nbsp; &nbsp; &nbsp; /queue simple set $sName &nbsp;limit-at=$NewSpeed max-limit=$NewSpeed<br /> &nbsp; &nbsp; &nbsp; :log info ("SPEED " . $sName . " Total Download:" . [:tostr($sTotalBytes)] . "  and has been online for " . $sUptime )<br /> &nbsp; &nbsp; }<br /><br /><br />:if ( $sUptime &gt;30m && $sUptime &lt; 1h && $sTotalBytes &gt;15360000) \<br /><br />do={ \<br /> &nbsp; &nbsp; &nbsp; :set NewSpeed ($muSize . "/" . ($mdSize - $mPart)) &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br /> &nbsp; &nbsp; &nbsp; :log info ("SPEED " . $sName . " exceeds 15 Mega Bytes and has been online for " . $sUptime . " reducing speed to " . $NewSpeed )<br /> &nbsp; &nbsp; &nbsp; /queue simple set $sName &nbsp;limit-at=$NewSpeed max-limit=$NewSpeed<br /> &nbsp; &nbsp; &nbsp; :log info ("SPEED " . $sName . " Total Download:" . [:tostr($sTotalBytes)] . "  and has been online for " . $sUptime )<br /> &nbsp; &nbsp; }<br /><br /><br />:if ( $sUptime &gt;1h && $sUptime &lt; 5h && $sTotalBytes &gt; 51200000) \<br /><br />do={ \<br /> &nbsp; &nbsp; &nbsp; :set NewSpeed ($muSize . "/" . ($mdSize - $mPart)) &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br /> &nbsp; &nbsp; &nbsp; :log info ("SPEED " . $sName . " exceeds 50 Mega Bytes and has been online for " . $sUptime . " reducing speed to " . $NewSpeed )<br /> &nbsp; &nbsp; &nbsp; /queue simple set $sName &nbsp;limit-at=$NewSpeed max-limit=$NewSpeed<br /> &nbsp; &nbsp; &nbsp; &nbsp;:log info ("SPEED " . $sName . " Total Download:" . [:tostr($sTotalBytes)] . "  and has been online for " . $sUptime )<br /> &nbsp; &nbsp; }<br /><br /> } any comments are welcome. <br />
			<i>18.10.2006 22:41:00, danz9370.</i>]]></description>
			<link>http://mikrotik.moscow/forum/forum57/73481-pppoe-user-script-_po-tipu-f.a.p_-fair-access-policy/message296565</link>
			<guid>http://mikrotik.moscow/forum/forum57/73481-pppoe-user-script-_po-tipu-f.a.p_-fair-access-policy/message296565</guid>
			<pubDate>Wed, 18 Oct 2006 22:41:00 -0400</pubDate>
			<category>RouterOS</category>
		</item>
	</channel>
</rss>
