Користувальницькькі налаштування

Налаштування сайту


mgmikrotikdhcp

Розбіжності

Тут показані розбіжності між вибраною ревізією та поточною версією сторінки.

Посилання на цей список змін

Наступна ревізія
Попередня ревізія
Наступна ревізія По сторонах наступні версії
mgmikrotikdhcp [2022/09/24 14:39]
127.0.0.1 зовнішнє редагування
mgmikrotikdhcp [2023/09/04 18:54]
bobr
Рядок 1: Рядок 1:
-====== Авторизация абонентов DHCP на MikroTik методом IP + MAC при помощи КучаГен ====== +====== Авторизація абонентів DHCP на MikroTik методом IP + MAC за допомогою КупаГен ====== 
-Сразу следует оговоритсячто информация ниже создана больше <del>для развлекательных целей</del> в общеобразовательных целях и к применению в реальной жизни **рекомендуется не особо**. Потому мы принимаем как данность, что всекто все же решиться применить это в продакшинескорее всегопонимают все возможные <del>боль и безисходность</del> последствия и ограничения, с которыми они всенепременно столкнутся: +Відразу слід зазначити, що інформація нижче створена більше <del>для розважальних цілей</del> в загальноосвітніх цілях і до застосування в реальному житті **рекомендується не дуже**. Тому ми приймаємо як даність, що всіхто все ж таки наважиться застосувати це в продакшинінайімовірніше, розуміють усі можливі <del>біль і безвихідь</del> наслідки й обмеження, з якими вони неодмінно зіткнуться: 
-  * Абсолютная невозможность какого либо управления абонентом после получения им DHCP lease от микротика. Никаких CoA и PoD. Только таймаут выданного лиза может изменить состояние подключения абонента. +  * Абсолютна неможливість будь-якого управління абонентом після отримання ним DHCP lease від мікротіка. Ніяких CoA і PoD. Тільки таймаут виданого лізу може змінити стан підключення абонента. 
-  * Обязательное использование фаерволла и address lists для предоставления/ограничения доступа абоненту. Ну или каких либо других ухищрений на ваш вкус+  * Обов'язкове використання фаєрволла і address lists для надання/обмеження доступу абоненту. Ну або будь-яких інших хитрощів на ваш смак. 
-  * Никакого Walled Garden и прочих удобствкак у того же HotSpot. Так что, например, перенаправление должников будете мастерить сами.+  * Ніякого Walled Garden та інших зручностейяк у того ж HotSpot. Так що, наприклад, перенаправлення боржників будете майструвати самі.
    
-В то же время нельзя не отметить и положительных моментов(такой себе островок надежды посреди тьмы и грусти): +Водночас не можна не відзначити і позитивних моментів (такий собі острівець надії посеред темряви і смутку): 
-  * Простота реализацииПрименение <del>мозга</del> глубоких мыслительных процессов практически не требуется+  * Простота реалізаціїЗастосування <del>мозку</del> глибоких розумових процесів практично не потрібно
-  * Очень большая(практически идентичная) схожесть в работе Ubilling с Mikrotik по API и авторизацией IP + MAC. Только IPшки и address lists теперь выдает радиус, а не Ubilling.+  * Дуже велика (практично ідентична) схожість у роботі Ubilling з Mikrotik за API і авторизацією IP + MAC. Тільки IPшки і address lists тепер видає радіус, а не Ubilling.
  
-====== Конфигурация Ubilling ======+====== Конфігурація Ubilling ======
  
-Уже должен быть настроен [[multigen|КучаГен]].\\ +Вже має бути налаштований [[multigen|КупаГен]].\\ 
-Не забываем добавить словарь для Mikrotik в /usr/local/etc/raddb/dictionary +Не забуваємо додати словник для Mikrotik в /usr/local/etc/raddb/dictionary 
 <code> <code>
 $INCLUDE        /usr/local/etc/raddb/dictionary_preset/mikrotik.dictionary $INCLUDE        /usr/local/etc/raddb/dictionary_preset/mikrotik.dictionary
 </code> </code>
