Saya baru saja membaca sebuah artikel tentang proses "meninju lubang" dengan protokol UDP. Saya mengerti bagaimana ini dilakukan, tetapi saya punya satu pertanyaan terakhir untuk menjernihkan hal-hal. Kami memiliki server pertemuan dan klien A, B.
Klien A sudah membuat lubang untuk klien B. Klien B menerima IP NAT dan port NAT dari server rendezvous dan mulai mengirim data ke port yang sama dengan server rendezvous. Katakanlah saya kebetulan tahu port kedua yang telah dibuka NAT untuk koneksi UDP. Bisakah saya mengirim paket saya melalui port kedua ini juga? Atau apakah port dibedakan untuk setiap koneksi UDP keluar? Jika demikian, bagaimana bisa kita menggunakan port yang sama untuk Client B dan server pertemuan? Bukankah NAT membuka port baru ketika Client A meninju hole dan Client B harus tahu port baru yang dibuka NAT untuk koneksi spesifik ini?
Saya harap pertanyaan saya agak bisa dimengerti.