Различия

Здесь показаны различия между выбранной ревизией и текущей версией данной страницы.

Ссылка на это сравнение

mgmikrotikdhcp [2019/11/27 22:10]
bobr [Конфигурация Mikrotik]
mgmikrotikdhcp [2019/12/19 00:46] (текущий)
bobr [Конфигурация Mikrotik]
Строка 21: Строка 21:
 Настраиваем биллинг стандартно как и для любых других устройств Настраиваем биллинг стандартно как и для любых других устройств
  
-в справочнике (сети и услуги) добавляем сети, создаем услуги(тип сети можете указать как "DHCP static" или "Other type"+в справочнике (сети и услуги) добавляем сети, создаем услуги(тип сети можете указать как "DHCP static" или "Other type")
  
 {{:ub_add_network.png?&300|}} {{:ub_add_service.png?&300|}} {{:ub_add_network.png?&300|}} {{:ub_add_service.png?&300|}}
Строка 50: Строка 50:
  
  
-Базовая минимальная настройки завершена. Теперь абоненты будут получать IP из биллинга. Абоненты с положительным состоянием счета будут добавлены в IP -> Firewall -> Address-List, в список **ALLOW**, а с отрицательным, соответственно, в **NOT_ALLOW**. Список **ALLOW** логично выпустить в инет в фаерволле, в то время как для **NOT_ALLOW** - заблокировать доступ в инет там же. Сделать это можно как-то так:\\+Базовая минимальная настройка завершена. Теперь абоненты будут получать IP из биллинга. Абоненты с положительным состоянием счета будут добавлены в IP -> Firewall -> Address-List, в список **ALLOW**, а с отрицательным, соответственно, в **NOT_ALLOW**. Список **ALLOW** логично выпустить в инет в фаерволле, в то время как для **NOT_ALLOW** - заблокировать доступ в инет там же. Сделать это можно как-то так:\\
 {{:ros_firewall_allow_not_allow.png?&300|}} {{:ros_firewall_allow_not_allow.png?&300|}}
  
Строка 61: Строка 61:
 </code> </code>
  
-Далеев Mikrotik NAS __добавляем__ +Далее:\\ 
-  * в System -> Scripts  скрипт примерно такого содержания(назовем его, скажем, //SimpleQueueRebuild//)+===== Когда DHCP-сервером у нас сам Mikrotik NAS ===== 
 + в Mikrotik NAS __добавляем__ 
 +  * в **System -> Scripts**  скрипт примерно такого содержания(назовем его, скажем, //SimpleQueueRebuild//)
 <code> <code>
 :global leaseBound; :global leaseBound;
Строка 86: Строка 88:
 } }
 </code> </code>
-  * в IP -> DHCP Server -> DHCP  в конфиг DHCP сервера в секцию Lease script(вкладка Script в боле поздних версиях ROS) название только что созданного скрипта //SimpleQueueRebuild//+  * в **IP -> DHCP Server -> DHCP**  в конфиг DHCP сервера в секцию Lease script(вкладка Script в боле поздних версиях ROS) название только что созданного скрипта //SimpleQueueRebuild//
 Естественно, это только пример и в своем конкретном случае вы можете модифицировать его под ваши задачи и реалии(например, устанавливать burst'ы и прочее).\\ Естественно, это только пример и в своем конкретном случае вы можете модифицировать его под ваши задачи и реалии(например, устанавливать burst'ы и прочее).\\
 +
 \\ \\
  
-Отдельная благодарность за помощь в создании данного мануала - [[https://local.com.ua/forum/profile/40843-mohax_kh_ua/|mohax_kh_ua]]+===== Когда DHCP-сервер у нас где-то там, а сам Mikrotik NAS - всего лишь relay ===== 
 +Этот способ, кстати, может подойти и для [[http://wiki.ubilling.net.ua/doku.php?id=mgmikrotik|MikroTik IPoE (Hotspot)]]\\ 
 +\\ 
 +Как и в предыдущем случае в Mikrotik NAS __добавляем__ 
 +  * в **System -> Scripts**  скрипт примерно такого содержания(назовем его, скажем, //SimpleQueueRebuild//) 
 +<code> 
 +:local qSpeed ""; 
 +:local qTarget ""; 
 +:local qIP ""; 
 + 
 +/queue simple 
 +:local tQueueList [find where (name~"^mlg_" = false)]; 
 + 
 +:log warning ("Not mlg_ queues found: " . [:len $tQueueList]); 
 + 
 +:if ([:len $tQueueList] > 0) do={ 
 +    :foreach tQueue in=$tQueueList do={ 
 +        :set qSpeed [get $tQueue max-limit]; 
 +        :set qTarget [get $tQueue target]; 
 +        :set qIP [:pick [:tostr $qTarget] 0 [:find [:tostr $qTarget] "/"]]; 
 + 
 +        remove $tQueue; 
 + 
 +        :if ([:len [find where (name="mlg_$qIP")]] <= 0) do={             
 +            add name="mlg_$qIP" max-limit=$qSpeed target=$qTarget; 
 +        }         
 +    } 
 +
 +</code> 
 +  * дальше идем в **System -> Scheduler** и создаем там задачу, которая будет запускать наш //SimpleQueueRebuild//, скажем, раз в 30 сек. Можно и чаще. Можно и реже - всецело на ваш вкус.\\  
 +По сути, эта штука следует тому же принципу, что и предыдущая, только вот в силу того, что DHCP lease выдается не нашим НАСом и "поймать", собственно, этот момент мы не можем - мы производим периодическую проверку на наличие "неправильных" наименований шейперов и делаем из них "правильные".\\ 
 +\\ 
 +Стоит ли говорить, что если у вас на каком-то конкретном микротикоНАСе в simple queue есть какие-то свои, нужные вам записи - то приведенный выше скрипт не остановится ни перед чем, лишь бы переделать их полностью. Так что - осторожнее в продакшене, а фильтрование в него внедряйте уже самостоятельно...  
 + 
 +\\ 
 + 
 +===== Включаем сами графики на Mikrotik NAS ===== 
 +Ну и, как показывает практика, нужно не забыть включить эти самые графики на каждом отдельном Mikrotik NAS. Сделать это можно следующим образом: 
 + 
 +**Tools -> Graphing** 
 + 
 +Нажимаем "__Graphing Settings__"\\ 
 +{{:ros_graphs1.png?&300|}}\\ 
 +и устанавливаем желаемую частоту сбора и записи статистических данных. Обычно это - 5 минут. Многим, наверное, хотелось бы чаще, но Микротик пока чаще не умеет.\\ 
 + 
 +Далее обращаем внимание на вкладки "__... Rules__"\\  
 +{{:ros_graphs2.png?&300|}}\\ 
 +здесь мы можем указать детали сбора статистики(для сущностей типа интерфейсы, правила шейперов и системные ресурсы) и доступа к этой статистике. Поскольку нас интересуют графики трафика наших юзеров - нам нужна вкладка "__Queue Rules__". Тыкаем по ней, потом по кнопке с синим плюсом "Добавить":\\ 
 +{{:ros_graphs3.png?&300|}}\\ 
 +и добавляем правило для наших будущих графчиков:\\ 
 +  * **Simple Queue** - шейперы, для которых будет собираться статистика. Здесь логично оставить **all**.   
 +  * **Allow Address** - адрес/подсеть с которых будет разрешен доступ к этим графикам. Логично указать здесь адрес нашего Убиллинг сервера. Значение **0.0.0.0/0**, естественно, разрешит доступ всем.   
 +  * **Store On Disk** - хранить ли данные статистики на диске. Лучше включить - мы ведь не хотим, чтобы при каждом перезапуске НАСа у нас обнулялась стата? 
 +  * **Allow Target** - очень интересная опция, определяющая разрешено ли юзеру, чья стата собирается этим правилом, смотреть свою же статистику. Если вашим пользователям разрешен доступ к **http://ROS_NAS_IP/graphs/**  и эта опция включена - они смогут видеть каждый свой график. ИРЛ такое, как правило, не практикуется. 
 +Теперь, когда "графичковая тулза" у нас настроена и правило сбора статы добавлено - можем перейти на **http://ROS_NAS_IP/graphs/** и лицезреть там наши графички.\\ 
 +А если не лицезреем - значит что-то не так и [[http://instantsite.ru/gallery/image.php?album_id=5&image_id=729|идем переделываем]], ибо в таком случае в Убиллинге мы их, скорее всего, тоже не увидим. Ну или мы забыли добавить в **Allow Address** адрес своего хоста, с которого пытаемся эти графички увидеть. 
 +\\ 
 +\\ 
 +\\ 
 +Отдельная благодарность за помощь в создании данного мануала - [[https://local.com.ua/forum/profile/40843-mohax_kh_ua/|mohax_kh_ua]]\\ 
 +Главный микротико-скрипто-тестер - [[https://local.com.ua/forum/profile/16438-reductor/|reductor]]
    
mgmikrotikdhcp.1574885448.txt.gz · Последние изменения: 2019/11/27 22:10 — bobr
 
За исключением случаев, когда указано иное, содержимое этой вики предоставляется на условиях следующей лицензии: CC Attribution-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki