0% found this document useful (0 votes)
40 views3 pages

Speed

The document configures different user profiles for a WiFi hotspot with varying speed limits. Traffic is classified and queued based on source address and assigned to priority queues to implement the speed limits for each user profile.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
40 views3 pages

Speed

The document configures different user profiles for a WiFi hotspot with varying speed limits. Traffic is classified and queued based on source address and assigned to priority queues to implement the speed limits for each user profile.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 3

/ip hotspot user profile

set [ find default=yes ] on-login=":do {:local mac \$\"mac-address\";:local ip\


a \"\$address\";:local usr \"\$user\";:local class \"class_d\";:delay 1s;:\
do {:local list [/ip firewall address-list find where address=\"\$ipa\" an\
d list~\"class_\"];:local lastIndex ([:len [\$list]]-1);:local lastAddress\
\_(\$list->(\$lastIndex)); :set class [/ip firewall address-list get \$las\
tAddress list ];/ip firewall address-list remove numbers=[:pick \$list 0 \
\$lastIndex];} on-error={};:local queueName \"<Speed-limit>-\$usr\";:do {/\
queue simple remove [find where target=\"\$ipa/32\" && name~\"[^\$queueNam\
e]\"];/queue simple add name=\"\$queueName\" priority=8/8 queue=(\$class.\
\"_u/\$class\") target=\"\$ipa\" place-before=queue1;} on-error={:if (clas\
s!=\"\") do={/queue simple set [find name=\"\$queueName\" ] queue=\"u/\$cl\
ass\" target=\"\$ipa\";};};} on-error={};\r\
\n{\r\
\n:local a \$address;\r\
\n:local u \$user;\r\
\n/ip hotspot active remove [find user=\$u && address!=\$a]\r\
\n}" on-logout=":do {:local usr \"\$user\";:local queueName \"<Speed-limit\
>-\$usr\";/queue simple remove [find name=\"\$queueName\"];} on-error={};" \
shared-users=unlimited status-autorefresh=20s
add name=admin on-login="{\r\
\n:local a \$address;\r\
\n:local u \$user;\r\
\n/ip hotspot active remove [find user=\$u && address!=\$a]\r\
\n}" shared-users=unlimited
add name=Free on-login="{\r\
\n:local a \$address;\r\
\n:local u \$user;\r\
\n/ip hotspot active remove [find user=\$u && address!=\$a]\r\
\n}" rate-limit=64K/720K shared-users=unlimited status-autorefresh=10s
add name=6speed on-login="{\r\
\n:local a \$address;\r\
\n:local u \$user;\r\
\n/ip hotspot active remove [find user=\$u && address!=\$a]\r\
\n}" rate-limit=384K/6144K shared-users=unlimited
add name=2speed on-login="{\r\
\n:local a \$address;\r\
\n:local u \$user;\r\
\n/ip hotspot active remove [find user=\$u && address!=\$a]\r\
\n}" rate-limit=1024K/2046K shared-users=unlimited status-autorefresh=10s
add name=512K on-login="{\r\
\n:local a \$address;\r\
\n:local u \$user;\r\
\n/ip hotspot active remove [find user=\$u && address!=\$a]\r\
\n}" rate-limit=64K/512K shared-users=unlimited

---------------------------------

/queue simple
add name=queue1 target=5.0.0.5/32
/queue type
add kind=pcq name=class_a pcq-burst-time=16s pcq-classifier=dst-address \
pcq-limit=5000KiB pcq-rate=512k pcq-total-limit=20000KiB
add kind=pcq name=class_a_u pcq-burst-time=16s pcq-classifier=src-address \
pcq-limit=5000KiB pcq-rate=256k pcq-total-limit=20000KiB
add kind=pcq name=class_b pcq-burst-time=16s pcq-classifier=dst-address \
pcq-limit=5000KiB pcq-rate=1M pcq-total-limit=20000KiB
add kind=pcq name=class_b_u pcq-burst-time=16s pcq-classifier=src-address \
pcq-limit=5000KiB pcq-rate=384k pcq-total-limit=20000KiB
add kind=pcq name=class_c pcq-burst-time=16s pcq-classifier=dst-address \
pcq-limit=5000KiB pcq-rate=2M pcq-total-limit=20000KiB
add kind=pcq name=class_c_u pcq-burst-time=16s pcq-classifier=src-address \
pcq-limit=5000KiB pcq-rate=512k pcq-total-limit=20000KiB
add kind=pcq name=class_d pcq-burst-time=16s pcq-classifier=dst-address \
pcq-limit=5000KiB pcq-rate=4M pcq-total-limit=20000KiB
add kind=pcq name=class_d_u pcq-burst-time=16s pcq-classifier=src-address \
pcq-limit=5000KiB pcq-rate=1M pcq-total-limit=20000KiB
add kind=pcq name=class_e pcq-burst-time=16s pcq-classifier=dst-address \
pcq-limit=5000KiB pcq-rate=8M pcq-total-limit=20000KiB
add kind=pcq name=class_e_u pcq-burst-time=16s pcq-classifier=src-address \
pcq-limit=5000KiB pcq-rate=2M pcq-total-limit=20000KiB
add kind=pcq name=class_f pcq-burst-time=16s pcq-classifier=dst-address \
pcq-limit=5000KiB pcq-rate=10M pcq-total-limit=20000KiB
add kind=pcq name=class_f_u pcq-burst-time=16s pcq-classifier=src-address \
pcq-limit=5000KiB pcq-rate=4M pcq-total-limit=20000KiB
set 21 kind=sfq

--------------------------

/ip firewall address-list


add address=10.0.0.0/22 list=Local
add address=172.20.0.0/16 list=Local
add address=10.0.0.0/22 list=Local2
add address=172.20.0.0/16 list=Local2
add address=8.8.8.8 list=Local2
add address=8.8.4.4 list=Local2
add address=1.1.1.1 list=Local2
add address=1.0.0.1 list=Local2
add address=1.1.1.3 list=Local2
add address=1.1.1.0 list=Local2

---------------------------

/ip firewall raw


add action=add-src-to-address-list address-list=class_a address-list-timeout=\
3d chain=prerouting comment=Speed-Limter-BY-TTYE content=\
55987b0d-ca6d-464f-93c8-db9ac4a08aaa dst-port=80 hotspot=from-client \
protocol=tcp
add action=add-src-to-address-list address-list=class_b address-list-timeout=\
3d chain=prerouting content=55987b0d-ca6d-464f-93c8-db9ac4a08bbb \
dst-port=80 hotspot=from-client protocol=tcp
add action=add-src-to-address-list address-list=class_c address-list-timeout=\
3d chain=prerouting content=55987b0d-ca6d-464f-93c8-db9ac4a08ccc \
dst-port=80 hotspot=from-client protocol=tcp
add action=add-src-to-address-list address-list=class_d address-list-timeout=\
3d chain=prerouting content=55987b0d-ca6d-464f-93c8-db9ac4a08ddd \
dst-port=80 hotspot=from-client protocol=tcp
add action=add-src-to-address-list address-list=class_e address-list-timeout=\
3d chain=prerouting content=55987b0d-ca6d-464f-93c8-db9ac4a08eee \
dst-port=80 hotspot=from-client protocol=tcp
add action=add-src-to-address-list address-list=class_f address-list-timeout=\
3d chain=prerouting content=55987b0d-ca6d-464f-93c8-db9ac4a08fff \
dst-port=80 hotspot=from-client protocol=tcp

You might also like