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

Kirim email ke