Thursday, November 29, 2012

Redirect to Proxy dengan Mark-Routing dan dst-nat

Ada beberapa cara untuk redirect proxy, bisa menggunakan dst-nat bisa juga dengan mark-routing. Perbedaannya, akan saya bahas sedikiiiiit nanti.

kita misalkan
ip proxy  : 12.12.12.2:8080
ip client :  192.168.4.16
ip server yang diakses : 202.61.113.77 (www.kompas.com)

Untuk redirect NAT pada Mikrotik:
/ip firewall nat
add action=dst-nat chain=dstnat disabled=no dst-port=80 protocol=tcp src-address=192.168.4.0/24 to-addresses=12.12.12.2 to-ports=8080 

Jangan lupa menambahkan ip proxy ke IP>Firewall>Address List.
Sadar atau tidak, jika kita menggunakan NAT dengan dst-nat to proxy, permintan pengiriman data dari server atas permintaan client akan dimapping ke ip proxy. Secara otomatis ip server dari kompas akan mengirimkan data kepada ip proxy, bukan ke client langsung karena yang melakukan permintaan adalah ip proxy, bukan ip client, dan ip client menerima data dari ip proxy. Dengan kata lain, jika dari client melakukan netstat akan ketahuan berapa ip proxy kita.

Solusinya kita buat proxy kita transparen, ip client tidak di mapping ke proxy tapi dikirim langsung ke ip server melalui gateway dengan cara mark-routing. Dengan mark-routing, proxy berlaku sebagai gateway juga (jadi kita punya 2 gateway yang satu ke internet, yang satu ke proxy), sehingga seolah-olah tidak memakai proxy.

Jadi sebelum set mark-routing di mikrotik, set dulu proxy kita sebagai GATEWAY. Disini saya pakai proxy dengan freeBSD, caranya :
  1. tambahkan baris gateway_enable="YES"  pada /etc/rc.conf -> ini untuk mengubah proxy jadi gateway
  2. tambahkan baris ipfwd add 100 fwd 12.12.12.2,8080 tcp  from any to any recv nfe0 pada /etc/rc.local -> untuk redirect to proxy. ip dan nfe0 disesuaikan sesuai network kita.
  3. recompile kernel dengan menambahkan option-option berikut
  • options         IPFIREWALL              
  • options         IPFIREWALL_FORWARD      
  • options         IPFIREWALL_DEFAULT_TO_ACCEPT    
  • options         IPDIVERT               
      Cara kompile kernel di freebsd pernah saya post di sini.
    kemudian berikut untuk set mark-routingnya
    Contoh mark-routing :
    /ip firewall mangle
    add action=mark-routing chain=prerouting comment="PROXY; disabled=no dst-port=80 new-routing-mark=proxy passthrough=yes protocol=tcp src-address=192.168.4.0/24
    dan route-nya
    /ip route
    add comment="" disabled=no distance=1 dst-address=0.0.0.0/0 gateway=12.12.12.2  routing-mark=PROXY scope=30 target-scope=10 
    torch dst-nat

    sumber : http://reges007.wordpress.com/2011/05/22/perbedaan-redirect-to-proxy-memakai-dst-nat-dan-mark-routing/

    No comments:

    Post a Comment