Foundationপ্রথম নীতি থেকে
LEVEL 7 · Computer Networking

NAT

ন্যাট

Router-এ private IP থেকে public IP-তে address/port বদলে translate করার পদ্ধতি, NAPT-এ port-ও বদলায়।

also: napt

RFC1918 private range — 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16 — ইন্টারনেটে routable না। ঘরের device-দের ইন্টারনেটে পাঠাতে NAT router translate করে।

NAPT/PAT — আসল কাজটা port দিয়ে হয়; প্রতিটা outgoing connection NAT table-এ ঢোকে:

192.168.1.5:51820 -> 203.0.113.7:40001 -> 93.184.216.34:443
192.168.1.6:33445 -> 203.0.113.7:40002 -> 142.250.4.100:443

Reply ফিরলে টেবিল উল্টে সঠিক internal host-এ যায়। এক public IP-এ হাজার হাজার connection — IPv4 exhaustion টিকিয়ে রাখার অন্যতম প্রধান হাতিয়ার।

যা ভাঙে

  • Inbound connection — ভেতরের server-এ port forwarding লাগে; P2P/WebRTC-তে STUN/TURN traversal
  • End-to-end principle — host নিজের প্রকৃত address হারায়
  • CGNAT — ISP-level NAT, হাজার গ্রাহক এক IP ভাগ করে
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
sudo conntrack -L | head     # live translation table