February 7, 2019

Memisahkan Traffic Game Online Dan Browsing Dengan Mikrotik

Memisahkan Traffic?

Pernah gak sih kalian berpikir untuk memisahkan traffic suatu layanan dijaringan lokal atau mungkin diantara pembaca sudah ada yang telah berkenalan atau mendengarkan tentang pemisahan traffic? Contohnya untuk jaringan di Warung Kopi (Warkop), sekolah, kantor, taman, dll.

Semakin hari kebutuhan akan manajemen jaringan semakin beragam. Hal ini tidak lepas dari semakin beragam pula layanan internet yang ada. Diasumsikan sebagai penyedia layanan akses internet, kalian pasti ingin memberikan layanan yang terbaik ke semua client.

Problem pada umumnya jika disuatu jaringan yang sama ada 2 atau lebih akses yang berbeda, kemungkinan besar ada client yang merasakan lambatnya koneksi yang digunakan. Contohnya ada yang mendownload dan ada yang bermain game online, yang bakalan kena dampak itu biasanya yang sedang bermain game online, si pemain game online kemungkinan besar seketika merasakan lambatnya jaringan karena diwaktu itu juga bandwith digunakan sebanyak-banyaknya oleh user yang sedang mendownload.

Nah dengan memisahkan traffic, masalah tersebut dapat diminimalisir. Maka dari itu juga mengapa saya mau menulis artikel ini untuk dijadikan bahan lab.

Oh iya sebelumnya saya ingin menceritakan kenapa saya bisa berkenalan dengan pemisahan traffic ini. 5 Bulan yang lalu saya sering mendengarkan keluhan pelanggan warkop yang biasa saya tempati nongkrong. Sebagai pelanggan juga, saya tidak mempermasalahkan koneksinya melainkan saya bosan mendengar keluhan pelanggan yang lain. Tepat di hari ke-6 saya mendengar keluhan tersebut, saya mencari bagaimana memanajemen jaringan yang baik, dan saya tertarik memanajemen jaringan menggunakan mikrotik yaitu trafficnya dipisahkan. Dan karena itu saya meminta si pemilik warkop agar membeli MikroTik yang akan digunakan untuk memisahkan traffic agar dapat minimalisir keluhan pelanggan. Eittss tapi bukan itu alasan utamanya saya menyuruh membeli product tersebut, alasan utamanya yaitu agar saya dapat mencobanya di waktu itu juga karena saya tidak memiliki alat tersebut untuk mencobanya sendiri. Nice kan :v hihihi

Etss balik lagi ke topik utamanya tapi gak usah cerita lagi yah, next time kita cerita seperti itu lagi tapi beda ceritanya :v

Bermain Dengan MikroTik

Mangle

Traffic browsing dan game online dapat dibedakan berdasarkan protocol dan port yang digunakan. Fitur yang dapat digunakan untuk kebutuhan tersebut adalah mangle, dimana mangle dapat digunakan untuk menandai (marking) paket data berdasarkan port, protocol, src dan dst address, serta parameter yang lain yang dibutuhkan.

Paket Game Online (Mobile Legends)

1) Ketahui protocol dan port yang akan ditandai, informasi tersebut dapat diketahui melalui fitur Torch di MikroTik ataupun mencari referensi lain dari internet. Buka jendela torch, sebagai catatan untuk menggunakan fitur torch ini saya sarankan hanya 1 device yang terhubung ke jaringan dan device tersebut yang akan digunakan untuk membuka aplikasi yang akan dimanajemen trafficnya, saran ini memudahkan untuk mencapture port yang akan dimanajemen. Setelah jendela Torch ditampilkan, silahkan capture port yang ada ditraffic sekarang. Untuk kasus ini saya menggunakan port yang bertebaran diinternet, karena waktu itu device yang saya gunakan digunakan untuk membuka beberapa aplikasi jadi susah mencapture portnya.siBunglonLabssiBunglonLabs

2) Menandai port menggunakan fitur Mangle. Buka jendela manglesiBunglonLabs3) Buat rule baru di mangle dengan field berikut:

  • General
    • chain = forward
    • src.address = network yang menuju ke client/pelanggan
    • protocol = 6 (tcp)
    • dst.port = port game mobile legends yang saya dapatkan di internet
  • Action
    • action = mark connection
    • new connection mark = identitas port setelah ditandai

