Saya ingin berdiskusi sedikit tentang NAT punch, tepatnya bertanya sih :) Gini, saya sedang membuat eksperimen, bagaimana caranya supaya sebuah komputer yang berada di belakang NAT bisa dihubungi oleh komputer lain, tanpa perlu membuat port forwarding di NAT nya.
Ada beberapa rujukan yang saya baca : http://www.mindcontrol.org/~hplus/nat-punch.html http://midcom-p2p.sourceforge.net http://www.alumni.caltech.edu/~dank/peer-nat.html Percobaan yang saya lakukan : (1) Sebuah UDP server (A) berada di lokal network dengan IP 10.0.0.1 port 1500 (2) Sebuah NAT router bertindak sebagai gateway dari A dengan IP 100.0.0.1 (public IP) (3) Sebuah UDP server (C) berada di internet dengan IP 100.0.0.2 port 1500 (public IP) (4) UDP server B juga berada di dalam mesin yang sama dengan C port 2000 Yang saya lakukan : - A mengirim data ke C, sehingga C tahu IP_address:Port dari NAT router yang dipakai A - B diberitahu oleh C tentang IP_address:Port ini - B mengirim data ke IP_address:Port dengan harapan akan diforward oleh NAT ke A Apakah ini yang disebut dengan NAT punch? Dalam percobaan ini saya hanya menggunakan 1 buah NAT, sedangkan dalam rujukan di atas harusnya A dan B berada di belakang NAT juga. Saya mencoba menggunakan iptables sebagai NAT, dan percobaan ini gagal, data dari B tidak bisa diterima oleh A. Sepertinya hal ini terjadi karena iptables hanya tau port dari C, bukan B. Mohon pencerahannya, apakah pengertian saya tentang NAT punch ini sudah benar? Kalau iya, maka problemnya adalah di NAT yang saya pakai di percobaan ini, yaitu iptables. Dia tidak bisa ditonjok (punch) :) Ya sayangnya saya ndak punya alat lain yang benar-benar bekerja sebagai NAT router. Terima kasih, JA __________________________________ Do you Yahoo!? Yahoo! Mail - Helps protect you from nasty viruses. http://promotions.yahoo.com/new_mail