-После чего перезапускаем FreeRADIUS+Після чого перезапускаємо FreeRADIUS
  
  
-Настраиваем биллинг стандартно как и для любых других устройств+Налаштовуємо білінг стандартно як і для будь-яких інших пристроїв
  
-в справочнике (сети и услуги) добавляем сети, создаем услуги(тип сети можете указать как "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|}}
  
-добавляем NAS\\+додаємо NAS\\
 {{:ub_add_nas.png?&300|}} {{:ub_add_nas.png?&300|}}
  
-В конфигурации КучаГен для нашего NAS настраиваем атрибуты:\\+У конфігурації КупаГен для нашого NAS налаштовуємо атрибути:\\
 {{:ub_mlg_nas_ros_dhcp1.png?&300|}} {{:ub_mlg_nas_ros_dhcp1.png?&300|}}
  
-Как уже упоминалось выше - для NAS MikroTik + DHCP **НЕ работают Coa\PoD**, поэтому отключатся\включатся абоненты будут по истечении lease time (Session-Timeout). Время выберите подходящее для себяВ нашем примере абоненты, у которых баланс положительный, будут получать IP на 2 часа.+Як уже згадувалося вище - для NAS MikroTik + DHCP **НЕ працюють Coa\PoD**, тому відключаться\включаться абоненти будуть після закінчення lease time (Session-Timeout). Час виберіть відповідний для себеУ нашому прикладі абоненти, у яких баланс позитивний, отримуватимуть IP на 2 години.
  
-====== Конфигурация Mikrotik ====== +====== Конфігурація Mikrotik ====== 
-Включаем RADIUS, и его работу с DHCP\\+Вмикаємо RADIUS, і його роботу з DHCP\\
 {{:mlg_ros_radius_cfg.png?&300|}} {{:mlg_ros_radius_cfg.png?&300|}}
  
-В поле **Address** вписываем адрес нашего Ubilling(именно там ведь живет наш радиус?). В поле **Secret** вводим секрет, который можно посмотреть в Ubilling:\\ +У полі **Address** вписуємо адресу нашого Ubilling (адже саме там живе наш радіус?). У полі **Secret** вводимо секрет, який можна подивитися в Ubilling:\\ 
 {{:multigen_nas.png?&300|}} {{:multigen_nas.png?&300|}}
  
-На интерфейс, который смотрит в сторону клиентов вешаем сеть:\\ +На інтерфейс, який дивиться в бік клієнтіввішаємо мережу:\\ 
 {{:ros_net_add.png?&300|}} {{:ros_net_add.png?&300|}}
  
-И создаем на этом же интерфейсе dhcp-server(в поле Address Pool указываем **static-only**. В поле Use RADIUS ставим **yes**):\\+І створюємо на цьому ж інтерфейсі dhcp-server (у полі Address Pool вказуємо **static-only**. У полі Use RADIUS ставимо **yes**):\\
 {{:mlg_ros_dhcp_cfg.png?&300|}} {{:mlg_ros_dhcp_cfg.png?&300|}}
  
-В IP -> DHCP Server -> Networks Настраиваем добавляем нашу абонентскую сеть и указываем адреса Default gateway и DNS, которые будут выдаваться клиентам:\\+В IP -> DHCP Server -> Networks Налаштовуємо, додаємо нашу абонентську мережу і вказуємо адреси Default gateway і DNS, які будуть видаватися клієнтам:\\
 {{:mlg_ros_dhcp_net.png?&300|}} {{:mlg_ros_dhcp_net.png?&300|}}
  
  
-Базовая минимальная настройка завершена. Теперь абоненты будут получать 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|}}
  
-====== Получение графиков по статистике трафика абонента с Mikrotik ====== +====== Отримання графіків за статистикою трафіку абонента з Mikrotik ====== 
-Если вы очень хотите получать графики по статистике трафика абонента с Mikrotik так жекак при работе с Mikrotik по API можете использовать следующий **костыль**:\\+Якщо ви дуже хочете отримувати графіки зі статистики трафіку абонента з Mikrotik так самояк під час роботи з Mikrotik через APIможете використати наступну **костиль**:\\
  
