3agl33y3Avatar border
TS
3agl33y3
OpenBSD Indonesia
Welcome to FREE, FUNCTIONAL AND SECURE Operatyng System
+[NEWOPENBSD COMMUNITY THREAD]+
++


Menindaklanjuti thread OpenBSD yang lama udah g aktif,
Quote:


mending buat thread OpenBSD Community yang baru aja.

+What's OpenBSD?
Quote:


+Download OpenBSD
Spoiler for Download OpenBSD:
Cara download .ISO-nya:
Quote:


Link Download Torrent
Spoiler for OpenBSD-4.8:

Download OpenBSD VMware Image
Spoiler for VMware:

MIRROR LOKAL nich emoticon-Ngacir
Spoiler for Lokal nich:

+Tutorial OpenBSD
Quote:

+E-Book OpenBSD
Quote:
+Other Open?
Quote:

+Link Pendukung

Quote:


Langganan Majalah BSD Gratis Bulanan
Quote:



emoticon-I Love IndonesiaKarena mirror OpenBSD Lokalsedang down, kita gabung disini dulu atau Grup OpenBSD Indonesia di FB
emoticon-I Love Indonesia

Tolong di RATE ***** gan, biar komunitas OpenBSD di Indonesia berkembang, silakan share tutorial,pertanyaan,saran atau uneg-uneg yang lain tentang OpenBSD disini gan

Tambahan:
Quote:
tata604
tata604 memberi reputasi
1
27.3K
260
GuestAvatar border
Guest
Tulis komentar menarik atau mention replykgpt untuk ngobrol seru
Mari bergabung, dapatkan informasi dan teman baru!
Linux dan OS Selain Microsoft & Mac
Linux dan OS Selain Microsoft & MacKASKUS Official
4.4KThread2KAnggota
Tampilkan semua post
when2Avatar border
when2
#62
Traffic Shaping with ALTQ+PF on OpenBSD Part II
Okay, sekarang waktunya part kedua dari sharing saya.

Setelah kemarin kita melakukan daftar antrian, sekarang mari kita melakukan penempatannya.

Dimana kita bisa melakukan penempatan antrian?
Penulisan antrian bisa dilakukan pada bagian rule. yaitu pada sintaks Pass in, Pass out

Bagaimana caranya?
sederhana sekali. Inilah alasan saya mengapa saya menyukai firewall PF dari OpenBSD. Untuk memasukan antrian, cukup dengan sintaks seperti ini:
Code:
pass in on $ext_if from ($ext_if) to any [B]queue[/B] ([B]web_out[/B],[B]ack_out[/B])


Perhatikan yang saya bold.
queueadalah sebuah perintah untuk mengatur setiap paket yang cocok dengan rule ini akan dimasukan ke antrian .....
web_out, ack_out adalah nama antrian yang sudah kita buat sebelumnya. Kenapa ada dua? Ini menariknya PF+ALTQ.

  • web_out (antrian yang awal) adalah antrian yang digunakan ketika sebuah paket baru membangun sebuah koneksi.
  • ack_out (antrian yang kedua) adalah ketika koneksi sudah terbangun.

Pada prakteknya dan juga berdasarkan contoh calomel.org serta man pf.conf, antrian yang kedua dipakai untuk paket-paket ack. Paket ack umumnya lebih kecil namun biasanya diatur memiliki prioritas lebih tinggi agar tidak terjadi timeout karena misalkan pada jaringan yang padat, ack ikut dalam antrian dan terlambat dikeluarkan.

Namun tidak masalah jika anda hanya ingin menyebutkan satu buah antrian saja. Jika anda tidak menyebut/mendefinisikan antrian, maka pf akan memasukannya kedalam antrian yang anda sudah definisikan secara default di ALTQ.

Nah, untuk melihat apakah anda sudah mengatur traffic dengan benar, silahkan ketik:
Code:
systat queue