Linux, Unix, BSD, MacOS, Komunitas Pengguna Linux Indonesia, KPLI Klaten, KPLI Bulukumba, MikroTik, MikroTik Indonesia, FreeBSD, FreeBSD Indonesia, Cisco, Cisco Indonesia, BLC Telkom Klaten, Ansible, Nginx, Apache2, Caddy Server, Ayo Belajar Linux, Cloud Computing, e-Learning, Open edX, Proxmox, Sendy, Microsoft SQL Server, MySQL, PostgreSQL, Lets Encrypt, Case Study, Atlassian, Virtualization, Faizar Septiawan, Icar, siBunglonGanteng, siBunglonLabs, Orang Ganteng

Linux, Unix, BSD, MacOS, Komunitas Pengguna Linux Indonesia, KPLI Klaten, KPLI Bulukumba, MikroTik, MikroTik Indonesia, FreeBSD, FreeBSD Indonesia, Cisco, Cisco Indonesia, BLC Telkom Klaten, Ansible, Nginx, Apache2, Caddy Server, Ayo Belajar Linux, Cloud Computing, e-Learning, Open edX, Proxmox, Sendy, Microsoft SQL Server, MySQL, PostgreSQL, Lets Encrypt, Case Study, Atlassian, Virtualization, Faizar Septiawan, Icar, siBunglonGanteng, siBunglonLabs, Orang Ganteng

4) Buat rule baru di mangle dengan field berikut:

  • General
    • chain = forward
    • connection mark = identitas port setelah ditandai
  • Action
    • action = mark packet
    • new packet mark = nama paket

Linux, Unix, BSD, MacOS, Komunitas Pengguna Linux Indonesia, KPLI Klaten, KPLI Bulukumba, MikroTik, MikroTik Indonesia, FreeBSD, FreeBSD Indonesia, Cisco, Cisco Indonesia, BLC Telkom Klaten, Ansible, Nginx, Apache2, Caddy Server, Ayo Belajar Linux, Cloud Computing, e-Learning, Open edX, Proxmox, Sendy, Microsoft SQL Server, MySQL, PostgreSQL, Lets Encrypt, Case Study, Atlassian, Virtualization, Faizar Septiawan, Icar, siBunglonGanteng, siBunglonLabs, Orang Ganteng

Linux, Unix, BSD, MacOS, Komunitas Pengguna Linux Indonesia, KPLI Klaten, KPLI Bulukumba, MikroTik, MikroTik Indonesia, FreeBSD, FreeBSD Indonesia, Cisco, Cisco Indonesia, BLC Telkom Klaten, Ansible, Nginx, Apache2, Caddy Server, Ayo Belajar Linux, Cloud Computing, e-Learning, Open edX, Proxmox, Sendy, Microsoft SQL Server, MySQL, PostgreSQL, Lets Encrypt, Case Study, Atlassian, Virtualization, Faizar Septiawan, Icar, siBunglonGanteng, siBunglonLabs, Orang Ganteng

Paket Browsing

1) Buat rule baru di mangle dengan field berikut:

  • General
    • chain = forward
    • src.address = network yang menuju ke client/pelanggan
    • protocol = 6 (tcp)
    • connection mark = no-mark
  • Action
    • action = mark connection
    • new connection mark = identitas protocol setelah ditandai

Linux, Unix, BSD, MacOS, Komunitas Pengguna Linux Indonesia, KPLI Klaten, KPLI Bulukumba, MikroTik, MikroTik Indonesia, FreeBSD, FreeBSD Indonesia, Cisco, Cisco Indonesia, BLC Telkom Klaten, Ansible, Nginx, Apache2, Caddy Server, Ayo Belajar Linux, Cloud Computing, e-Learning, Open edX, Proxmox, Sendy, Microsoft SQL Server, MySQL, PostgreSQL, Lets Encrypt, Case Study, Atlassian, Virtualization, Faizar Septiawan, Icar, siBunglonGanteng, siBunglonLabs, Orang Ganteng

Linux, Unix, BSD, MacOS, Komunitas Pengguna Linux Indonesia, KPLI Klaten, KPLI Bulukumba, MikroTik, MikroTik Indonesia, FreeBSD, FreeBSD Indonesia, Cisco, Cisco Indonesia, BLC Telkom Klaten, Ansible, Nginx, Apache2, Caddy Server, Ayo Belajar Linux, Cloud Computing, e-Learning, Open edX, Proxmox, Sendy, Microsoft SQL Server, MySQL, PostgreSQL, Lets Encrypt, Case Study, Atlassian, Virtualization, Faizar Septiawan, Icar, siBunglonGanteng, siBunglonLabs, Orang Ganteng

