Стандартные методы родительского контроля часто бывают неудобными: либо вы блокируете всё, кроме пары сайтов, либо тратите кучу времени на ручное ведение "белых списков". Этот метод предлагает элегантное и гибкое решение.

Идея проста: по умолчанию интернет на устройстве ребенка полностью заблокирован. Но как только вы заходите на какой-либо сайт или используете приложение на своем "контрольном" телефоне, его адрес автоматически добавляется в "белый список", и ребенок тут же получает к нему доступ. Вы управляете доступом, просто пользуясь своим телефоном.

Как это работает (концепция)

  1. Блокировка по умолчанию: Мы создаем правило, которое блокирует весь интернет-трафик для устройства ребенка, идентифицируя его по уникальному MAC-адресу.

  2. Динамический "белый список": Мы создаем специальный список адресов (Address List), который изначально пуст.

  3. Правило-шпион: Мы настраиваем правило, которое следит за интернет-активностью контрольного телефона. Когда он заходит на новый ресурс, его IP-адрес автоматически заносится в "белый список".

  4. Правило-исключение: Мы создаем еще одно, самое важное правило. Оно стоит выше блокировки и разрешает ребенку доступ только к тем адресам, которые в данный момент находятся в "белом списке".

Что вам понадобится

  1. Доступ к настройкам вашего роутера MikroTik (через WinBox или веб-интерфейс).

  2. MAC-адрес устройства ребенка (например, AA:BB:CC:11:22:33).

  3. MAC-адрес вашего контрольного телефона (например, DD:EE:FF:44:55:66).


Шаг 1: Пошаговая настройка в терминале

Откройте в WinBox или веб-интерфейсе New Terminal и последовательно введите следующие команды. Не забудьте заменить MAC-адреса на ваши!

Создаем "белый список"

/ip firewall address-list add list=allowed_for_child comment="Whitelist for Child"

Эта команда создает пустой список адресов с именем allowed_for_child. Именно сюда будут автоматически добавляться разрешенные IP-адреса.

Создаем правило для отслеживания контрольного телефона

/ip firewall mangle add action=add-dst-to-address-list address-list=allowed_for_child address-list-timeout=none chain=prerouting src-mac-address=DD:EE:FF:44:55:66 connection-state=new comment="Populate whitelist from control phone"

Это самое умное правило. Оно следит за трафиком контрольного телефона (с MAC-адресом DD:EE:FF:44:55:66) и, как только обнаруживает новое соединение, добавляет IP-адрес назначения в наш "белый список" allowed_for_child. Параметр address-list-timeout=none означает, что адрес добавляется навсегда.

Создаем разрешающее правило для ребенка

/ip firewall filter add action=accept chain=forward dst-address-list=allowed_for_child src-mac-address=AA:BB:CC:11:22:33 comment="ALLOW child access to whitelist"

Это правило разрешает устройству ребенка (определяемому по его MAC-адресу AA:BB:CC:11:22:33) обращаться к любому IP-адресу, который находится в списке allowed_for_child.

Создаем блокирующее правило по умолчанию

/ip firewall filter add action=drop chain=forward src-mac-address=AA:BB:CC:11:22:33 comment="BLOCK all other internet for child"

Это финальное правило. Оно блокирует весь остальной интернет-трафик для устройства ребенка, который не был разрешен предыдущим правилом.

Шаг 2: Проверка порядка правил (Критически важно!)

Брандмау��р MikroTik обрабатывает правила последовательно, сверху вниз. Чтобы наша система работала, разрешающее правило обязательно должно стоять выше блокирующего.

  1. Перейдите в IP -> Firewall.

  2. Откройте вкладку Filter Rules.

  3. Убедитесь, что правило с комментарием ALLOW child access to whitelist находится НАД правилом с комментарием BLOCK all other internet for child.

  4. Если порядок неверный, просто нажмите на разрешающее правило и, удерживая левую кнопку мыши, перетащите его выше блокирующего.

Шаг 3: Как этим пользоваться и управлять

Система полностью настроена и уже работает.

  • Чтобы дать доступ: Просто откройте нужный сайт, игру или приложение на своем контрольном телефоне. Их сетевые адреса автоматически попадут в "белый список".

  • Чтобы отозвать доступ: Поскольку мы установили бесконечное время (timeout=none), "белый список" нужно чистить вручную.

    1. Перейдите в IP -> Firewall -> вкладка Address Lists.

    2. Найдите и выделите IP-адрес, доступ к которому вы хотите закрыть.

    3. Нажмите на красный минус (-) для удаления. Доступ будет мгновенно закрыт.


На каких еще роутерах можно это настроить?

Описанная схема очень изящно реализуется на MikroTik благодаря одной ключевой функции — action=add-dst-to-address-list. Это встроенный инструмент, который делает всю сложную работу за нас. На других платформах достижение того же результата потребует больше усилий.

Категория 1: Почти невозможно (Обычные домашние роутеры)

На стоковых (заводских) прошивках большинства роутеров от TP-Link, D-Link, Asus, Netgear и т.д. реализовать такую схему не получится. Их брандмауэры не обладают необходимой гибкостью для отслеживания трафика и динамического изменения списков доступа.

Категория 2: Возможно, но сложнее (Продвинутые и Pro-роутеры)

  • OpenWrt: Потребуется комбинация iptables, ipset и написание кастомного скрипта, который будет анализировать системные логи и добавлять IP-адреса в ipset. Сложность: Высокая.

  • Keenetic: Принцип схож с OpenWrt, но потребует адаптации скриптов под синтаксис и особенности KeeneticOS. Сложность: Средняя/Высокая.

  • Ubiquiti UniFi (USG/UDM): Потребует глубокой работы с конфигурационными файлами в формате JSON, что выходит далеко за рамки стандартных нас��роек. Сложность: Высокая.

Категория 3: Возможно для энтузиастов (pfSense / OPNsense)

На программных роутерах это реализуемо, но, как и в OpenWrt, потребует настройки логирования трафика и создания скрипта, который будет парсить лог и добавлять IP-адреса в нужную таблицу брандмауэра. Сложность: Высокая.

Итоговое сравнение

Платформа

Возможность реализации

Ключевые инструменты

Сложность

MikroTik RouterOS

Да (штатными средствами)

Firewall Mangle, Address List

Низкая

OpenWrt

Да

iptables, ipset, кастомный скрипт

Высокая

Keenetic

Да (теоретически)

CLI, ipset, кастомный скрипт

Средняя/Высокая

pfSense / OPNsense

Да

Логирование, pf Tables, кастомный скрипт

Высокая

Стоковые прошивки

Нет

Отсутствуют необходимые инструменты

Невозможно

Вывод: Хотя теоретически подобную логику можно воспроизвести на других гибких системах, MikroTik является уникальной платформой, позволяющей реализовать эту удобную схему родительского контроля буквально за несколько минут без необходимости писать и поддерживать собственные скрипты.