-Включаем опцию [[alteriniconf|alter.ini]]+Вмикаємо опцію [[alteriniconf|alter.ini]]
 <code> <code>
 MULTIGEN_USE_ROS_TRAFFIC_GRAPHS=1 MULTIGEN_USE_ROS_TRAFFIC_GRAPHS=1
 </code> </code>
  
-Далее:\\ +Далі:\\ 
-===== Когда DHCP-сервером у нас сам Mikrotik NAS - DEPRECATED и настоятельно не рекомендуется к использованию ===== +===== Коли DHCP-сервером у нас сам Mikrotik NAS - DEPRECATED і наполегливо не рекомендується до використання ===== 
-**Итакпоскольку у этого метода внезапно(за почти год, ага) был обнаружен ФАТАЛЬНЫЙ НЕДОСТАТОК, который заключается в том, что микрот запускает этот скрипт только в момент НЕПОСРЕДСТВЕННОГО получения девайсом DHCP-лиза и НЕ запускает его при автопродлении(автообновлении) лизаЭто приводит к томучто если у юзера девайс(скажем роутер) включен постоянно и лиз он не переполучает, а автоматически продляет - то, напримерпри смене тарифа у юзера изменения лимитов скорости в шейпере не произойдет НИКОГДА. Ну, по крайней мере до тех порпока его устройство фактически не получит DHCP-лиз заново** +**Отже, оскільки у цього методу раптово (за майже рік, ага) було виявлено ФАТАЛЬНИЙ НЕДОЛІК, який полягає в томущо мікрот запускає цей скрипт тільки в момент БЕЗПОСЕРЕДНЬОГО отримання девайсом DHCP-лізу і НЕ запускає його під час автопродовження (автооновлення) лізуЦе призводить до тогощо якщо у користувача девайс (скажімо, роутер) увімкнено постійно, а ліз він не переотримує, а автоматично подовжує, то, наприкладу разі зміни тарифу у користувача зміни лімітів швидкості в шейпері не відбудеться НІКОЛИ. Ну, принаймні дотидоки його пристрій фактично не отримає DHCP-ліз заново **
  
