Kid Control на MikroTik: родительский контроль и доступ в интернет по расписанию

Как закрыть детям доступ в интернет по часам и ограничить скорость, не ставя ничего на сами устройства: профиль с расписанием, привязка телефона или ноутбука по MAC-адресу, проверка блокировки и честный разбор того, что Kid Control не умеет.
Нет роутера под рукой? На открытом уроке стенд уже включён и ждёт вас. Подробнее ↓Что такое Kid Control и когда он нужен
Kid Control — встроенный в RouterOS родительский контроль. Вы описываете профиль (в терминологии MikroTik «ребёнка»): в какие часы каждого дня недели разрешён интернет и с какой скоростью. Затем привязываете к профилю устройства по MAC-адресу. Дальше роутер сам открывает и закрывает доступ по часам, на самих телефонах и компьютерах ничего устанавливать не нужно.
Подходит, когда нужно «выключать интернет после 20:00», урезать скорость игровой приставки или планшета и не лезть в настройки каждого устройства. Не подходит как фильтр контента: сайты и приложения Kid Control не различает, он управляет только временем и скоростью. Подробности в разделе «Что Kid Control не умеет».
Внутри нет ничего магического. Kid Control создаёт динамические правила firewall и динамическую simple queue:
- вне разрешённого окна для устройства появляются два правила
rejectв цепочкеforward: по адресу источника и по адресу назначения; - внутри окна вместо них остаётся правило
acceptдля установленных соединений, а при заданномrate-limitсоздаётся динамическая очередь на IP-адрес устройства.
Адрес устройства роутер берёт из ARP-таблицы по MAC-адресу, поэтому при смене IP (например, по DHCP) правила переписываются сами. Блокировка включается по часам роутера, поэтому он должен знать точное время.
Команды в статье проверены на RouterOS 7.22 и 6.49. Где версии различаются, это сказано в тексте.
Что понадобится
- Роутер MikroTik с настроенной локальной сетью. Если вы ещё не подключались по WinBox, начните со статьи «WinBox: первое подключение к MikroTik за 10 минут».
- Работающий DHCP-сервер: «DHCP-сервер на MikroTik». Клиент получает адрес от роутера, и устройство видно в ARP.
- Доступ в интернет через роутер и NAT: «Маскировка сети: NAT masquerade».
- Верное время на роутере:
/system clock print. Расписание работает по часам роутера и его часовому поясу. Настроить синхронизацию можно через/system ntp client.
forward). Если устройство подключено к другой точке доступа или коммутатору с собственным выходом в интернет, роутер его не увидит.Шаг 1. Посмотрите, какие устройства видит роутер
Откройте IP → Kid Control. В окне две вкладки: Kids (профили) и Devices (устройства). Вкладку Devices можно открыть до создания профилей: роутер сам добавляет в неё всё, что видит в ARP, как динамические записи с флагом D. У таких записей нет профиля, поэтому они ничем не ограничены. Среди них могут быть и служебные адреса, например MAC провайдера на WAN-порту.


Как это выглядит в WinBox 3 (Windows)


Найдите свой телефон или компьютер по IP-адресу и запомните его MAC-адрес. То же в терминале:
/ip kid-control device print stats
Колонки BYTES-DOWN и BYTES-UP показывают, сколько трафика устройство уже передало через роутер.
Шаг 2. Создайте профиль с расписанием
Профиль описывает, когда можно в интернет. Откройте IP → Kid Control → Kids → New, задайте имя (kid) и время по дням недели. Время записывается как окно «с-по»: 8h-20h значит «с 8:00 до 20:00». В WinBox 3 те же окна показываются в виде 08:00:00-20:00:00. В поле Rate Limit можно сразу задать скорость в формате «загрузка/отдача», например 2M/2M.



Как это выглядит в WinBox 3 (Windows)



То же командой. Будни разрешены с 8:00 до 20:00, выходные весь день, скорость 2 Мбит/с:
/ip kid-control add name=kid mon=8h-20h tue=8h-20h wed=8h-20h thu=8h-20h fri=8h-20h sat=0s-1d sun=0s-1d rate-limit=2M/2M
Как записываются окна, по итогам проверки на RouterOS 7.22 и 6.49:
8h-20h,08:00-20:00и8h30m-20h15mравнозначны.0s-1dзначит «весь день».- Пустое значение (
mon="") закрывает день целиком: интернета в этот день нет. - Окно не может переходить через полночь: конец обязан быть позже начала, иначе RouterOS ответит
end time must be bigger then start time. Если нужно «с 22:00 до 06:00», разбейте на два дня: вечер одного (22h-1d) и утро следующего (0s-6h). - Если при создании профиля не указать дни, RouterOS 7.22 подставит окна по умолчанию: в воскресенье 6h-21h, с понедельника по четверг 7h-21h, в пятницу 7h-22h, в субботу 6h-22h. Поэтому лучше задавать все дни явно.
- Скорость задаёт
rate-limit, например2M/2Mили512k/512k. Пустое значение снимает ограничение.
Второй набор полей, tur-mon … tur-sun (time unlimited rate), задаёт часы, когда скорость не ограничивается. Например, tur-sat=0s-1d снимает лимит на всю субботу. Важная оговорка: эти окна доступ не открывают. Если время вне окна sat, интернет закрыт, даже когда стоит tur-sat=0s-1d. RouterOS сам предупреждает об этом комментарием к профилю: Unlimited Rate does not grant access, it only changes the Rate Limit. Секунды в tur-* не поддерживаются.
/ip kid-control set kid tur-sat=0s-1d
Приостановить доступ вручную, не меняя расписание, можно командой /ip kid-control pause kid, вернуть расписание — /ip kid-control resume kid. В WinBox для этого кнопки Pause и Resume, а поля Pause Duration и Pause Till позволяют ограничить паузу по времени.
Шаг 3. Привяжите устройство к профилю
Откройте Kid Control → Devices → New и заполните три поля: Name (произвольное имя), MAC Address (адрес устройства из шага 1) и User (имя профиля из шага 2). Если создать устройство с MAC, который уже есть среди динамических записей, оно заменит динамическую.