2) Buat rule baru di mangle dengan field berikut:

  • General
    • chain = forward
    • connection mark = identitas protocol setelah ditandai
  • Action
    • action = mark packet
    • new packet mark = nama paket

Linux, Unix, BSD, MacOS, Komunitas Pengguna Linux Indonesia, KPLI Klaten, KPLI Bulukumba, MikroTik, MikroTik Indonesia, FreeBSD, FreeBSD Indonesia, Cisco, Cisco Indonesia, BLC Telkom Klaten, Ansible, Nginx, Apache2, Caddy Server, Ayo Belajar Linux, Cloud Computing, e-Learning, Open edX, Proxmox, Sendy, Microsoft SQL Server, MySQL, PostgreSQL, Lets Encrypt, Case Study, Atlassian, Virtualization, Faizar Septiawan, Icar, siBunglonGanteng, siBunglonLabs, Orang Ganteng

Linux, Unix, BSD, MacOS, Komunitas Pengguna Linux Indonesia, KPLI Klaten, KPLI Bulukumba, MikroTik, MikroTik Indonesia, FreeBSD, FreeBSD Indonesia, Cisco, Cisco Indonesia, BLC Telkom Klaten, Ansible, Nginx, Apache2, Caddy Server, Ayo Belajar Linux, Cloud Computing, e-Learning, Open edX, Proxmox, Sendy, Microsoft SQL Server, MySQL, PostgreSQL, Lets Encrypt, Case Study, Atlassian, Virtualization, Faizar Septiawan, Icar, siBunglonGanteng, siBunglonLabs, Orang Ganteng

Setelah itu table mangle berisikan seperti berikut, dan pastikan port dan protocol tercapture dengan baik yang ditandai dengan data pada kolom Bytes sudah masuk.

Linux, Unix, BSD, MacOS, Komunitas Pengguna Linux Indonesia, KPLI Klaten, KPLI Bulukumba, MikroTik, MikroTik Indonesia, FreeBSD, FreeBSD Indonesia, Cisco, Cisco Indonesia, BLC Telkom Klaten, Ansible, Nginx, Apache2, Caddy Server, Ayo Belajar Linux, Cloud Computing, e-Learning, Open edX, Proxmox, Sendy, Microsoft SQL Server, MySQL, PostgreSQL, Lets Encrypt, Case Study, Atlassian, Virtualization, Faizar Septiawan, Icar, siBunglonGanteng, siBunglonLabs, Orang Ganteng

Manajemen Traffic Yang Tercapture

1) Buka jendela Queue Tree. Pada contoh ini menggunakan model HTB dengan bandwith minimal 512k dan maximal 3M.siBunglonLabs2) Definisikan max bandwith upload, parent adalah port sumber internet mikrotik.

Linux, Unix, BSD, MacOS, Komunitas Pengguna Linux Indonesia, KPLI Klaten, KPLI Bulukumba, MikroTik, MikroTik Indonesia, FreeBSD, FreeBSD Indonesia, Cisco, Cisco Indonesia, BLC Telkom Klaten, Ansible, Nginx, Apache2, Caddy Server, Ayo Belajar Linux, Cloud Computing, e-Learning, Open edX, Proxmox, Sendy, Microsoft SQL Server, MySQL, PostgreSQL, Lets Encrypt, Case Study, Atlassian, Virtualization, Faizar Septiawan, Icar, siBunglonGanteng, siBunglonLabs, Orang Ganteng

3) Definisikan bandwith upload untuk paket game online sesuai port yang telah ditandai sebelumnya.

Linux, Unix, BSD, MacOS, Komunitas Pengguna Linux Indonesia, KPLI Klaten, KPLI Bulukumba, MikroTik, MikroTik Indonesia, FreeBSD, FreeBSD Indonesia, Cisco, Cisco Indonesia, BLC Telkom Klaten, Ansible, Nginx, Apache2, Caddy Server, Ayo Belajar Linux, Cloud Computing, e-Learning, Open edX, Proxmox, Sendy, Microsoft SQL Server, MySQL, PostgreSQL, Lets Encrypt, Case Study, Atlassian, Virtualization, Faizar Septiawan, Icar, siBunglonGanteng, siBunglonLabs, Orang Ganteng

4) Definisikan bandwith upload untuk paket browsing sesuai port yang telah ditandai sebelumnya.

Linux, Unix, BSD, MacOS, Komunitas Pengguna Linux Indonesia, KPLI Klaten, KPLI Bulukumba, MikroTik, MikroTik Indonesia, FreeBSD, FreeBSD Indonesia, Cisco, Cisco Indonesia, BLC Telkom Klaten, Ansible, Nginx, Apache2, Caddy Server, Ayo Belajar Linux, Cloud Computing, e-Learning, Open edX, Proxmox, Sendy, Microsoft SQL Server, MySQL, PostgreSQL, Lets Encrypt, Case Study, Atlassian, Virtualization, Faizar Septiawan, Icar, siBunglonGanteng, siBunglonLabs, Orang Ganteng

5) Definisikan max bandwith download, parent adalah port yang menuju ke client.

Linux, Unix, BSD, MacOS, Komunitas Pengguna Linux Indonesia, KPLI Klaten, KPLI Bulukumba, MikroTik, MikroTik Indonesia, FreeBSD, FreeBSD Indonesia, Cisco, Cisco Indonesia, BLC Telkom Klaten, Ansible, Nginx, Apache2, Caddy Server, Ayo Belajar Linux, Cloud Computing, e-Learning, Open edX, Proxmox, Sendy, Microsoft SQL Server, MySQL, PostgreSQL, Lets Encrypt, Case Study, Atlassian, Virtualization, Faizar Septiawan, Icar, siBunglonGanteng, siBunglonLabs, Orang Ganteng

6) Definisikan bandwith download untuk paket game online sesuai port yang telah ditandai sebelumnya.

Linux, Unix, BSD, MacOS, Komunitas Pengguna Linux Indonesia, KPLI Klaten, KPLI Bulukumba, MikroTik, MikroTik Indonesia, FreeBSD, FreeBSD Indonesia, Cisco, Cisco Indonesia, BLC Telkom Klaten, Ansible, Nginx, Apache2, Caddy Server, Ayo Belajar Linux, Cloud Computing, e-Learning, Open edX, Proxmox, Sendy, Microsoft SQL Server, MySQL, PostgreSQL, Lets Encrypt, Case Study, Atlassian, Virtualization, Faizar Septiawan, Icar, siBunglonGanteng, siBunglonLabs, Orang Ganteng

7) Definisikan bandwith download untuk paket browsing sesuai port yang telah ditandai sebelumnya.

Linux, Unix, BSD, MacOS, Komunitas Pengguna Linux Indonesia, KPLI Klaten, KPLI Bulukumba, MikroTik, MikroTik Indonesia, FreeBSD, FreeBSD Indonesia, Cisco, Cisco Indonesia, BLC Telkom Klaten, Ansible, Nginx, Apache2, Caddy Server, Ayo Belajar Linux, Cloud Computing, e-Learning, Open edX, Proxmox, Sendy, Microsoft SQL Server, MySQL, PostgreSQL, Lets Encrypt, Case Study, Atlassian, Virtualization, Faizar Septiawan, Icar, siBunglonGanteng, siBunglonLabs, Orang Ganteng

Test

Dengan menggunakan model HTB, antara traffic browsing dengan game sudah memiliki batas masing-masing sehingga jika keduanya berjalan bersamaan tidak akan saling mengganggu. Pastikan port dan protocol tercapture dengan baik yang ditandai dengan data pada kolom Bytes sudah masuk ditabel Queue Tree.

Linux, Unix, BSD, MacOS, Komunitas Pengguna Linux Indonesia, KPLI Klaten, KPLI Bulukumba, MikroTik, MikroTik Indonesia, FreeBSD, FreeBSD Indonesia, Cisco, Cisco Indonesia, BLC Telkom Klaten, Ansible, Nginx, Apache2, Caddy Server, Ayo Belajar Linux, Cloud Computing, e-Learning, Open edX, Proxmox, Sendy, Microsoft SQL Server, MySQL, PostgreSQL, Lets Encrypt, Case Study, Atlassian, Virtualization, Faizar Septiawan, Icar, siBunglonGanteng, siBunglonLabs, Orang Ganteng

Referensi