Търсената конфигурация освен стандартните неща (NAT, DHCP server, Firewall, PPTP server etc) трябва да
1. Дава достъп до Интернет през WiFi на всички без досадното въвеждане на user/pass. Познатите IP-ta са със статични резервации в DHCP сървъра и са без ограничения в скоростта. Непознатите (на всеки му се случва да остане без връзка) са ограничени на 256к - напълно достатъчно за да се свърши спешната и важна работа без да съм афектив аз
2. Ученика да набляга на ученето, а не на висене във FB и гледане на Youtube клипчета.
За него схемата е : неограничен WiFi достъп (улесняват се нещата от факта, че ползва Интернет само то телефона - т.е. 1 IP) понеделник - четвъртък от 18 до 23h; петък от 16h до 12.00 в неделя и неделя от 18 до 23. През останалото време Интернет не му се полага (в моят случай шейпъра се сет-ва на 1к които не стигат за нищо)
Обща картинка на нещата:
Микротик конфиг-а: file
### Първият адрес е за WiFi мрежата, а вторият за LAN-a
/ip address
add address=192.168.0.1/24 disabled=no interface=ether4-WiFi network=192.168.0.0
add address=192.168.100.1/24 disabled=no interface=LAN network=192.168.100.0
### Два DHCP сървъра обслужващи клиентите за LAN & WiFi
/ip dhcp-server network
add address=192.168.0.0/24 dhcp-option="" dns-server="" gateway=192.168.0.1 \
ntp-server="" wins-server=""
add address=192.168.100.0/24 dhcp-option="" dns-server="" gateway=\
192.168.100.1 ntp-server="" wins-server=""
### Статични записи за "знайните" WiFi клиенти
### Използват се после в address list-а (който пък маркира пакетите) и queue-то
/ip dhcp-server lease
add address=192.168.0.111 always-broadcast=yes \
comment=SilverLight disabled=no mac-address=MY:MA:CA:DD:RE:SS server=\
dhcp-WiFi
add address=192.168.0.11 always-broadcast=yes \
comment="HTC Leo" disabled=no mac-address=MY:MA:CA:DD:RE:SS
add address=192.168.100.111 comment="RAIN" \
disabled=no mac-address=MY:MA:CA:DD:RE:SS server=dhcp-LAN
add address=192.168.0.20 comment=\
"Alex Galaxy 2" disabled=no mac-address=MY:MA:CA:DD:RE:SS
### Всички IP (респективно устройства) които ги "познавам"
### Address-List-a позволява обръщението към 1 обект който
### съдържа в себе списък с IP-та
/ip firewall address-list
add address=192.168.0.11 disabled=no list=known-wifi
add address=192.168.0.20 disabled=no list=known-wifi
add address=192.168.0.111 disabled=no list=known-wifi
add address=192.168.100.0/24 disabled=no list=known-wifi
### Маркиране на connections & packets
### На базата на тази маркировката се построява Queue-то
/ip firewall mangle
### Маркиране като Unknown на всички които не са в address list от познати IP_та (known-wifi)
add action=mark-connection chain=prerouting comment=\
"Unknown WiFi Connections" disabled=no dst-address-list=!known-wifi \
new-connection-mark=unknown-wifi-connections passthrough=yes
add action=mark-packet chain=prerouting connection-mark=\
unknown-wifi-connections disabled=no new-packet-mark=unknown-wifi-packets \
passthrough=yes
### Маркиране като Known на всички познати IP-та които са в address list
add action=mark-connection chain=prerouting comment="Known WiFi Connections" \
disabled=no new-connection-mark=known-wifi passthrough=yes \
src-address-list=know-wifi
add action=mark-packet chain=prerouting connection-mark=known-wifi disabled=\
no new-packet-mark=known-wifi passthrough=yes
### Маркирам трафика от IP-то на Алекс
add action=mark-packet chain=prerouting disabled=no new-packet-mark=\
alex-wifi-packet passthrough=yes src-address=192.168.0.20
/queue simple
### Непознатите IP-та се шейпят на 32кб upload/download с burst до 256к за 10сек
add burst-limit=256k/256k burst-threshold=128k/128k burst-time=10s/10s \
direction=both disabled=no interface=ether4-WiFi limit-at=32k/32k \
max-limit=32k/32k name=WiFi packet-marks=unknown-wifi-packets parent=none \
priority=8 queue=default/default target-addresses="" time=\
0s-1d,sun,mon,tue,wed,thu,fri,sat total-queue=default
### Познатите (тези в address-list known-wifi) ca unlimited
add burst-limit=0/0 burst-threshold=0/0 burst-time=0s/0s direction=both disabled=no interface=all \
limit-at=0/0 max-limit=0/0 name=All-other packet-marks=known-wifi parent=none priority=8 queue=\
default-small/default-small target-addresses="" total-queue=default-small
### Queue-то което ограничва конкретно IP на 1к (има връзка ама все едно няма)
add burst-limit=0/0 burst-threshold=0/0 burst-time=0s/0s direction=both \
disabled=no interface=all limit-at=1k/1k max-limit=1k/1k name=Alex-No \
packet-marks="" parent=none priority=8 queue=default/default \
target-addresses=192.168.0.20/32 total-queue=wireless-default
### За същото IP махаме ограниченията
add burst-limit=0/0 burst-threshold=0/0 burst-time=0s/0s direction=both \
disabled=yes interface=all limit-at=0/0 max-limit=0/0 name=Alex-Yes \
packet-marks="" parent=none priority=8 queue=default/default \
target-addresses=192.168.0.20/32 total-queue=wireless-default
### Скриптовете които се изпълняват в определено време
/system script
### Скрипт за разрешаване на ограничението за определно IP
add name=Alex-No policy=\
ftp,reboot,read,write,policy,test,winbox,password,sniff,sensitive,api \
source="/queue simple enable Alex-No; /queue simple disable Alex-Yes"
### Скрипт за спиране на ограничението
add name=Alex-Yes policy=\
ftp,reboot,read,write,policy,test,winbox,password,sniff,sensitive,api \
source="/queue simple enable Alex-Yes; /queue simple disable Alex-No"
### Скрипта които се изпълнява в Петък (за Петък-Неделя важат други правила)
### в 17.00 "разрешава" интернет-а и прекратява автоматичното му спиране в 23.00
### Локигата е, че до 16.00 все още е в сила ограничението от Четвъртък
add name=Alex-Friday policy=\
ftp,reboot,read,write,policy,test,winbox,password,sniff,sensitive,api \
source=\
"/queue simple enable Alex-Yes; /system scheduler disable Alex-No;"
### Скрипта който се изпълнява в неделя
### в 12.00 спира Интернета и се разрешава автоматичното му спиране в 23.00
### логиката е, че в 12.00 ще се стартира ограничението на 1к и то ще работи
### докато не се стартира скрипта за "пускане" в 18.00.
### Междувременно се разрешава правилото за всекидневно стартиране на ограниченията в 23.00
### което е забранено от скрипта стартиран в Петък
add name=Alex-Sunday policy=\
ftp,reboot,read,write,policy,test,winbox,password,sniff,sensitive,api \
source="/queue simple enable Alex-No; /system scheduler enable Alex-No;"
### Старане на определени скриптове в определено време
/system scheduler
### Всеки ден след 18.00 Интернет-а е unlimited...
add disabled=no interval=1d name=Alex-Yes on-event=Alex-Yes policy=\
ftp,reboot,read,write,policy,test,winbox,password,sniff,sensitive,api \
start-date=sep/17/2012 start-time=18:00:00
### ... но само до 23.00 часа (на следващият ден трябва да се става в 6.15)
add disabled=no interval=1d name=Alex-No on-event=Alex-No policy=\
ftp,reboot,read,write,policy,test,winbox,password,sniff,sensitive,api \
start-date=sep/17/2012 start-time=23:00:00
### Петък след 16.00 до неделя - свободен интернет достъп
### Стартира се веднъж седмично [start-date & interval]
add disabled=no interval=1w name=Enable-Alex-Friday on-event=Alex-Friday \
policy=\
ftp,reboot,read,write,policy,test,winbox,password,sniff,sensitive,api \
start-date=sep/14/2012 start-time=16:00:00
### В неделя от 12.00 до 18.00 не е време за интернет
### Стартира се веднъж седмично [start-date & interval]
add disabled=no interval=1w name=Enable-Alex-Sunday on-event=Alex-Sunday \
policy=\
ftp,reboot,read,write,policy,test,winbox,password,sniff,sensitive,api \
start-date=sep/30/2012 start-time=12:00:00