Как это выглядит в WinBox 3 (Windows)


В терминале:
/ip kid-control device add name=laptop mac-address=AA:BB:CC:DD:EE:FF user=kid
Поле user обязательное: без него RouterOS переспросит значение, а профиль, которого нет, отклонит (input does not match any value of user). Один MAC можно добавить только один раз (already have device with this MAC address). Если вы удалите профиль, устройства, привязанные к нему, останутся в списке с «осиротевшим» значением в поле user. Удалять их нужно отдельно.
Шаг 4. Проверьте блокировку и открытие доступа
Проще всего проверить без ожидания вечера: временно сдвиньте часы роутера за пределы окна, например на 22:00 (/system clock set time=22:00:00), и подождите около 20 секунд, пока Kid Control обновит правила. На клиенте запустите ping на любой адрес в интернете. Он не уходит в таймаут: роутер отвечает сам, что сеть недоступна («Заданная сеть недоступна» в Windows, Destination Net Unreachable в Linux). Так работает action=reject.




Как это выглядит в WinBox 3 (Windows)



Что видно на роутере. В Kid Control → Devices у устройства флаг B (blocked). В IP → Firewall → Filter появились две динамические записи с комментарием laptop, kid-control и action=reject: одна по src-address, другая по dst-address устройства. Правила в mangle и raw Kid Control не создаёт.
/ip kid-control print /ip kid-control device print stats /ip firewall filter print
Флаги в списках: B blocked, L rate-limited (в окне доступа с лимитом), P paused, D dynamic, I inactive (устройство сейчас не видно в ARP), X disabled.
forward обычное (не динамическое) правило jump to kid-control rules и держит свои динамические правила в отдельной цепочке kid-control. На 6.49 динамические правила стоят прямо в forward, переход не нужен. Проверено: на 7.22 правило jump остаётся в firewall даже после удаления всех профилей, и его нужно удалить вручную.Теперь верните часы в разрешённое окно (/system clock set time=12:00:00). Через несколько секунд флаг B исчезнет, пинг пойдёт. Если у профиля есть rate-limit, у устройства появится флаг L, а вместо reject в firewall останутся правила accept для установленных соединений.


Как это выглядит в WinBox 3 (Windows)


На реальной сети часы менять не нужно: достаточно дождаться, когда наступит граница окна. Сдвиг времени удобен только для проверки.
Шаг 5. Ограничьте скорость
В разрешённое время устройство не блокируется, но скорость ограничена значением rate-limit профиля. Kid Control делает это динамической simple queue на IP-адрес устройства: смотрите Queues → Simple Queues (запись с флагом D и комментарием laptop, kid-control) или /queue simple print. В max-limit и limit-at будет значение из профиля.

Как это выглядит в WinBox 3 (Windows)

/queue simple print /ip kid-control set kid rate-limit=1M/1M
На стенде с лимитом 2M/2M UDP-поток с клиента упёрся в 2 Мбит/с, а динамическая очередь queue1 имела max-limit=2M/2M. Лимит действует на устройство целиком, а не на отдельные сайты, и пропадает на время окон tur-*: пока такое окно активно, динамическая очередь не создаётся.
Как привязать устройство надёжно
Kid Control опознаёт устройство только по MAC-адресу и IP из ARP. Отсюда два практических правила.
- Зарезервируйте адрес в DHCP. Закрепите за MAC постоянный адрес через
/ip dhcp-server lease make-static, как описано в статье про DHCP. Тогда правила всегда относятся к одному адресу, а в списке аренд сразу видно, какое устройство чьё. - Отключите случайные MAC на телефонах и планшетах. iOS (функция «Частный адрес Wi-Fi») и Android (режим «Случайный MAC») по умолчанию подставляют MAC, который отличается для каждой сети и иногда меняется. Устройство с таким адресом в Kid Control не опознаётся, и ограничения на него не действуют. Для домашней сети выберите режим «Использовать MAC устройства» (в iOS отключите «Частный адрес»), после этого привяжите именно его.
Если привязали устройство с неверным MAC, ошибки не будет: запись создастся, но будет неактивной (флаг I), правил на клиента нет, и ночью его интернет работает как обычно. Сверьте MAC устройства с динамической записью в Devices и с /ip dhcp-server lease print.


