TRAFFIC CONTROL
PRESENTED BY ROFIQ FAUZI
ID-Networkers
2
ID-NETWORKERS | www.training-mikrotik.com
3
ID-NETWORKERS | www.training-mikrotik.com
4
www.trainingmikrotik.com
Host Subdomain Top-Level Domain
ID-NETWORKERS | www.training-mikrotik.com
5
ID-NETWORKERS | www.training-mikrotik.com
7
Static DNS
• DNS Cache dapat berfungsi sebagai simple
DNS server.
• Dengan membuat static DNS seting, router akan
menambahkan parameter "A" dan "PTR".
"A" - Address Mapping Domain to IP Address
"PTR" - To map the Reverse DNS
• Static DNS akan menimpa / override dynamic
entries yang ada pada DNS cache
ID-NETWORKERS | www.training-mikrotik.com
8
ID-NETWORKERS | www.training-mikrotik.com
9
Dns request 53
Udp 53
Redirect to the router
ID-NETWORKERS | www.training-mikrotik.com
10
ID-NETWORKERS | www.training-mikrotik.com
11
ID-NETWORKERS | www.training-mikrotik.com
12
ID-NETWORKERS | www.training-mikrotik.com
13
DHCP
Dynamic Host Configuration Protocol
ID-NETWORKERS | www.training-mikrotik.com
14
DHCP
• DHCP (Dynamic Host Configuration Protocol)
digunakan untuk mendistribusikan network
setting, yaitu:
• IP address dan netmask
• Default gateway address
• DNS, NTP server address
• Dan lebih dari 100 option lainya (yang dapat
disupport oleh DHCP client tertentu)
• DHCP sebenarnya merupaka system yang tidak
aman, maka dari itu hanya cocok diterapkan di
network lokal kita.
ID-NETWORKERS | www.training-mikrotik.com
15
ID-NETWORKERS | www.training-mikrotik.com
16
DHCP Server
• DHCP server dapat dijalankan pada setiap interface pada router,
bahkan pada beberapa jenis virtual interface.
• Satu interface hanya dapat menajalankan1 DHCP server.
• Untuk mempermudah setting DHCP server, pertama tambahkan ip
address pada interface yang akan dijadikan DHC server.
• Setting DHCP server ada pada menu IP> DHCP Server> DHCP
Setup, ikuti step-stepnya
ID-NETWORKERS | www.training-mikrotik.com
17
ID-NETWORKERS | www.training-mikrotik.com
18
ID-NETWORKERS | www.training-mikrotik.com
19
ID-NETWORKERS | www.training-mikrotik.com
20
ID-NETWORKERS | www.training-mikrotik.com
21
LAB - DHCP
Set DHCP client, in IP>DHCP>Client
ID-NETWORKERS | www.training-mikrotik.com
22
DHCP Options
• Pada menu DHCP Networks, kita dapat
melakukan konfigurasi DHCP Options tertentu
untuk network tertentu
• Beberapa option sudah terintegrasi dengan
RouterOS, dan Option lainnya dapat dilakukan
custom dalam format raw
• http://www.iana.org/assignments/bootp-dhcp-
parameters
• DHCP Server dapat memberikan option apapun
• DHCP Client hanya dapat menerima option yang
dikenali
ID-NETWORKERS | www.training-mikrotik.com
24
DHCP Options
• DHCP Options yang bisa dilakukan:
̶ Subnet-Mask (option 1) - netmask
̶ Router (option 3) - gateway
̶ Domain-Server (option 6) - dns-server
̶ NTP-Servers (option 42) - ntp-server
̶ NETBIOS-Name-Server (option 44) - wins-server
• Custom DHCP options (Example:)
Classless Static Route (C) - “0x100A270A260101” =
“network=10.39.0.0/16 gateway=10.38.1.1”
ID-NETWORKERS | www.training-mikrotik.com
25
DHCP Options
Raw Format of 10.39.0.0/16 and 10.38.1.1:
• 0x | 10 | 0A27 | 0A260101 |
• 0x – Hex Number
• 10 – Subnet/Prefix = 16
• 0A27 – Network = 10.39.0.0
• 0A260101 – Gateway = 10.38.1.1
ID-NETWORKERS | www.training-mikrotik.com
26
Static route
ID-NETWORKERS | www.training-mikrotik.com
27
ID-NETWORKERS | www.training-mikrotik.com
28
DHCP Options
• IP address pool digunakan untuk menentukan rentang IP
Address yang akan didistribusikan secara dinamik (DHCP,
PPP, Hotspot)
• IP address harus selain yang digunakan untuk keperluan
khusus (misalnya: server, static IP client)
• Dimungkinkan untuk :
Membuat beberapa rentang untuk satu pool
Menentukan pool berikut dengan “next pool”
• By default IP address yang diberikan ke client dimulai dari IP
yang paling besar.
• Jika ternyata ip yang didapatkan adalah ip yang tekecil maka
biasanya ada DHCP option di client yang aktif yang meminta
ip terkecil
ID-NETWORKERS | www.training-mikrotik.com
29
IP Pool
ID-NETWORKERS | www.training-mikrotik.com
30
ID-NETWORKERS | www.training-mikrotik.com
31
ID-NETWORKERS | www.training-mikrotik.com
32
ID-NETWORKERS | www.training-mikrotik.com
33
ID-NETWORKERS | www.training-mikrotik.com
35
R1
Authoritative=yes
R2
• Bridge LAN interface ( interface yang ke laptop) dengan interface yang menuju
router lain
• Jalankan DHCP server pada interface bridge di R1 dan R2
• R1 sebagai DHCP server asli, R2 sebagai DHCP fake/rogue
• Set Authoritative=yes pada R1 (DHCP asli)
ID-NETWORKERS | www.training-mikrotik.com
36
ID-NETWORKERS | www.training-mikrotik.com
37
DHCP Alert!
ID-NETWORKERS | www.training-mikrotik.com
38
Authoritative=yes
DHCP Alert!
• Add DHCP Alert in interface bridge, valid server is a mac-address of the bridge
ID-NETWORKERS | www.training-mikrotik.com
39
ID-NETWORKERS | www.training-mikrotik.com
40
ID-NETWORKERS | www.training-mikrotik.com
41
ID-NETWORKERS | www.training-mikrotik.com
42
DHCP Relay
• DHCP Relay bekerja seperti halnya Web-Proxy,
dapat menerima DHCP discovery dan request,
dan meneruskannya ke DHCP server
• Hanya bisa ada 1 DHCP relay antara DHCP
server dan DHCP client
• Konfigurasi “local address” pada DHCP relay
harus sama dengan “relay address” pada DHCP
server.
ID-NETWORKERS | www.training-mikrotik.com
43
Ether1 Ether1
192.168.1.1/24 192.168.1.2/24
Ether2
192.168.22.1/24
ID-NETWORKERS | www.training-mikrotik.com
44
ID-NETWORKERS | www.training-mikrotik.com
45
Interface LAN
ID-NETWORKERS | www.training-mikrotik.com
46
PROXY
MikroTik HTTP Proxy
ID-NETWORKERS | www.training-mikrotik.com
47
Web Proxy
• Web-proxy memiliki 3 fitur dasar:
– HTTP dan FTP traffic caching
– DNS name filtering
– DNS redirection
• Web-proxy mempunyai 2 mode kerja
– Regular – browser di sisi client harus diconfigure
manual untuk menggunakan proxy
– Transparent – client tidak perlu setting proxy
otomatis, client akan dipaksa menggunakan
proxy dengan NAT rules
ID-NETWORKERS | www.training-mikrotik.com
48
Web Proxy
• Without Proxy
• With Proxy
ID-NETWORKERS | www.training-mikrotik.com
49
IDN
ID-NETWORKERS | www.training-mikrotik.com
51
ID-NETWORKERS | www.training-mikrotik.com
52
ID-NETWORKERS | www.training-mikrotik.com
53
ID-NETWORKERS | www.training-mikrotik.com
54
ID-NETWORKERS | www.training-mikrotik.com
55
*playboy*
ID-NETWORKERS | www.training-mikrotik.com
56
ID-NETWORKERS | www.training-mikrotik.com
57
• Special Characters
* = any character/characters
? = one character
• Example
www.do?ai?.com
www.domain.*
*domain*
• Also support regular expression format
ID-NETWORKERS | www.training-mikrotik.com
58
ID-NETWORKERS | www.training-mikrotik.com
59
Web-Proxy Options
• Maximal-client-
connections - jumlah
koneksi yang diterima dari
client
• Maximal-server-
connections - maksimum
koneksi ke servers (apabila
penuh, ada client yang
akan konek ke server akan
menunggu)
ID-NETWORKERS | www.training-mikrotik.com
60
Web-Proxy Caching
• Max. Cache Size
• Ukuran maximum cache
• No caching
• Max-cache-size = none
• Cache to RAM
• Max-cache-size ≠ none
• Cache-on-disk = no
• Cache to HDD
• Max-cache-size ≠ none
• Cache-on-disk = yes
• Cache-hit-DSCP
• specify DSCP value for all
packets generated from the
web-proxy cache
ID-NETWORKERS | www.training-mikrotik.com
61
ID-NETWORKERS | www.training-mikrotik.com
62
FIREWALL
Basic & Advanced
ID-NETWORKERS | www.training-mikrotik.com
63
Connection Tracking
• Connection Tracking adalah “jantung” dari
firewall, mengumpulkan informasi tentang active
connections.
• Dengan mendisable connection tracking router
akan kehilangan fungsi NAT, filter rule dan
mangle.
• Setiap connection tracking membaca pertukaran
traffic 2 arah (src dan dst address).
• Connection tracking membutuhkan CPU
resources (disable it, if you don't use firewall)
ID-NETWORKERS | www.training-mikrotik.com
64
Connection Tracking
IP Firewall Connection Tracking
ID-NETWORKERS | www.training-mikrotik.com
65
Connection State
• Connection state adalah status yang dikenali oleh
connection tracking system:
– New – packet is opening a new connection
– Established – packet belongs to already known
connection
– Invalid – packet does not belong to any of the known
connections
– Related – packet is also opening a new connection,
but it is in some kind relation to already known
connection
• Connection state tidak sama dengan TCP state pada
connection tracking
ID-NETWORKERS | www.training-mikrotik.com
66
Firewall Basic
• Setiap Firewall Filter rule diorganisir dalam chain (rantai)
yang berurutan.
• Setiap aturan chain yang dibuat akan dibaca oleh router
dari atas ke bawah.
• Di Firewall Filter Rule ada 3 default chain
– Input = untuk traffic yang menuju ke router
– Forward= untuk traffic yang melewati router
– Output=untuk traffic yang kerluar dari router
• Kita juga boleh membuat nama chain sesuai dengan
keinginan kita, gunanya untuk membuat sub-rule-firewall
ID-NETWORKERS | www.training-mikrotik.com
67
Packet Flow
• Simple Diagram (posisi input, forward dan output) dalam router
ID-NETWORKERS | www.training-mikrotik.com
68
Input Interface
• Adalah interface yang dilalui oleh paket data, tepat
ketika masuk di router.
• Pada saat proses “uplink” atau “request” yang dimaksud
dengan input interface adalah interface yang mengarah
ke client (local/lan interface).
• Pada saat proses “downlink” atau “response” yang
dimaksud dengan input interface adalah interface yang
mengarah ke internet (public/WAN interface)
• Jika client menggunakan IP Address publik, proses
request juga bisa dilakukan dari internet, sehingga input
interface adalah interface WAN.
ID-NETWORKERS | www.training-mikrotik.com
69
Local Process
• Adalah router itu sendiri, jika ada paket data
yang menuju ke router, misalnya:
– Ping dari client ke IP router
– Request Winbox dari client ke router
– Proses response http akibat request dari web
proxy
• Adalah router itu sendiri, jika ada paket data
yang berasal dari router, misalnya:
– Ping dari router ke internet atau ke client
– Proses request http dari web proxy
ID-NETWORKERS | www.training-mikrotik.com
70
Forwarding Decission
• Adalah proses yang menentukan apakah paket
data akan disalurkan ke luar router, atau menuju
ke router itu sendiri.
• Proses ini juga menentukan interface mana
yang akan digunakan untuk melewatkan paket
data keluar dari router.
• Pada chain output (setelah mangle, dan filter)
terdapat Routing Adjustment yang berfungsi
memperbaiki routing decision yang diakibatkan
oleh route-mark pada mangle di chain output.
ID-NETWORKERS | www.training-mikrotik.com
71
Packet Flow
• Diagram showing the process flow of data packets RouterOS Versi 5.x
ID-NETWORKERS | www.training-mikrotik.com
72
Packet Flow
• Traffic going in to the router (input)
ID-NETWORKERS | www.training-mikrotik.com
73
Packet Flow
• Traffic going out from the router itself (output)
ID-NETWORKERS | www.training-mikrotik.com
74
Packet Flow
• Traffic pass-through the router (forward)
ID-NETWORKERS | www.training-mikrotik.com
75
Posisi Chain
ID-NETWORKERS | www.training-mikrotik.com
76
Packet Flow
• Diagram showing the process flow of data packets RouterOS Versi 6.x
ID-NETWORKERS | www.training-mikrotik.com
77
Firewall on Bridge
Jika kita ingin menggunakan IP Firewall pada interface bridge, menu
use IP firewall harus diakifkan (enable)
ID-NETWORKERS | www.training-mikrotik.com
78
Firewall Strategy
• Prinsip IF….THEN….
• IF (jika) traffic sesuai dengan kriteria yang kita tentukan.
• THEN (maka) apa yang akan kita perlakukan pada traffic
tersebut?
• Pada IP firewall IF didefinisikan pada tab General,
Advanced and Extra, sedangkan THEN dilakukan pada
tab Action
ID-NETWORKERS | www.training-mikrotik.com
79
Firewall Strategy
• Drop semua yang tidak diinginkan , lainya di accept
Jika tidak ada rule apapun, firewall mikrotik by default akan menerima
semua jenis koneksi
ID-NETWORKERS | www.training-mikrotik.com
80
Firewall Strategy
• Accept apa yang dibutuhkan, lainya didrop
ID-NETWORKERS | www.training-mikrotik.com
81
ID-NETWORKERS | www.training-mikrotik.com
82
IDN
ID-NETWORKERS | www.training-mikrotik.com
83
ID-NETWORKERS | www.training-mikrotik.com
84
ID-NETWORKERS | www.training-mikrotik.com
85
Dst Limit
• Dst-Limit biasanya digunakan untuk mendeteksi brute
force
ID-NETWORKERS | www.training-mikrotik.com
86
Lab Dst-Limit
• Buat firewall untuk mengijikan hanya 10 kali salah login FTP, apabila
lebih maka IP langsung diblock selama 5 menit
• Buat rule firewall
ID-NETWORKERS | www.training-mikrotik.com
87
IP Router
Protocol FTP
ID-NETWORKERS | www.training-mikrotik.com
88
ID-NETWORKERS | www.training-mikrotik.com
89
ID-NETWORKERS | www.training-mikrotik.com
90
ID-NETWORKERS | www.training-mikrotik.com
91
ID-NETWORKERS | www.training-mikrotik.com
92
ID-NETWORKERS | www.training-mikrotik.com
93
ID-NETWORKERS | www.training-mikrotik.com
94
ID-NETWORKERS | www.training-mikrotik.com
95
ID-NETWORKERS | www.training-mikrotik.com
96
ID-NETWORKERS | www.training-mikrotik.com
97
ID-NETWORKERS | www.training-mikrotik.com
98
ID-NETWORKERS | www.training-mikrotik.com
99
Layer 7 Protocol
• Block yahoo messenger
/ip firewall layer7-protocol
add name=yahoo-messenger
regexp="^(ymsg|ypns|yhoo).\?.\?.\?.\?.\?.\?.\?[lwt].*\\xc0\\x
80“
ID-NETWORKERS | www.training-mikrotik.com
100
ID-NETWORKERS | www.training-mikrotik.com
101
ID-NETWORKERS | www.training-mikrotik.com
102
IP Firewall Mangle
ID-NETWORKERS | www.training-mikrotik.com
103
IP Firewall Mangle
• Mangle adalah cara untuk menandai paket data tertentu,
sehingga kita bisa menggunakan tanda (Marking)
tersebut pada fitur lainnya, misalnya pada filter, routing,
NAT, ataupun queue.
• Tanda mangle ini hanya bisa digunakan pada router
yang sama, dan tidak terbaca pada router lainnya.
• Pembacaan / pelaksanaan rule mangle akan dilakukan
dari atas ke bawah secara berurutan.
• Mangle juga dapat digunakan untuk mengubah
beberapa paremeter header packet seperti TTL, MSS
dan DSCP
ID-NETWORKERS | www.training-mikrotik.com
104
IP Firewall Mangle
• Seperti IP firewall filter, mangle diorganisis dalam chain
• Ada 5 built-in chains:
• Prerouting- making a mark before Global-In queue
• Postrouting - making a mark before Global-Out queue
• Input - making a mark before Input filter
• Output - making a mark before Output filter
• Forward - making a mark before Forward filter
• Kita dapat menambahkan chain dengna nama sendiri
apabila dibutuhkan
ID-NETWORKERS | www.training-mikrotik.com
105
ID-NETWORKERS | www.training-mikrotik.com
106
ID-NETWORKERS | www.training-mikrotik.com
107
Mark Connection
• Dilakukan untuk proses request (pada paket
pertama “NEW” dalam suatu koneksi)
• Digunakan untuk melakukan mangle per
srcaddress pada jaringan dengan src-nat jika
menggunkan chain prerouting.
• Sebaiknya digunakan untuk melakukan mangle
berdasarkan protocol tcp dan dst-port
• Dilakukan sebelum packet-mark atau route-mark
• Setting passthrough biasanya “yes”
• Mark Connection disimpan pada connection
tracking table
ID-NETWORKERS | www.training-mikrotik.com
108
ID-NETWORKERS | www.training-mikrotik.com
109
ID-NETWORKERS | www.training-mikrotik.com
110
ID-NETWORKERS | www.training-mikrotik.com
111
Mark Packet
• Untuk jaringan dengan nat, dan untuk protokol
tcp (dan dst port), sebaiknya dibuat
berdasarkan connection-mark.
• Mark packet dibuat untuk digunakan pada
queue tree, simple queue, dan bisa juga filter.
• Setting passthrough biasanya “no”.
ID-NETWORKERS | www.training-mikrotik.com
112
Mangle Passtrough
ID-NETWORKERS | www.training-mikrotik.com
113
Mangle Passtrough
ID-NETWORKERS | www.training-mikrotik.com
114
• /queue tree
add name=http-upload packet-mark=upload parent=global max-limit=256k
add name=http-download packet-mark=download parent=global max-limit=512k
ID-NETWORKERS | www.training-mikrotik.com
115
ID-NETWORKERS | www.training-mikrotik.com
116
• Artinya paket akan dihitung per 2 paket, dimulai dari paket nomor 0
(sebagai paket pertama)
• NTH menghitung paket dari nomor 1 sedangkan PCC
menghitung paket dari nomor 0
ID-NETWORKERS | www.training-mikrotik.com
117
QUEUE
Bandwith Limiter
ID-NETWORKERS | www.training-mikrotik.com
118
Jenis-Jenis Queue
Scheduler queues:
•BFIFO (Bytes First-In First-Out)
•PFIFO (Packets First-In First-Out)
•RED (Random Early Detect)
•SFQ (Stochastic Fairness Queuing)
Shaper queues:
•PCQ (Per Connection Queue)
•HTB (Hierarchical Token Bucket)
ID-NETWORKERS | www.training-mikrotik.com
119
Jenis-Jenis Queue
Queue>Queue Type>Add New Queue Types
ID-NETWORKERS | www.training-mikrotik.com
120
FIFO
First In First Out
• Tidak mengubah urutan paket data, hanya menahan dan menyalurkan bila
sudah memungkinkan.
• Jika buffer penuh maka paket data akan di drop
ID-NETWORKERS | www.training-mikrotik.com
121
ID-NETWORKERS | www.training-mikrotik.com
122
ID-NETWORKERS | www.training-mikrotik.com
123
ID-NETWORKERS | www.training-mikrotik.com
124
Sub queue
ID-NETWORKERS | www.training-mikrotik.com
125
ID-NETWORKERS | www.training-mikrotik.com
126
ID-NETWORKERS | www.training-mikrotik.com
127
HTB
Hierarchical Token Bucket
ID-NETWORKERS | www.training-mikrotik.com
128
HTB
• HTB adalah classful queuing discipline yang
dapat digunakan untuk mengaplikasikan
handling yang berbeda untuk beberapa jenis
trafik.
• Secara umum, kita hanya dapat membuat 1 tipe
queue untuk setiap interface. Namun dengan
HTB di RouterOS, kita dapat mengaplikasikan
properti yang
• berbeda-beda.
• HTB dapat melakukan prioritas untuk grup yang
berbeda.
ID-NETWORKERS | www.training-mikrotik.com
129
ID-NETWORKERS | www.training-mikrotik.com
130
• When packet travels through the router, it passes all 4 HTB trees
• When packet travels to the router, it passes only global-in and global-total HTB.
• When packet travels from the router, it passes global-out, global-total and interface
HTB.
ID-NETWORKERS | www.training-mikrotik.com
131
HTB
• Setiap queue bisa menjadi parent untuk queue
lainnya (child) walaupun hanya 1.
• Semua child queue (tidak peduli berapa banyak
level parentnya) akan berada pada level HTB
yang sama (paling bawah)
• Semua child queue akan dipenuhi limit-at, jika
ada sis maka akan didistribusikan oleh perent
• Child queue membuat actual traffic consumption,
sedangkan parent queues bertanggung jawab
terhadap traffic distribution
ID-NETWORKERS | www.training-mikrotik.com
132
HTB Structure
ID-NETWORKERS | www.training-mikrotik.com
133
HTB Limitation
• HTB 2 cara limitasi:
• CIR (Committed Information Rate)
ID-NETWORKERS | www.training-mikrotik.com
134
HTB Limitation
• Max-limit parent harus lebih besar atau sama
dengan jumlah limit-at clientnya
max-limit(parent) >= limit-at(child1) + .... + limit-at(child*)
• Contoh :
queue1 – limit-at=512k – parent=parent1
queue2 – limit-at=512k – parent=parent1
queue3 – limit-at=512k – parent=parent1
max-limit parent1 sekurang-kurangnya (512k*3),
jika kurang dari 1,5M, maka max-limit tidak akan
berfungsi dengan benar (bocor)
ID-NETWORKERS | www.training-mikrotik.com
135
Tips
• Rule untuk parent paling atas, hanya
membutuhkan max-limit, tidak membutuhkan
limit-at dan priority
• Priority hanya bekerja pada child paling bawah,
dibandingkan hanya dengan child, bukan parent!
• Priority hanya berfungsi (diperhitungkan) untuk
meminjam bandwith yang tersisa dari parent
setelah semua queue child mendapatkan limit-at
nya.
ID-NETWORKERS | www.training-mikrotik.com
136
ID-NETWORKERS | www.training-mikrotik.com
137
ID-NETWORKERS | www.training-mikrotik.com
139
ID-NETWORKERS | www.training-mikrotik.com
140
• C1 dan C2 bisa naik hingga max-limit, karena parentnya (C) memiliki limit-at
hingga 4mbps.
ID-NETWORKERS | www.training-mikrotik.com
141
• Pada saat semua limit-at sudah tercapai, sisa kapasitas akan dibagikan
berdasarkan prioritas.
ID-NETWORKERS | www.training-mikrotik.com
142
ID-NETWORKERS | www.training-mikrotik.com
143
ID-NETWORKERS | www.training-mikrotik.com
144
• C1, C2, C3 mendapatkan 2mbps karena priority-nya lebih tinggi dari B1 dan B2
ID-NETWORKERS | www.training-mikrotik.com
145
ID-NETWORKERS | www.training-mikrotik.com
146
ID-NETWORKERS | www.training-mikrotik.com
147
Simple Queue
• Konfigurasi simple queue yang paling sederhana adalah mendefinisikan target dan
max limit
• Target boleh single IP, Range IP, Subnet atau Interface yang berhadapan dengan
target yang mau dilimit
ID-NETWORKERS | www.training-mikrotik.com
148
Simple Queue
• Tab Total pada simple queue digunakan untuk melimit total upload dan download
(upload + download) dari target
Max
(Upload + download) = 1M
ID-NETWORKERS | www.training-mikrotik.com
149
ID-NETWORKERS | www.training-mikrotik.com
150
ID-NETWORKERS | www.training-mikrotik.com