-**В связи с чем настоятельно рекомендуется во всех случаях использовать обновлённый и тщательнейше протестированный(но это не точно) скрипт для [[mgmikrotikdhcp#когда_dhcp-сервер_у_нас_где-то_там_а_сам_mikrotik_nas_-_всего_лишь_relay|Mikrotik NAS в режиме RELAY]]**+**У зв'язку з чим настійно рекомендується у всіх випадках використовувати оновлений і ретельно протестований (але це не точно) скрипт для [[mgmikrotikdhcp#Коли_dhcp-сервер_у_нас_десь_там_а_сам_mikrotik_nas_-_всього_лише_relay|Mikrotik NAS у режимі RELAY]]**
 \\ \\
 \\ \\
-//То есть да - даже когда DHCP-сервером у нас сам Mikrotik NAS - используем методологию и скрипт для [[mgmikrotikdhcp#когда_dhcp-сервер_у_нас_где-то_там_а_сам_mikrotik_nas_-_всего_лишь_relay|Mikrotik NAS в режиме RELAY]]//+//Тобто так навіть коли DHCP-сервером у нас сам Mikrotik NAS - використовуємо методологію та скрипт для [[mgmikrotikdhcp#коли_dhcp-сервер_у_нас_десь_там_а_сам_mikrotik_nas_-_всього_лише_relay|Mikrotik NAS у режимі RELAY]]//.
  
-**А эту штуку оставим чисто для понимания "каким образом хотелось бычтобы оно работало"**+**А цю штуку залишимо суто для розуміння "яким чином хотілося б, щоб воно працювало"."**
  
- в Mikrotik NAS **НЕ** __добавляем__ + в Mikrotik NAS **НЕ** __додаємо__ 
-  * в **System -> Scripts**  скрипт примерно такого содержания(назовем его, скажем, //SimpleQueueRebuild//)+  * в **System -> Scripts** скрипт приблизно такого змісту (назвемо його, скажімо, //SimpleQueueRebuild//)
 <code tcl [enable_line_numbers="​true"​]> <code tcl [enable_line_numbers="​true"​]>
 # getting global vars # getting global vars
Рядок 124: Рядок 124:
 } }
 </code> </code>
-  * в **IP -> DHCP Server -> DHCP**  в конфиг DHCP сервера в секцию Lease script(вкладка Script в боле поздних версиях ROS) название только что созданного скрипта //SimpleQueueRebuild// +  * в **IP -> DHCP Server -> DHCP**  у конфіг DHCP-сервера в секцію Lease script (вкладка Script у пізніших версіях ROS) назву щойно створеного скрипта //SimpleQueueRebuild//. 
-Логика работы данного скрипта следующаяв момент выдачи //DHCP-lease// абоненту мы ищем в //simple queues// запись с таким же IP, который мы вот сейчас выдаем, и правим эту запись под свои нужды: точнее - удаляем и добавляем такую жено с нужными нам параметрами. И да, **очень важно отметить**, что наличие префикса **mlg_** в наименовании //simple queue-записи// - **строго ОБЯЗАТЕЛЬНО**.\\ +Логіка роботи цього скрипта така: у момент видачі //DHCP-lease// абоненту ми шукаємо в //simple queues// запис із таким самим IP, який ми ось зараз видаємоі правимо цей запис під свої потреби: точніше - видаляємо і додаємо такий самийале з потрібними нам параметрами. І так, **дуже важливо зазначити**, що наявність префікса **mlg_** у найменуванні //simple queue-запису// - **строго ОБОВ'ЯЗКОВО**.\\ 
-Естественно, это только пример и в своем конкретном случае вы можете модифицировать его под ваши задачи и реалии(напримерустанавливать burst'ы и прочее).\\+Звісно, це тільки приклад, і у своєму конкретному випадку ви можете модифікувати його під ваші завдання і реалії (наприкладвстановлювати burst'и та інше).\\
  
 \\ \\
  
-===== Когда DHCP-сервер у нас где-то там, а сам Mikrotik NAS - всего лишь relay ===== +===== Коли DHCP-сервер у нас десь там, а сам Mikrotik NAS - усього лише relay ===== 
-Этот способ, кстати, может подойти и для [[http://wiki.ubilling.net.ua/doku.php?id=mgmikrotik|MikroTik IPoE (Hotspot)]]\\+Цей спосіб, до речі, може підійти і для [[http://wiki.ubilling.net.ua/doku.php?id=mgmikrotik|MikroTik IPoE (Hotspot)]]\\
 \\ \\
-Как и в предыдущем случае в Mikrotik NAS __добавляем__ +Як і в попередньому випадку в Mikrotik NAS __додаємо__ 
-  * в **System -> Scripts**  скрипт примерно такого содержания(назовем его, скажем, //SimpleQueueRebuild//)+  * у **System -> Scripts**  скрипт приблизно такого змісту (назвемо його, скажімо, //SimpleQueueRebuild//)
 <code tcl [enable_line_numbers="true"]> <code tcl [enable_line_numbers="true"]>
 :local qSpeed ""; :local qSpeed "";
Рядок 187: Рядок 187:
 } }
 </code> </code>
-  * дальше идем в **System -> Scheduler** и создаем там задачу, которая будет запускать наш //SimpleQueueRebuild//, скажем, раз в 30 сек. Можно и чаще. Можно и реже - всецело на ваш вкус.\\  +  * далі йдемо в **System -> Scheduler** і створюємо там завданняяке запускатиме наш //SimpleQueueRebuild//, скажімо, раз на 30 сек. Можна й частіше. Можна і рідше - цілком на ваш смак.\\  
-По сутиэта штука следует тому же принципучто и предыдущая, только вот в силу тогочто DHCP lease выдается не нашим НАСом и "поймать", собственноэтот момент мы не можем - мы производим периодическую проверку на наличие "неправильных" наименований шейперов и делаем из них "правильные"+По сутіця штука слідує за тим самим принципомщо й попередня, тільки ось через тещо DHCP lease видається не нашим НАСом і "спіймати", власне, цей момент ми не можемо - ми виробляємо періодичну перевірку на наявність "неправильних" найменувань шейперів і робимо з них "правильні"...
  
-Стоит отметитьчто переменная **leaseDynPrefix** призвана отфильтровать выборку записей //simple queue//, ограничив её только теми, в наименовании которых присутствует префикс __//dhcp-ds<//__ - именно так именовал динамически созданные записи //simple queue// микротик, на котором этот скрипт тестировался и **СТОИТ ИМЕТЬ В ВИДУчто в вашем конкретном случае этот префикс может ОТЛИЧАТЬСЯ**. В принципе - вы вообще можете не полагаться на эту переменную и не использовать её, закомментировав в скрипте строку **12** и раскомментировав строку **9**.+Варто зазначити, що змінна **leaseDynPrefix** покликана відфільтрувати вибірку записів //simple queue//, обмеживши її лише тими, у найменуванні яких присутній префікс __//dhcp-ds<//__ - саме так іменував динамічно створені записи //simple queue// мікротик, на якому цей скрипт тестували, і **БАЖАНО ВЗЯТИ ДО УВАГИ, що у вашому конкретному випадку цей префікс може ВІДРІЗНИТИСЯ**. У принципі - ви взагалі можете не покладатися на цю змінну і не використовувати її, закоментувавши в скрипті рядок **12** і розкоментувавши рядок **9**.
  
-И конечно же, **нужно не забыть об очень важном моменте**, а именно о томчто наличие префикса **mlg_** в наименовании //simple queue-записи// - **строго ОБЯЗАТЕЛЬНО**.\\+І звичайно ж, **потрібно не забути про дуже важливий момент**, а саме про тещо наявність префікса **mlg_** у найменуванні //simple queue-запису// - **строго ОБОВ'ЯЗКОВО**.\\
 \\ \\
-Стоит ли говоритьчто если у вас на каком-то конкретном микротикоНАСе в simple queue есть какие-то свои, нужные вам записи - то приведенный выше скрипт не остановится ни перед чем, лишь бы переделать их полностью. Так что - осторожнее в продакшене, а дополнительное фильтрование в него внедряйте уже самостоятельно... +Чи варто говоритищо якщо у вас на якомусь конкретному мікротикоНАСі в simple queue є якісь своїпотрібні вам записи - то наведений вище скрипт не зупиниться ні перед чим, аби переробити їх повністю. Тож - обережніше в продакшені, а додаткове фільтрування в нього впроваджуйте вже самостійно... 
  
 \\ \\
  
-===== Включаем сами графики на Mikrotik NAS ===== +===== Вмикаємо самі графіки на Mikrotik NAS ===== 
-Ну икак показывает практика, нужно не забыть включить эти самые графики на каждом отдельном Mikrotik NAS. Сделать это можно следующим образом:+Ну іяк показує практика, потрібно не забути ввімкнути ці самі графіки на кожному окремому Mikrotik NAS. Зробити це можна таким чином:
  
 **Tools -> Graphing** **Tools -> Graphing**
  
-Нажимаем "__Graphing Settings__"\\+Натискаємо "__Graphing Settings__"\\
 {{:ros_graphs1.png?&300|}}\\ {{:ros_graphs1.png?&300|}}\\
-и устанавливаем желаемую частоту сбора и записи статистических данных. Обычно это - 5 минутМногим, наверное, хотелось бы чаще, но Микротик пока чаще не умеет.\\+і встановлюємо бажану частоту збору та запису статистичних даних. Зазвичай це - 5 хвилин. Багатьом, напевно, хотілося б частіше, але Мікротік поки частіше не вміє.
  
-Далее обращаем внимание на вкладки "__... Rules__"\\ +Далі звертаємо увагу на вкладки "__.... Rules__"\\ 
 {{:ros_graphs2.png?&300|}}\\ {{:ros_graphs2.png?&300|}}\\
-здесь мы можем указать детали сбора статистики(для сущностей типа интерфейсы, правила шейперов и системные ресурсыи доступа к этой статистикеПоскольку нас интересуют графики трафика наших юзеров - нам нужна вкладка "__Queue Rules__". Тыкаем по ней, потом по кнопке с синим плюсом "Добавить":\\+тут ми можемо вказати деталі збору статистики (для сутностей типу інтерфейси, правила шейперів і системні ресурсиі доступу до цієї статистикиОскільки нас цікавлять графіки трафіку наших юзерів - нам потрібна вкладка "__Queue Rules__". Тикаємо по ній, потім по кнопці з синім плюсом "Додати":\\\
 {{:ros_graphs3.png?&300|}}\\ {{:ros_graphs3.png?&300|}}\\
-и добавляем правило для наших будущих графчиков:\\ +і додаємо правило для наших майбутніх графчиків:\\ 
-  * **Simple Queue** - шейперы, для которых будет собираться статистика. Здесь логично оставить **all**.   +  * **Simple Queue** - шейпери, для яких буде збиратися статистика. Тут логічно залишити **all**.   
-  * **Allow Address** - адрес/подсеть с которых будет разрешен доступ к этим графикам. Логично указать здесь адрес нашего Убиллинг сервера. Значение **0.0.0.0/0**, естественно, разрешит доступ всем.   +  * **Allow Address** - адреса/підмережа з яких буде дозволено доступ до цих графіків. Логічно вказати тут адресу нашого Убіллінг сервера. Значення **0.0.0.0.0/0**, природно, дозволить доступ усім.   
-  * **Store On Disk** - хранить ли данные статистики на дискеЛучше включить мы ведь не хотим, чтобы при каждом перезапуске НАСа у нас обнулялась стата? +  * **Store On Disk** - чи зберігати дані статистики на дискуКраще ввімкнути адже ми не хочемощоб під час кожного перезапуску НАСу в нас обнулялася стата? 
-  * **Allow Target** - очень интересная опция, определяющая разрешено ли юзеру, чья стата собирается этим правилом, смотреть свою же статистику. Если вашим пользователям разрешен доступ к **http://ROS_NAS_IP/graphs/**  и эта опция включена - они смогут видеть каждый свой график. ИРЛ такое, как правило, не практикуется. +  * **Allow Target** - дуже цікава опція, що визначає, чи дозволено користувачеві, чия стата збирається цим правилом, дивитися свою ж статистику. Якщо вашим користувачам дозволено доступ до **http://ROS_NAS_IP/graphs/** і цю опцію ввімкнено вони зможуть бачити кожен свій графік. ІРЛ таке, як правило, не практикується. 
-Теперь, когда "графичковая тулза" у нас настроена и правило сбора статы добавлено - можем перейти на **http://ROS_NAS_IP/graphs/** и лицезреть там наши графички.\\ +Тепер, коли "графічкова тулза" у нас налаштована і правило збору стати додано - можемо перейти на **http://ROS_NAS_IP/graphs/** і споглядати там наші графічки. 
-А если не лицезреем - значит что-то не так и [[http://instantsite.ru/gallery/image.php?album_id=5&image_id=729|идем переделываем]], ибо в таком случае в Убиллинге мы их, скорее всего, тоже не увидим. Ну или мы забыли добавить в **Allow Address** адрес своего хоста, с которого пытаемся эти графички увидеть.+А якщо не споглядаємо - значить, щось не так і [[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/40843-mohax_kh_ua/|mohax_kh_ua]]\\ 
-Главный микротико-скрипто-тестер - [[https://local.com.ua/forum/profile/16438-reductor/|reductor]]+Головний мікротико-скрипто-тестер - [[https://local.com.ua/forum/profile/16438-reductor/|reductor]]
    
mgmikrotikdhcp.txt · Востаннє змінено: 2023/09/04 19:34 повз bobr