pada terminal (bukan pada pf.conf ya emoticon-Big Grin)
Disana anda akan melihat paket-paket yang melalui masing-masing antrian.

SELESAI

Mudah bukan? Sekarang saya akan memberikan FAQ yang merupakan hasil dari coba-coba saya (atau mungkin karena kebodohan saya) yang semoga bermanfaat.

Konvensi
$int_if adalah interface yang terhubung ke LAN
$ext_if adalah interface yang terhubung ke Internet.
Asumsi, semua user di LAN jika akan melakukan koneksi ke Internet, harus di nat.

Bagaimana cara mengatur prioritas paket yang akan keluar (upload)?
Sederhana.Logikanya, kita akan mengatur traffic yang keluar. Berarti queue harus kita pasang di rule yang mengarah keluar.
Misal, kita mau setiap aplikasi dari port 80,443 menggunakan antrian web_out dan ack_out. Kemudian aplikasi YM menggunakan antrian messenger_out. Berarti kita buat sintaks:

Code:

pass out on $ext_if proto tcp from ($ext_if) to any port { 80, 443 } queue (web_out, ack_out)
pass out on $ext_if proto tcp from ($ext_if) to any port { 5050 } queue ( messenger_out)


Bagaimana cara mengatur prioritas paket yang akan masuk ke user (download)?
Mungkin bagi orang awam atau baru akan berpikir sama seperti saya. Sederhana, lakukan saja sperti tadi. Misal kita punya antrian untuk masuk web_in dan messenger_in, Jika maksud anda adalah seperti dibawah

Code:

pass out on $int_if proto tcp from any to $int_if:network port { 80, 443 } queue (web_in)
pass out on $int_if proto tcp from any to $int_if:network port { 5050 } queue ( messenger_in)


maka anda: SALAH besar.
Jika anda berhasil, tolong kontak saya segera dan akan saya perbaiki sharing ini. Untuk mengecek berhasil atau tidak, silahkan periksa lewat systat queue. Jika benar maka akan ada paket-paket yang melewati antrian anda. Dari percobaan saya, tidak ada paket yang masuk ke antrian emoticon-Smilie

yang BENARadalah seperti ini:
Code:

pass in on $int_if proto tcp from $int_if:network to any port { 80, 443 } queue (web_in)
pass in on $int_if proto tcp from $int_if:network to any port { 5050 } queue ( messenger_in)


Mungkin bagi anda yang kritis, akan bertanya: "Mengapa diletakan di pass-in? Bukankah kita mau membatasi/mengatur traffic keluar dari $int_if? "
Betul sekali argumen anda. Saya setuju.
Tapi, kita melakukan hal tersebut karena secara sifat dari PF yang secara default akan membuat state baru dari sebuah koneksi. Perintah diatas benar JIKA koneksi yang akan kembali ke LAN dilakukan oleh server/router/mesin openBSD kita (misal kita membuat web server pada mesin kita, maka rule diatas akan berlaku dan antrian kita akan bekerja).

Sekarang bandingkan jika router kita bertindak sebagai router/gateway/firewall. Respon dari server di internet dilakukan setelah mendapatkan permintaan dari user di LAN. Maka, ketika user mengirim request ke internet, melewati openBSD, maka openBSD akan mencatat state tersebut. Ketika satu buah koneksi sudah dicatat state-nya, maka ketika ada pertukaran paket baik masuk atau keluar tidak akan diperiksa lagi.

Oleh sebab itu, kita mengatur queue saat paket masuk, supaya ketika dia kembali, dia akan masuk kedalam antrian yang telah kita tentukan.

Sedikit membingungkan mungkin, terutama bagi yang sebelumnya bekerja menggunakan firewall IPtables dimana koneksi INPUT dan OUTPUT dapat terpisah.



resource:
https://calomel.org
man pf.conf
0
Ikuti KASKUS di
© 2023 KASKUS, PT Darta Media Indonesia. All rights reserved.