Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Optimalisasi Setting pfSense 1.2.x Traffic Shaping dgn Squid Transparent Proxy

    Scheduled Pinned Locked Moved Indonesian
    42 Posts 18 Posters 46.0k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • G
      grage95
      last edited by

      ^^^
      silahkan di thread http://forum.pfsense.org/index.php/topic,19669.0.html

      1 Reply Last reply Reply Quote 0
      • 1
        111ichael
        last edited by

        @kambeeng:

        Hello pfSense Indonesia!

        Kegagalan pada Squid Transparaent Proxy disebabkan karena Squid membypass Shaper dengan Merouting IP 127.0.0.1:80.
        Karena hal itu semua paket akan terendap di dalam qLANDef queue,dan wizard default qOthersDownH queue
        Segala eksperiment ini bukan tanggung jawab saya Silahkan Di Coba Di Develop Di pfsense anda. saya hanya ingin berbagi.

        Agar mendapat hasil maximum dalam traffic shapper & Squid, anda menjadi optimal tanpa masalah maka yang anda lakukan adalah :

        Jika Squid anda 2.6 inject ke 2.7 atau 3.0

        Pada dasarnya Pruimary SQUID Lokasi di pfsense adalah /etc/inc dan kamu akan menemukan Filter.inc. didalam filter.inc disana terdapat check untuk squid package, jika ini ada, ini akan terload filter dari /usr/local/pkg/squid.inc nah file inilah yang akan nantinya kita coba modif.

        Yakinkan kamu telah menginstall SQUID, dan kamu telah mengaktifkan transparent proxy sebelum memulai.

        1.) Aktifkan SSH di pfsense anda.

        2.) Rubah squid.inc file
        cd /usr/local/pkg
        vi squid.inc

        ketika di dalam vi editor tekan gasis miring "/". ketik '127.0.0.1' dan tekan enter. tekan huruf 'n' dan ini akan menuju fle berikutnya. Pencarian ini akan menemukan data  127.0.0.1.  squid.inc adalah file yang bertugas membuat squid config dan rules untuk routing traffic melalui 127.0.0.1:80, sebagai ganti LOCAL LAN interface.  dan ini akan menyebabkan bypassTraffic Shaper tentu kita tidak menginginkan itut.  Kamu akan menemukan 3 data '127.0.0.1' di dalam file ini.  Yang pertama untuk squid config file.  Yang kedua adalah default ACL. dan yang terakhir actual redirect rule untuk /tmp/rules.debug.

        Rubah '127.0.0.1' kedalam local interface IP (Contoh 192.168.2.x).  Dan Ingat jangan pernah ,merubah port 80 selanjutnya '127.0.0.1' jika anda menemukan itu.  Sebab itu akan kita pakai untuk default.

        3.) Rubah webgui port dari web management site.dan terdapat di System/General Setup' dan rubah port disana.  Yakinkan port di set ke port selain 80/443.  Contoh 81.

        4.) Perbaiki LAN firewall rules.

        Karena setelah perubahan port anda tidak mungkin akan membuka webgui secara standard, pastikan LAN rules allow / mengizinkan anda untuk access webgui dengan port yang anda rubah contoh http://192.168.2.x:81.

        5.) Disable Web-GUI Anti Lockout rule
        Caranya 'System/Advanced' and check the "Disable Web-GUI Anti Lockout rule".  Ketika  rule is enabled, the traffic shaper gagal,  dan routes traffic queues akan salah.  mendisable itu akan memindahkan HTTP traffic ke dalam qOthers.

        6.) Restart the SQUID service and do a FILTER RELOAD dari 'Status/Filter Reload' menu.  Tunggu sampai filter beraksi dan test konfigurasi anda.  Tunggu beberapa saat. Butuh waktu beberapa saat agar konfigurasi berjalan)

        Perubahan ini akan mengefectifkan route packets dari SQUID 3128 to GATEWAY 80, sehingga TS akan berjalan mulus.

        dalam TS saya saya gunakan rules untuk HTTP, saya gunakan 'ANY' (*) untuk source.  Saya percaya LAN Subnet akan berjalan.

        Selamat Mencoba

        Kambeeng  ;D

        Klo traffic shapping diaktifkan contohx: untuk upload:128Kbps dan download:1024Mbps dan squid di set transparent di server tsb, klo client suatu saat melakukan request ke origin server dan ternyata request tsb ada di cache squid maka kecepatan transfer maks yg di dapat antara client dgn server tsb hanya maks 1Mbps bukan mendapat kecepatan LAN maks 100Mbps. bgmn solusinya??

        1 Reply Last reply Reply Quote 0
        • I
          ipoelnet
          last edited by

          Klo traffic shapping diaktifkan contohx: untuk upload:128Kbps dan download:1024Mbps dan squid di set transparent di server tsb, klo client suatu saat melakukan request ke origin server dan ternyata request tsb ada di cache squid maka kecepatan transfer maks yg di dapat antara client dgn server tsb hanya maks 1Mbps bukan mendapat kecepatan LAN maks 100Mbps. bgmn solusinya??

          mungkin ZPH, dan jika delay_pool deny ipproxy dan localhot.

          Iso cak, Asal sesuai aturan | Belajarlah seperti orang bodoh

          1 Reply Last reply Reply Quote 0
          • C
            CobakCobak
            last edited by

            om kambeeng, saya dah ganti di squid inc semua 127….. menjadi 192 dan portnya gag di ganti, dan itu lancar2 ja setelah di restart, truss saya pernah baca tulisan nya om grage lpa topicnya yg mana ;D ttng mengganti port squid 3128 menjadi 80 spaya trapik seping nya "kena", tpi stlah diganti jdi gag bsa konek ( msuk ke squid error ), truss ini ada pengaruhnya gag ke error itu
            php: : SQUID is installed but not started. Not installing redirect rules. ( log dari system logs )

            maaf klo kurang jelas.

            thanks  ;)

            1 Reply Last reply Reply Quote 0
            • D
              dedieko
              last edited by

              Hanya ingin memberitahu jika saya sudah mengapplied "MOD" seperti ini sejak jaman pfsense 1.2REL dengan SQUID 2.6, dan dari dulu sehat sehat saja :)

              Bagi yang masih belum paham mana yang diganti, berikut line2-nya yang harus diMOD

              }
              if (($settings['transparent_proxy'] == 'on')) {
              $conf .= "http_port 127.0.0.1:80 transparent\n";
              }

              acl localhost src 127.0.0.1/255.255.255.255

              }   
              foreach ($ifaces as $iface) {
              $rules .= "rdr on $iface proto tcp from any to !($iface) port 80 -> 127.0.0.1 port 80\n";
              }

              Ganti semua 127.0.0.1 dengan IP LAN pfsense Anda. Tapi mohon diingat kalo mod ini membuat SQUIDnya listen di IP LAN tadi, jadi kalau ganti IP LAN, jangan lupa, line2 di atas disesuaikan ya….
              Jangan lupa merestart SQUIDnya

              1 Reply Last reply Reply Quote 0
              • I
                initial_d
                last edited by

                tolonglah nubi ini >.<
                sya pake pfsense 1.2.3 + squid…

                proxynya bekerja waktu mem-blacklist domain, tapi kok waktu gak ngaruh waktu di setting max. download size sma bw throttlenya.

                max download size = 5120 tapi kok download file di atas 5 mb masih bisa?

                overall bandwidth throttling = 16 kb/s tapi speed downloadnya masih bisa nyampe 20 - 25 kb/s

                gmn tuh....? apakah ada yang kurang dengan settingan proxynya....?
                mohon pencerahannya?

                1 Reply Last reply Reply Quote 0
                • J
                  jurais
                  last edited by

                  mu ikut nanya nih,.. ::)
                  aku pake pfsense 1.2.3 >> proxy squid + traffic shaping, tapi ko respon squidnya rada lemot ya, apa squidnya juga kena traffic shaping? trus gmana caranya supaya akses squid tidak kena limit, jadi klo client ngambil cache dari squid bisa maksimal,. mohon bantuanya,… thank's

                  1 Reply Last reply Reply Quote 0
                  • X
                    xaviero
                    last edited by

                    main queue buat download besarin ajah, jadi in ajah 100mb , tapi upload kudu sesuai dengan WAN ente…

                    1 Reply Last reply Reply Quote 0
                    • X
                      xaviero
                      last edited by

                      @initial
                      itu karena bursting… dan hal ini dah umum...

                      5mb= 5 x 1024KB loh...
                      coba ajah tes dengan 10mb...

                      1 Reply Last reply Reply Quote 0
                      • A
                        anto_DIGIT
                        last edited by

                        @xaviero:

                        @initial
                        itu karena bursting… dan hal ini dah umum...

                        5mb= 5 x 1024KB loh...
                        coba ajah tes dengan 10mb...

                        Kalau digedein jadi 10 .. 100mb, apa tdk merusak algoritma manajemen BW-nya  di sisi download?

                        Harusnya ada queue baru di LAN yg khusus utk squid hit .. tapi masalahnya belum bisa memisahkan paket yg ditandai oleh squid ..

                        1 Reply Last reply Reply Quote 0
                        • X
                          xaviero
                          last edited by

                          ane bingung, ente ng-quote, tapi ng-jawabnya ga nyambung…..

                          kalo maksud ente, main queue, yah tidak ngerusak lah, kan ada delay pool untuk kunci dari web, tapi kalo download dari proxy yah selimit nya traffic shaper.

                          1 Reply Last reply Reply Quote 0
                          • A
                            anto_DIGIT
                            last edited by

                            @xaviero:

                            ane bingung, ente ng-quote, tapi ng-jawabnya ga nyambung…..

                            kalo maksud ente, main queue, yah tidak ngerusak lah, kan ada delay pool untuk kunci dari web, tapi kalo download dari proxy yah selimit nya traffic shaper.

                            Traffic yg di atur kan ga cuma http, tapi ada P2P, VoIP, POP, IMAP, DNS, game, dll .. Kalau main queue diperbesar 10 - 100 x, pengaturan yg berdasar % akan membuat alokasi BW tdk sesuai dgn kenyataan yg ada …
                            delay pools pada squid juga msaih gampang ditembus dengan program downloader spt IDM DAP, downloadthemall dsb ... bagaimana juga jika client menggunakan torrent yg tidak dapat diatur melalui DP squid.
                            Alokasi BW dari main queue dimungkinkan dipakai oleh queue turunannya selama main queue masih tersedia BW kosong ... 
                            kan jadi rebutan BW ...
                            Begitulah cerita sebab-akibat dari pernyataan di atas .. Kalau masih dianggap tdk berhubungan ya tidak ada masalah ..

                            1 Reply Last reply Reply Quote 0
                            • X
                              xaviero
                              last edited by

                              btw, kalo ente nyebut DAP, IDM dan temen2 nembus delay pool, koq di PFsense ane, sedoter kek gituh koq ga jalan di tempat ane ?? ? :)

                              apa ente juga udah ngetes kek ane bilang , naikin bandwidth main queue download di traffic shaper, ato cumin berteori ???
                              ane udah implemen cara ini di 5 warnet, rata2 20 pc dengan 1 line speedy 1Mbps, dan puji Tuhan bisa berjalan sesuai harapan….

                              ane menggunakan cara kek gini,
                              -traffic shaper sebagai alokasi jatah real bandwidth WAN kepada masing2 group LAN
                              -traffic shaper men-losskan bandwidth yang ada di proxy ke LAN
                              -manajemen prioritas bandwidth

                              proxy
                              -cache
                              -kunci/cekek download
                              -tapi tidak mengunci browsing (selama ada di cache, ente bisa cek ini di thread om grage)

                              1 Reply Last reply Reply Quote 0
                              • A
                                anto_DIGIT
                                last edited by

                                Memang bisa tidak tembus dng cara mendefinisikan extension secara lengkap,
                                tetapi mungkin ini kelemahannya :
                                1 user yg download beberapa file sekaligus dng extension berbeda, speednya tdk berkurang, tetapi dng 2 download yg speednya sama sehingga menghasiskan BW 2x dari yg telah diatur dlm delay pools.
                                Bagaimana jika 2 atau lebih client download file dng extension yg sama?

                                BW yg hanya mengandalkan delay pools kurang cocok untuk hotspot, terutama yg usernya pecinta torrent.
                                HFSC di pfsense 2.0 beta, sudah dicoba sangat ampuh untuk membatasi download melalui P2P seperti utorent, emule, dsb ..
                                Pengaturan prioritas BW utuk game dan VoIP OK juga.

                                Tapi terus terang trimakasih juga  :) , karena selama ini pakai delay pools ternyata extension file-nya masih banyak yg harus ditambah.

                                1 Reply Last reply Reply Quote 0
                                • X
                                  xaviero
                                  last edited by

                                  ]]Tapi terus terang trimakasih juga  Smiley , karena selama ini pakai delay pools ternyata extension file-nya masih banyak yg harus ditambah.

                                  hhhmm, berdasarkan keterangan diatas, berarti ente memanfaatkan ekstensi sebagai kondisi delay pool, nah lebih bagus kalo ente tambahin satu rule lagi, di traffis shaping, bagian untuk p2p, kasi ajah jatah download/upload sekian Kbps

                                  1 user yg download beberapa file sekaligus dng extension berbeda, speednya tdk berkurang, tetapi dng 2 download yg speednya sama sehingga menghasiskan BW 2x dari yg telah diatur dlm delay pools.
                                  Bagaimana jika 2 atau lebih client download file dng extension yg sama?

                                  so far, yang telah ane implementasikan untuk kelas sedoter, jika menggunakan port 80 maka dikunci di delay pool, begitu juga dengan p2p.
                                  nah ke dua rule tersebut ane kunci di queue traffic shaper di 256kbps, dengan burst 10mbps selama 5 detik… (untuk tujuan ngambil di proxy)
                                  delay pool ane kunci di angka 10KBps untuk per host throttle

                                  intinya, ane make delay pool dan shaper untuk optimalisasi b/w cache proxy dan b/w WAN, biar adil sesuai penggunaan. btw berikut prio ane

                                  1. Game online
                                  2. Browsing
                                  3. Chatter/email
                                  4. Sedoter

                                  1 Reply Last reply Reply Quote 0
                                  • A
                                    anto_DIGIT
                                    last edited by

                                    @xaviero:

                                    ]]Tapi terus terang trimakasih juga  Smiley , karena selama ini pakai delay pools ternyata extension file-nya masih banyak yg harus ditambah.

                                    hhhmm, berdasarkan keterangan diatas, berarti ente memanfaatkan ekstensi sebagai kondisi delay pool, nah lebih bagus kalo ente tambahin satu rule lagi, di traffis shaping, bagian untuk p2p, kasi ajah jatah download/upload sekian Kbps

                                    1 user yg download beberapa file sekaligus dng extension berbeda, speednya tdk berkurang, tetapi dng 2 download yg speednya sama sehingga menghasiskan BW 2x dari yg telah diatur dlm delay pools.
                                    Bagaimana jika 2 atau lebih client download file dng extension yg sama?

                                    so far, yang telah ane implementasikan untuk kelas sedoter, jika menggunakan port 80 maka dikunci di delay pool, begitu juga dengan p2p.
                                    nah ke dua rule tersebut ane kunci di queue traffic shaper di 256kbps, dengan burst 10mbps selama 5 detik… (untuk tujuan ngambil di proxy)
                                    delay pool ane kunci di angka 10KBps untuk per host throttle

                                    intinya, ane make delay pool dan shaper untuk optimalisasi b/w cache proxy dan b/w WAN, biar adil sesuai penggunaan. btw berikut prio ane

                                    1. Game online
                                    2. Browsing
                                    3. Chatter/email
                                    4. Sedoter

                                    Bung, utk pengaturan BW melalui delay pools, sudah diaplikasikan dan memang terlimit dng baik tapi masalahnya kalau di lilihat melalui RRD graph di bagian traffic WAN dan LAN, sepertinya justru traffic WAN lebih tinggi.
                                    Apa ini mungkin pengaruh dari :

                                    • Sebenarnya squid tetap mendownload dng kecepatan penuh file yg diminta oleh client, tetapi squid membatasi kecepatan ke client dengan menunda pengiriman segment2 file tsb ke client. Apa betul seperti ini ?
                                    1 Reply Last reply Reply Quote 0
                                    • X
                                      xaviero
                                      last edited by

                                      traffic WAN ente, upload pa download yang lebih tinggi ???
                                      kalo upload, emang begitu adanya… (normal)
                                      kalo download, cek dulu, apa ada jalanin service auto-update pfsense nya.... (entah system, entah module)

                                      1 Reply Last reply Reply Quote 0
                                      • A
                                        anto_DIGIT
                                        last edited by

                                        @xaviero:

                                        traffic WAN ente, upload pa download yang lebih tinggi ???
                                        kalo upload, emang begitu adanya… (normal)
                                        kalo download, cek dulu, apa ada jalanin service auto-update pfsense nya.... (entah system, entah module)

                                        ini kutipan dari bung Faisal di forum KIOSS http://opensource.telkomspeedy.com/forum/viewtopic.php?pid=51922:

                                        squid delaypoll membatasi bandwidth di application layer, prinsipnya proxy server squid mendownload file dengan kecepatan penuh, kemudian mengirimkannya ke client dengan termin-termin waktu yang di delay
                                        berbeda dengan queing discipline yang dilakukan oleh kernel, (htb, cbq, pfifo, bfifo, sfq, esfq, red dan lainnya).
                                        klasifikasi, antrian dan keluar masuknya paket, di handle oleh network interface card (hardware) yang tentunya diatur oleh kernel, mengtatur jumlah bits in/out, mengatur ingress/engress secara langsung, sehingga lebih presisi.
                                        untuk performansi pengaturan bandwith yang lebih baik, disarankan untuk menerapkan metode limiter dengan pengaturan qdisc

                                        sistem PFS 2.0 beta (11 Juni 2010)
                                        Paket Game 1Mbps

                                        paket yg terinstall :

                                        • squid / lusca head
                                        • Lightsquid
                                        • phpSysInfo
                                          Sepertinya tdk ada update apa2.

                                        Work Period: Jun 2010
                                        Date Group Users Oversize Bytes Average Hit %
                                        15 Jun 2010 grp 10 7 294.5 M 29.5 M 58.27%
                                        14 Jun 2010 grp 21 14 1.6 G 75.9 M 47.23%
                                        13 Jun 2010 grp 30 21 1.9 G 64.0 M 32.64%
                                        12 Jun 2010 grp 20 15 2.9 G 146.6 M 27.02%
                                        11 Jun 2010 grp 18 15 2.6 G 150.7 M 23.01%
                                        10 Jun 2010 grp 18 12 2.4 G 137.4 M 32.00%
                                        09 Jun 2010 grp 21 14 2.0 G 97.8 M 25.57%
                                        08 Jun 2010 grp 20 11 943.5 M 47.2 M 17.82%
                                        07 Jun 2010 grp 22 16 1.8 G 83.4 M 19.80%
                                        06 Jun 2010 grp 23 19 2.5 G 109.4 M 19.72%
                                        05 Jun 2010 grp 23 15 3.6 G 161.0 M 5.49%
                                        04 Jun 2010 grp 15 6 219.2 M 14.6 M 6.26%
                                        Total/Average:   20 13 22.7 G 93.1 M 26.24%

                                        ini
                                        quick_abort_min 0 KB
                                        quick_abort_max 0 KB
                                        request_body_max_size 72000 KB
                                        reply_body_max_size 737280000 allow all
                                        delay_pools 1
                                        delay_class 1 2
                                        delay_parameters 1 61440/61440 25600/25600
                                        delay_initial_bucket_level 100

                                        Throttle extensions matched in the url

                                        acl throttle_exts urlpath_regex -i "/var/squid/acl/throttle_exts.acl"
                                        delay_access 1 allow throttle_exts
                                        delay_access 1 deny all

                                        BW control cativeportal UP : 90Kbit/s Down : 256Kbit/s

                                        1 Reply Last reply Reply Quote 0
                                        • A
                                          anto_DIGIT
                                          last edited by

                                          setelah delay pool dimatikan, ternyata grafik LAN dan WAN jadi normal
                                          Sebelumnya bahkan jumlah traffic WAN > LAN, padahal tdk ada update / auto update.
                                          Kemungkinan besar :

                                          • Dengan delay pool Squid mendownload semua permintaan client dengan kecepatan penuh dan mengirimkan ke client dng dibatasi alirannya .. padahal banyak kemungkinan client membatalkan permintaan tadi sebelum semua data sampai ke client (padahal mungkin squid sudah selesai atau hampir selesai download).
                                          • Ini ternyata membuat aliran tidak efisien karena banyak yg sia-sia ..

                                          Atau rekan-rekan punya pendapat lain ?

                                          1 Reply Last reply Reply Quote 0
                                          • X
                                            xaviero
                                            last edited by

                                            reply_body_max_size 737280000 allow all

                                            gede amir….

                                            kalo limitnya 737GB  yah semuanya kedonlod lah brow...

                                            ganti ama 5x1024KB=5120 ajah aliad 5MB

                                            coba bayangin, reply_body_max nya di setel 737GB yang berarti kalo ada file lebih besar dari 737GB baru dilimit ? ? ?  ::) ::) ::)

                                            Tag Name  reply_body_max_size
                                            Usage reply_body_max_size (KB)

                                            Description
                                            This option specifies the maximum size of a reply body. It can be used to prevent users from downloading very large files, such as MP3's and movies. The reply size is checked twice. First when we get the reply headers, we check the content-length value. If the content length value exists and is larger than this parameter, the request is denied and the user receives an error message that says "the request or reply is too large." If there is no content-length, and the reply size exceeds this limit, the client's connection is just closed and they will receive a partial reply.

                                            begitu juga dengan request_body nya, kecilin di 1MB

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.