มันเป็นสองวิธีอย่างใด และอย่างใดวิธีหนึ่ง จากคำถามและรูปภาพของคุณ ฉันกำลังพิจารณาว่าคุณกำลังใช้ NAT
สมมติว่าผู้ใช้ที่มี IP ต้นทาง 111.111.111.111 และร้องขอขาออกจากพอร์ต 7777
IP สาธารณะของคุณคือ 49.207.10.38 และเราเตอร์ขอบหรือพร็อกซีของคุณกำลังฟังพอร์ต 80
IP ส่วนตัวของเราเตอร์ภายในของคุณ 192.168.1.254
IP ของเซิร์ฟเวอร์ภายในของคุณคือ 192.168.1.100
- ผู้ใช้เข้าถึงเราเตอร์หรือพร็อกซีของคุณ: 111.111.111.111:7777 -> 49.207.10.38:80
- NAT แปล IP สาธารณะเป็น IP ส่วนตัวภายใน: แทนที่จะส่งแพ็คเกจภายในจาก 49.207.10.38 จะส่งเป็น 192.168.1.254 ในลักษณะที่โหนดภายในสามารถตอบกลับไปยังเราเตอร์ได้
- เราเตอร์ของคุณเปลี่ยนเส้นทางแพ็คเก็ตไปยังเซิร์ฟเวอร์ภายใน: 192.168.1.254.7777 -> 192.168.1.100:80
- เซิร์ฟเวอร์ภายในประมวลผลเนื้อหาของหน้าคำขอและคำตอบไปยังเซิร์ฟเวอร์ต้นทาง (ซึ่งตอนนี้เป็นเราเตอร์ภายใน): 192.168.1.100:80 -> 192.168.1.254:7777
- เราเตอร์ใช้การแปล NAT เพื่อส่งกลับไปยังผู้ร้องขอดั้งเดิม แต่ตอนนี้ NAT ยังแปล IP ภายในเป็น IP สาธารณะเพื่อให้ผู้ใช้สาธารณะสามารถเข้าถึงได้จากอินเทอร์เน็ตสาธารณะ (โดยจะจัดหาแพ็คเกจเป็น 49.207.10.38 แทน 192.168.1.254): 49.207.10.38:80 -> 111.111.111.111:7777
พึงระลึกไว้เสมอว่า