Friday, September 16, 2011

Perbedaan redirect to proxy memakai dst-nat dan mark-routing


Mungkin selama ini anda tidak pernah menyadari traffic sebuah server yang mengirimkan data atas permintaan ip klien jika menggunakan dst-nat to proxy itu server akan mengirim ke ip proxy bukan langsung ke ip klien yang telah melakukan permintaan tadi
Jadi kita akan mengalami kesulitan jika ingin membuat rule bypass/limit untuk ip server (port 80) yang dari luar yang telah masuk ke ip proxy



Contohnya ip klien 192.168.100.124 mengirim permintaan ke ip server 119.2.24.66:80 (server4.asixfiles.com) jika memakai dst-nat maka permintaan 119.2.24.66:80 ini akan di mapping ke ip proxy (contohnya 192.168.1.10:8080) sesuai NAT redirect pada mikrotik :
1/ip firewall nat
2add action=dst-nat chain=dstnat comment="" disabled=no dst-port=80 protocol=\
3    tcp src-address=192.168.100.0/24 to-addresses=192.168.1.10 to-ports=8080
Secara otomatis ip server 119.2.24.66:80 (server4.asixfiles.com) mengirimkan data kepada ip proxynya bukan ke klien langsung karena yang melakukan permintaan adalah ip proxy bukan ip klien dan ip klien baru menerima data dari ip server melalui ip proxynya
dstnat
Jadi kesimpulannya kita tidak bisa memisahkan ip server ini karena telah masuk ke ip proxy, seandainya kita mau melakukan bypass/limitter server tertentu yang dari port 80 akan mengalami kesulitan.
Dan disinilah kelebihan jika memakai redirect to proxy memakai mark-routing, sebab ip klien bukan lagi di mapping melainkan dikirim langsung ke ip server melalui GATEWAY. jadi systemnya adalah original id’s seolah-olah tidak memakai proxy/mapping untuk permintaan dari ip klien.

Contohnya ip klien melakukan permintaan ke server dan langsung dikirim oleh router melalui GATEWAY dan GATEWAY ini meneruskan ip klien tadi ke ip server baru ip server mengirimkan data atas permintaan ip klien.
Jadi kita mempunyai 2 GATEWAY dalam satu router dong?
Benar.. kita punya 2 GATEWAY satu untuk ke internet dan satu lagi ke proxy sebagai transparent proxynya dan itu dilakukan melalui mark-routing di mikrotik.
contoh mark-routingnya:
1/ip firewall mangle
2add action=mark-routing chain=prerouting comment="To Proxy (Expert ONLY!)" \
3    disabled=no dst-port=80 new-routing-mark=proxy passthrough=yes protocol=\
4    tcp src-address=192.168.100.0/24
dan untuk route-nya
1/ip route
2add comment="" disabled=no distance=1 dst-address=0.0.0.0/0 gateway=192.168.1.10 \
3    routing-mark=proxy scope=30 target-scope=10
Dan hasilnya seperti pada gambar di bawah ini:
mark-routing
Anda bisa melihat sendiri khan interface PROXY mengirimkan data langsung dari ip server ke ip klien :D
Permasalahannya bukan sampai disini saja, anda harus mengubah server proxy anda menjadi sebuah GATEWAY biar bisa melakukan forward ke internet dan ke klien (LAN). Dan untuk mesin FreeBSD dan Linux anda harus melakukan beberapa hal seperti berikut:
FreeBSD
tambahkan gateway_enable=”YES” pada “/etc/rc.conf” artinya diubah sebagai gateway
dan bikin autoexec untuk redirect to proxy pada “/etc/rc.local” (kalau tidak ada anda dapat create file baru) dan tambahan command berikut:
ipfw add 100 fwd 192.168.1.10,8080 tcp from any to any 80 recv em0
atau bisa juga membuat bin/.sh pada “/usr/local/etc/rc.d/”
jangan lupa sesuikan ip dan em0 sesuai network anda.
terakhir recompile kernel FreeBSD anda dengan menambahkan
“options IPFIREWALL_FORWARD”
“options IPFIREWALL_DEFAULT_TO_ACCEPT” # ini opsi untuk jaga-jaga kalau macet saja biar tidak ada yg ke blokir karena server ini bukan untuk IP PUBLIK
Linux
tentunya harus di install dulu paket ip-tables (silahkan google cara installnya sesuai distro anda)
untuk enable forward edit/tambahkan value net.ipv4.ip_forward = 1 pada “/etc/sysctl.conf”
masquerade menggunakan ip-tables via terminal
1iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
redirect port menggunakan ip-tables
1iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
eth0 dan port 8080 sesuaikan dengan network anda.
lalu save dan restart ip-tablesnya
service iptables save
service iptables restart
atau silahkan mencari referensi sendiri sesuai distro masing-masing :)
Selamat mencoba!
diantaranya yang sudah sukses mencoba di FMI
Forummikrotik
wiki.warneter.net
dan inilah cuplikan bw management yang simple gk pake ribet kalau di lihat juga gak bikin mumet :D
klik untuk memperbesar gambar