И так, отчитаюсь.
Мне очень понравилась конструкцияhttp://wl500g.info/showthread.php?25...736#post193736 уважаемого bbsc, и я ее немного модифицировал под свои нужды, поскольку Чилдрена у меня два, одному нужно ложится пораньше, а другому можно попозже и у старшего имеется комп, телефон и планшет...
Получилось вот так, первый вечер - полет нормальный:
В /usr/local/sbin/post-firewall у меня только это:
Code:
#!/bin/sh
iptables -N Child1
iptables -A Child1 -j DROP
iptables -N Child2
iptables -A Child2 -j DROP
iptables -N Child3
iptables -A Child3 -j DROP
iptables -I FORWARD -m mac --mac-source XX:XX:XX:XX:XX:01 -o vlan1 -j Child1
iptables -I FORWARD -m mac --mac-source XX:XX:XX:XX:XX:02 -o vlan1 -j Child2
iptables -I FORWARD -m mac --mac-source XX:XX:XX:XX:XX:03 -o vlan1 -j Child2
iptables -I FORWARD -m mac --mac-source XX:XX:XX:XX:XX:04 -o vlan1 -j Child2
iptables -I FORWARD -m mac --mac-source XX:XX:XX:XX:XX:05 -o vlan1 -j Child3
iptables -I FORWARD -m mac --mac-source XX:XX:XX:XX:XX:06 -o vlan1 -j Child3
## Включаем ребенку интернет по времени
iptables -I Child1 -m time --timestart 10:00:00 --timestop 23:30:00 --weekdays Fri,Sat -j RETURN
iptables -I Child2 -m time --timestart 10:00:00 --timestop 01:30:00 --weekdays Fri,Sat -j RETURN
iptables -I Child3 -m time --timestart 08:00:00 --timestop 02:30:00 --weekdays Fri,Sat -j RETURN
iptables -I Child1 -m time --timestart 08:00:00 --timestop 22:30:00 --weekdays Sun,Mon,Tue,Wed,Thu -j RETURN
iptables -I Child2 -m time --timestart 08:00:00 --timestop 00:30:00 --weekdays Sun,Mon,Tue,Wed,Thu -j RETURN
iptables -I Child3 -m time --timestart 08:00:00 --timestop 01:30:00 --weekdays Sun,Mon,Tue,Wed,Thu -j RETURN
На этапе отладки в post-firewall разместил закоментированную табличку с МАКами моих железок. Кроме того, Child3 - это мои комп и ноутбук, для теста, отладки и контроля.
Изящность конструкции в том, что для каждого ребенка мы описываем МАКи его железок, а отдельно составлеяемое расписание действует для всех этих железок.
Скрипты для исключений из расписания (OFF; OFFF; ON) предложенные bbsc я пока тестирую (их также три комплекта - для каждого ребенка свой набор). У меня есть подозрение, что стоит мне один раз включить (скриптом ON) доступ к Интернет, и он останется включенным до перезагрузки роутера, или до отмены правила. А скрипт OFF правило запрета не отменяет, а добавляет еще одно - разрешающее (я дуб в этом вопросе, может как раз все будет правильно работать...).
Дабы далеко не искать, покажу предложенные bbsc скрипты здесь.
Скрипт On1 (для первого чилдрена):
Code:
#!/bin/sh
iptables -F Child1
iptables -A Child1 -j RETURN
iptables -L Child1 && echo -e "Internet для Child1 ВКлючен\n"
Скрипт Off1:
Code:
#!/bin/sh
iptables -F Child1
iptables -A Child1 -j DROP
### Во время действия летнего времени срабатывает на 1 час позже:
iptables -I Child1 1 -m time --timestart 08:00:00 --timestop 22:00:00 --days Sun,Mon,Tue,Wed,Thu,Fri,Sat -j RETURN
echo
iptables -L Child1 && echo -e "Internet для Child1 с 8 до 22\n"
Ну и скрипт Offf1:
Code:
#!/bin/sh
iptables -F Child1
iptables -A Child1 -j DROP
echo
iptables -L Child1 && echo -e "Internet для Child1 ВЫключен СОВСЕМ\n"
Все описанное проверялось на последней прошивке от Олега и Энтузиастов (1.9.2.7-rtn-r4772). Подключение к Интернет провайдеру через стандартный WAN-порт, тип подключения - "Automatic IP". Для работы внешний накопитель не нужен (винчестер или флешка).