Как это выглядит в WinBox 3 (Windows)


Что Kid Control не умеет
- Не фильтрует сайты и приложения. Он управляет временем и скоростью, а не содержимым. YouTube, соцсети и игры блокируются только вместе со всем интернетом.
- Не видит содержимое HTTPS. Блокировка по домену на уровне роутера требует DNS-фильтрации или отдельных правил firewall, это другая задача.
- Не защищает от обхода. VPN, мобильный интернет, чужая точка доступа и смена MAC-адреса обходят правила. Kid Control — удобное ограничение, а не защита от изобретательного подростка.
- Зависит от времени на роутере. Если часы уехали (нет NTP, сел RTC, неверный часовой пояс), окно сдвинется.
- Работает только с IPv4. На RouterOS 7.22 в блокировке в
/ipv6 firewall filterправил нет, для IPv6-трафика Kid Control ничего не создаёт. Если в сети включён IPv6, отдельно ограничьте его. - Не заменяет firewall. Он не защищает вашу сеть от внешних атак, а правила Kid Control динамические и существуют только пока профиль активен.
- Окна не переходят через полночь, поэтому ночные интервалы надо разбивать на два дня.
Не работает: разбор проблем
| Симптом | Причина | Что сделать |
|---|---|---|
| Ночью интернет у ребёнка работает | Устройство не опознано: MAC в Devices не совпадает с реальным (случайный MAC, ошибка при вводе) или устройство не в этой сети | Сверьте MAC, отключите случайные MAC в настройках Wi-Fi телефона |
Устройство в списке с флагом I | Роутер не видит его в ARP: оно выключено, в другой сети или MAC неверный | Включите устройство, проверьте /ip arp print и MAC |
| Блокировка наступает не в то время | Неверные часы или часовой пояс роутера | /system clock print, настройте /system ntp client и часовой пояс |
Окно не сохраняется: end time must be bigger then start time | Окно через полночь | Разбейте на два дня: 22h-1d и 0s-6h |
| В выходной нет интернета, хотя день не закрывали | Не заданы окна: при создании профиля подставились значения по умолчанию, либо день оставили пустым ("") | Проверьте /ip kid-control print, задайте все дни явно |
tur-* не открыл доступ | Окна «unlimited rate» меняют только скорость | Доступ открывает окно дня (mon … sun) |
После удаления профилей в firewall осталось правило jump to kid-control rules | На RouterOS 7 оно не динамическое и само не удаляется | /ip firewall filter remove [find chain=forward action=jump jump-target=kid-control] |
| Устройство ограничено, а IPv6-трафик идёт | Kid Control создаёт правила только для IPv4 | Отдельно ограничьте IPv6 или отключите его в LAN |
| Лимит скорости не заметен | Окно tur-* снимает лимит, либо rate-limit пуст | Проверьте /queue simple print: есть ли динамическая очередь |
Частые вопросы
Заменяет ли Kid Control firewall? Нет. Это надстройка для расписания и скорости, а защита сети строится обычными правилами firewall. Kid Control лишь добавляет свои динамические правила.
Можно ли закрыть только YouTube или конкретные сайты? Нет, Kid Control работает с устройством целиком. Для сайтов используйте DNS-фильтрацию или отдельные правила, но они не заменят расписание.
Помогает ли против VPN? Нет. Если устройство подключится к интернету не через ваш роутер (мобильный интернет, чужой Wi-Fi), правила не сработают. Туннель VPN через роутер блокируется вместе с остальным трафиком, но обойти его ограничения можно поменяв сеть.
Что будет, если часы роутера неверны? Расписание сдвинется. Настройте /system ntp client и часовой пояс (/system clock set time-zone-name=...).
Сколько устройств можно привязать к профилю? Сколько нужно: у каждого ребёнка обычно телефон, планшет и ноутбук. Каждое добавляется отдельной записью в /ip kid-control device с одним и тем же user.
Чем отличаются RouterOS 7 и 6? Команды и поля те же. Отличается устройство правил: на 7.22 используется отдельная цепочка kid-control с переходом из forward, на 6.49 правила лежат прямо в forward.
Открытый урок · бесплатно
Настройте Kid Control руками на живом стенде
Свой роутер не нужен. На каждом открытом уроке стенды уже прогреты: RouterOS загружена, доступ выдан. Вы создаёте профиль с расписанием, привязываете клиента по MAC-адресу, проверяете блокировку и открытие доступа, а тренер отвечает на вопросы по ходу.
Стенд онлайн
Подключение за пару минут
Практика
Шаги 1–5 из этой статьи
Тренер рядом
Разбор ваших вопросов вживую
Ближайший урок: [ДАТА И ВРЕМЯ УРОКА]


