Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- {
- #####YOU NEED TO CONFIGURE THESE BITS#####
- #####LAN is the LAN interface, such as bridgeX or etherX#####
- #####WAN is the WAN interface, such as pppoe_out1 or etherX#####
- #####UPLOAD is the upload speed of the connection, set this as accurately as you can#####
- #####DOWNLOAD is the download speed of the connection, set this about 5% higher than actual#####
- :local LAN "INTERFACE"
- :local LANRANGE "IPRANGE/24"
- :local WAN "ether1-wan"
- :local UPLOAD "20M"
- :local DOWNLOAD "20M"
- #####NO FURTHER CONFIGURATION NEEDED#####
- /ip firewall mangle
- add action=mark-packet chain=output comment="mark router dns" dst-port=53 new-packet-mark=router-dns out-interface="$WAN" passthrough=no protocol=tcp
- add action=mark-packet chain=output comment="mark router dns" dst-port=53 new-packet-mark=router-dns out-interface="$WAN" passthrough=no protocol=udp
- add action=mark-packet chain=output comment="mark router winbox" dst-port=8291 new-packet-mark=router-winbox out-interface="$WAN" passthrough=no protocol=tcp
- add action=mark-packet chain=output comment="mark router ssh" dst-port=22 new-packet-mark=router-ssh out-interface="$WAN" passthrough=no protocol=tcp
- add action=mark-packet chain=output comment="mark router icmp" new-packet-mark=router-icmp out-interface="$WAN" passthrough=no protocol=icmp
- add action=mark-packet chain=forward comment="mark download" in-interface="$WAN" new-packet-mark=download dst-address="$LANRANGE" packet-mark=no-mark passthrough=yes
- add action=mark-packet chain=forward comment="mark acks" src-address="$LANRANGE" new-packet-mark=acks out-interface="$WAN" packet-size=0-123 passthrough=no protocol=tcp tcp-flags=ack
- add action=mark-packet chain=forward comment="mark dns" dst-port=53 src-address="$LANRANGE" new-packet-mark=dns out-interface="$WAN" passthrough=no protocol=tcp
- add action=mark-packet chain=forward comment="mark dns" dst-port=53 src-address="$LANRANGE" new-packet-mark=dns out-interface="$WAN" passthrough=no protocol=udp
- add action=mark-packet chain=forward comment="mark icmp" src-address="$LANRANGE" new-packet-mark=icmp out-interface="$WAN" passthrough=no protocol=icmp
- add action=mark-packet chain=forward comment="mark httpupload" connection-bytes=500000-0 dst-port=80 src-address="$LANRANGE" new-packet-mark=httpupload out-interface="$WAN" passthrough=no protocol=tcp
- add action=mark-packet chain=forward comment="mark httprequest" connection-bytes=0-500000 dst-port=80 src-address="$LANRANGE" new-packet-mark=httprequest out-interface="$WAN" passthrough=no protocol=tcp
- add action=mark-packet chain=forward comment="mark ftp" dst-port=20,21 src-address="$LANRANGE" new-packet-mark=ftp out-interface="$WAN" passthrough=no protocol=tcp
- add action=mark-packet chain=forward comment="mark sftp" dst-port=22 src-address="$LANRANGE" new-packet-mark=sftp out-interface="$WAN" packet-size=1400-1500 passthrough=no protocol=tcp
- add action=mark-packet chain=forward comment="mark ssh" dst-port=22 src-address="$LANRANGE" new-packet-mark=ssh out-interface="$WAN" packet-size=0-1400 passthrough=no protocol=tcp
- add action=mark-packet chain=forward comment="mark telnet" dst-port=23 src-address="$LANRANGE" new-packet-mark=telnet out-interface="$WAN" passthrough=no protocol=tcp
- add action=mark-packet chain=forward comment="mark https" dst-port=443 src-address="$LANRANGE" new-packet-mark=https out-interface="$WAN" passthrough=no protocol=tcp
- add action=mark-packet chain=forward comment="mark https" dst-port=443 src-address="$LANRANGE" new-packet-mark=httpsu out-interface="$WAN" passthrough=no protocol=udp
- add action=mark-packet chain=forward comment="mark mail" dst-port=25,110,143,993,587,995 src-address="$LANRANGE" new-packet-mark=mail out-interface="$WAN" passthrough=no protocol=tcp
- add action=mark-packet chain=forward comment="mark upload" src-address="$LANRANGE" new-packet-mark=upload out-interface="$WAN" packet-mark=no-mark passthrough=no
- /queue tree
- add max-limit="$DOWNLOAD" name=DOWNLOAD parent=global
- add name=download-other packet-mark=download parent=DOWNLOAD priority=1
- add max-limit="$UPLOAD" name=UPLOAD parent=global
- add name=ROUTER-UPLOAD parent=UPLOAD priority=1
- add name=router-icmp packet-mark=router-icmp parent=ROUTER-UPLOAD priority=4
- add name=router-dns packet-mark=router-dns parent=ROUTER-UPLOAD priority=4
- add name=router-winbox packet-mark=router-winbox parent=ROUTER-UPLOAD priority=4
- add name=router-ssh packet-mark=router-ssh parent=ROUTER-UPLOAD priority=4
- add name=LAN-UPLOAD parent=UPLOAD
- add name=ack-upriority packet-mark=acks parent=LAN-UPLOAD priority=1
- add name=dns-upriority packet-mark=dns parent=LAN-UPLOAD priority=2
- add name=httpd-upriority packet-mark=httpupload parent=LAN-UPLOAD
- add name=mail-upriority packet-mark=mail parent=LAN-UPLOAD priority=4
- add name=icmp-upriority packet-mark=icmp parent=LAN-UPLOAD priority=4
- add name=upload-other packet-mark=upload parent=LAN-UPLOAD
- add name=https-priority packet-mark=https parent=LAN-UPLOAD priority=4
- add name=httpsu-priority packet-mark=httpsu parent=LAN-UPLOAD
- add name=httpr-upload packet-mark=httprequest parent=LAN-UPLOAD priority=4
- add name=ftp-upload packet-mark=ftp parent=LAN-UPLOAD
- add name=sftp-upload packet-mark=sftp parent=LAN-UPLOAD
- add name=ssh-upload packet-mark=ssh parent=LAN-UPLOAD priority=4
- add name=telnet-upload packet-mark=telnet parent=LAN-UPLOAD priority=4
- #####Successful completion of script and fully imported####
- {
- :log info message="Router has been QoS'd. For more MikroTik scripts and tutorials please visit https://www.steveocee.co.uk/mikrotik"
- :beep frequency=660 length=100ms;
- :delay 150ms;
- :beep frequency=660 length=100ms;
- :delay 300ms;
- :beep frequency=660 length=100ms;
- :delay 300ms;
- :beep frequency=510 length=100ms;
- :delay 100ms;
- :beep frequency=660 length=100ms;
- :delay 300ms;
- :beep frequency=770 length=100ms;
- :delay 550ms;
- :beep frequency=380 length=100ms;
- :delay 575ms;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment