Mikrotik+Ext PROXY+BW LIMITER Sama Rata

Permasalahan umum setiap topologi jaringan internet adalah Bandwidth yang tidak adil yang didominasi oleh satu atau lebih client,sehingga membuat client yang lain dirugikan.
untuk mengatasi masalah itu,maka perlu dibuatkan pembagian bandwidth yang adil agar tidak terjadi perbutan bandwidth.
dalam tulisan kali ini pembagian bandwithnya tidak berdasarkan ip namun berdasarkan seberapa besar kita alokasi bandwith untuk total http dan non http.

kelebihannya adalah:
-jika 1  user yang online maka dia akan menguasai seluruh alokasi bw http,jika 2 atau lebih maka akan dibagi sama rata
-tidak mengganggu bw non http seperti game online dan chatting atau messenger karena telah dibagi untuk alokasi bw http dan non http sehingga yang main game online tidak akan ngelag
-proxy hit 99% loss

kekurangannya adalah:
-jika proxy down maka tiada pembatasan untuk koneksi Http dan Non Http,jadi semuanya berjalan disatu    Que Tree

Kronologis:

Modem === Mikrotik === User
             ||
             ||
         Proxy Squid
 
Jika kita terapkan system limiter dari client ke modem misal 256kbps,maka request client ke proxy juga akan terlimit 256kbps juga,maka sia2 saja proxy dipasang

untuk itu perlu dibagi aturannya sebagai berikut:
-untuk koneksi non https kita alokasikan bw 1/4-1/2 dari total bandwith yang kita miliki
-untuk koneksi client ke proxy kita buat loss saja
-untuk koneksi proxy ke modem kita alokasikan 1/2-3/4 dari total bandwith yang kita miliki

Disini saya menggunakan Speedy 2Mbps dengan modem PPPoE

Berikut settingannya
Untuk settingan dasarnya bisa di baca di SINI

Buat NAT untuk Transparent Proxynya terlebih dahulu:
Chain = dstnat
Dst.Address = !192.168.2.1
Protocol = TCP
Dst.Port = 80,81,8080,3128
In.Interface = ether3-client
Action = dst-nat
To Address = 192.168.2.1
To Ports = 3128
Lalu Buat Proxy Hit Loss
Mangle Connection Mark:
/ip fi ma
add action=mark-connection chain=forward comment=Proxy_HIT disabled=no in-interface=ether2-proxy \
new-connection-mark=HIT out-interface=ether3-client passthrough=yes protocol=tcp

Mangle Packet Mark:
add action=mark-packet chain=forward comment=”" connection-mark=HIT \
disabled=no in-interface=Proxy new-packet-mark=HIT\
out-interface=ether3-client passthrough=no protocol=tcp 
 Queue Tree:
/que tr
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 \
max-limit=0 name=.:A.PROXY-HIT:. packet-mark=HIT parent=global-out priority=1 \
queue=default comment="HIT"


Limit Client Modem (Non Http)
Mangle Connection Mark :
/ip fi ma
add action=mark-connection chain=forward comment="Download Dari Client" connection-bytes=\
256000-4294967295 disabled=no in-interface=ether1-internet \
new-connection-mark=DownClient out-interface=ether3-client passthrough=yes protocol=tcp


Mangle Packet Mark:
add action=mark-packet chain=forward comment=”" connection-mark=DownClient \
disabled=no in-interface=Modem new-packet-mark=Down Client\
out-interface=ether3-client passthrough=no protocol=tcp 


Queue Type :
/que ty
add kind=pcq name=DownloadClient-PCQ pcq-classifier=dst-address pcq-limit=50 pcq-rate=\
256000 pcq-total-limit=2000


Queue Tree:
/que tr
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 \
max-limit=512000 name=Download Client packet-mark=Dow Client parent=global-out priority=8 \
queue=DownloadClient-PCQ


Limit Proxy Modem (Http)
Mangle Connection Mark:
/ip fi ma
add action=mark-connection chain=forward comment="Download Dari PROXY" connection-bytes=\
256000-4294967295 disabled=no in-interface=ether1-internet \
new-connection-mark=DownProxy out-interface=ether2-proxy passthrough=yes protocol=tcp


Mangle Packet Mark:
add action=mark-packet chain=forward comment=”" connection-mark=DownProxy \
disabled=no in-interface=ether1-internet new-packet-mark=Down Proxy\
out-interface=ether2-proxy passthrough=no protocol=tcp 


Queue Type:
/que ty
add kind=pcq name=DownloadPROXY-PCQ pcq-classifier=dst-address pcq-limit=50 pcq-rate=\
1024000 pcq-total-limit=2000


Queue Tree:
/que tr
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 \
max-limit=1280000 name=Download Proxy packet-mark=Down Proxy parent=global-out priority=8 \
queue=DownloadPROXY-PCQ


Selesai sudah settingan Mikrotik+External Proxy+Bw
Management PCQ

Untuk Tambahan:
jika suatu saat proxy down/rusak maka akan kerepotan jika kita tidak ditempat untuk menonaktifkan NAT transparent proxy,untuk itu perlu dibuatkan script agar NAT disable sendiri jika proxy down
scriptnya ada di SINI

namun dengan cript tersebut maka segala traffic http dan non http akan berjalan di que tree Client-Modem yang alokasi bandwidth nya sangat minim.
Untuk itu perlu dibuat 1 Que Type lagi dan 1 Que Tree agar Bandwidth tidak terasa tercekik

Queue Type:

/que ty
add kind=pcq name=Dowload-non-proxy-PCQ pcq-classifier=dst-address pcq-limit=50 pcq-rate=\
1280000 pcq-total-limit=2000


Queue Tree:
/que tr
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 \
max-limit=1536000 name=Client-Straight packet-mark=Down Client parent=global-out priority=8 \
queue=Dowload-non-proxy-PCQ



dan tambahkan script untuk mengaktifkan Que tree tersebut jika proxy down dan mendisable Que Tree tersebut jika proxy up

Script:
Host = 192.168.2.1
Interval = 00:00:01
Time Out =  200

Up
On Up:
/queue tree enable [find comment=HIT]
/queue tree enable [find comment=Proxy-Download]
/queue tree enable [find comment=Client-Download]
/queue tree disable [find comment=Non-Proxy]


Down
On Down
/queue tree disable [find comment=HIT]
/queue tree disable [find comment=Proxy-Download]
/queue tree disable [find comment=Client-Download]
/queue tree enable [find comment=Non-Proxy]

Netwatch:


Dan hasilnya:

Selesai sudah Settingannya....


semoga berhasil

MAI







Comments

Popular posts from this blog

Auto Ping OpenWRT

Flash MR3x20 Via WINSCP dan PUTTY

PRIVOXY on OpenWRT