MikroTik
Kali ini saya akan mencoba sharing cara membatasi / limit aktifitas download file di mikrotik.
Banyak dari kita mengeluh dengan perilaku user yang hobi download file besar atau yang aneh-
aneh. Mungkin ini diperlukan jika dalam topologi jaringan mikrotik, misalnya dalam jaringan
kantor, jaringan warnet, jaringan rt rw net atau ISP yang menjual koneksi internet Up To atau
tidak dedicated 1:1. Kita akan direpotkan oleh satu user yang berprilaku tukang download dan
menghabisi jatah bandwidth user lain.
Disini bagian ini kita pakai tehnik L7 Filtering untuk limit download file sesuai ektensi file yang
Anda ditentukan, bisa untuk limit bandwidth download file exe, rar, zip, iso dan lain-lain.
Pertama, kita buat filtering regex content L7, tentukan string yang akan kita cari.
/ip firewall layer7-protocol
add name="Extension \" .exe \"" regexp="^.*get.+\\.exe.*\$"
add name="Extension \" .mp4 \"" regexp="^.*get.+\\.mp4.*\$"
add name="Extension \" .rar\"" regexp="^.*get.+\\.rar.*\$"
add name="Extension \" .zip\"" regexp="^.*get.+\\.zip.*\$"
Contoh di sini saya akan menggunakan string atau ekstensi file download hanya untuk file yang
berekstensi exe, mp4, rar, dan zip. Anda bisa tambahkan sesuai kebutuhan.
Kedua, kita menandakan/mangle koneksi user berdasarkan regex L7 yang sebelumnya di buat
untuk di proses lebih lanjut di queue bandwidth management mikrotik
/ip firewall mangle
add action=mark-connection chain=prerouting in-interface=ether2-master-local
\
layer7-protocol="Extension \" .exe \"" new-connection-mark=download_conn
add action=mark-connection chain=prerouting in-interface=ether2-master-local
\
layer7-protocol="Extension \" .mp4 \"" new-connection-mark=download_conn
add action=mark-connection chain=prerouting in-interface=ether2-master-local
\
layer7-protocol="Extension \" .rar\"" new-connection-mark=download_conn
add action=mark-connection chain=prerouting in-interface=ether2-master-local
\
layer7-protocol="Extension \" .zip\"" new-connection-mark=download_conn
add action=mark-connection chain=prerouting in-interface=ether2-master-local
new-connection-mark=all_conn
add action=mark-packet chain=prerouting connection-mark=download_conn new-
packet-mark=download_packet
add action=mark-packet chain=prerouting connection-mark=all_conn new-packet-
mark=all_packet
Di langkah ini saya anggap juga seperti cara setting memisahkan kecepatan bandwidth untuk
browsing dan kecepatan untuk download file.
Di setting simple queue diatas saya contohkan untuk memisahkan kecepatan untuk browsing dan
untuk download file :
Keempat, kita test apakah setting memisahkan kecepatan browsing dan download berjalan
dengan baik :
Di gambar diatas, terlihat saat saya download file berekstensi .zip ter limit kecepatannya. Sesuai
kecepatan yang saya setting di simple queue mikrotik. Terlihat juga walaupun user pakai internet
download manager (IDM) ikut ter limit kecepatannya. Atau jika anda tidak mengijinkan user
menggunakan aplikasi IDM (internet download manager) di jaringan anda, anda bisa coba tehnik
di bawah ini :
Firewall tersebut membuat jika ada yang download file menggunakan IDM, akan di drop oleh
mikrotik. Karena IDM menggunakan koneksi lebih dari 1, maka firewall tersebut akan drop IDM
jika menggunakan 4 koneksi lebih dalam 1 file download (lihat connection-limit=4,32). Script
diatas diperhatikan “in-interface” sesuaikan port ether lokal Anda.
Mungkin ada beberapa tehnik lainnya seperti memakai connection-byte, tapi sejauh ini melimit
kecepatan download file di mikrotik lebih efektif menggunakan L7 Filtering, tapi membebani
load router anda (jadi berat). Ada juga jika anda menggunakan proxy server bisa menggunakan
“Delay-Pool” di squid untuk membatasi kecepatan download file.