Saturday, May 12, 2018

dynamic mangle dan queue pada pppoe mikrotik


Kali ini saya akan bagi tips bagaimana cara membuat dynamic mangle dan queue tree di sebuah sistem pppoe pada mikrotik. Studi kasus :

  • distribusi internet ke pelanggan menggunakan sistem pppoe
  • pelanggan 100rb-250rb per bulan dilayani dengan bandwidth fix (dynamic pppoe biasa)
  • pelanggan 300rb ke atas dikasih benefit tambahan bandwidth GGC/AKAMAI/ANY-CDN
  • otomatis tambahkan mangle jika pelanggan 300rb ke atas
  • otomatis tambahkan queue tree jika pelanggan 300rb ke atas
solving :
  • pisahkan ip address (remote address) bagi pelanggan mix dan pelanggan premium
  • buat  2 pool address, pertama pppoe_addr_biasa dan pppoe_addr_premium
  • pada userman, profile 300rb ke atas pada menu constraints tambahkan pppoe_addr_premium pada address pool
  • buat profile pppoe dengan pool address global (misal 10.8.8.0/24)
  • let's go!

pada on login script pppoe-profile tambahkan

:local ipaddr [/ip address get [/ip address find interface=$user] network]
:log warning "$user login dengan ip $ipaddr"
:if ($ipaddr in 10.8.8.192/26) do={
/ip fire mangle add comment=$user chain=forward out-interface=$user action=mark-packet new-packet-mark=$user src-address=118.98.0.0/17 passthrough=no
:local parent [/queue tree find name=DN-PPPOE]
:if ([:len $parent] = 0) do={/queue tree add name=DN-PPPOE parent=global }
/queue tree add name=$user packet-mark=$user parent=DN-PPPOE limit-at=1000000 max-limit=8000000
}

kemudian pada on logout kasih script

:log error "$user logout"
/ip fire mangle remove [find out-interface=$user]
/queue tree remove [find name=$user] 

maka nanti hasilnya sebagai berikut

No comments:

Post a Comment