NAT (Network Address Translation) — технология, которая преобразует IP-адреса
при передаче пакетов между внутренней сетью и интернетом.
Публичных IPv4-адресов в мире ограниченное количество.
NAT решает эту проблему — позволяет десяткам устройств выходить в интернет
через один публичный IP-адрес.
ПК (192.168.1.10) → Роутер (95.x.x.x) → Интернет
1. Устройство отправляет пакет в интернет
2. Роутер заменяет внутренний IP на свой публичный IP
3. Пакет уходит в интернет с публичным адресом роутера
4. Ответ приходит на роутер — он определяет, какому устройству
внутри сети его передать, и возвращает пакет нужному устройству
Интернет видит только публичный IP роутера.
Внутренние адреса устройств остаются скрытыми.
SNAT — Source NAT
Подменяет адрес отправителя. Используется для выхода внутренних устройств в интернет.
Именно этот тип работает в домашних роутерах.
DNAT — Destination NAT
Подменяет адрес получателя. Используется для проброса портов (port forwarding).
Пример: входящий запрос на порт 8080 роутера перенаправляется
на внутренний сервер 192.168.1.20:80.
PAT — Port Address Translation (маскарадинг)
Расширение SNAT. Множество устройств выходят через один IP,
но каждое соединение различается по порту.
192.168.1.10 : 50001 → 95.x.x.x : 50001
192.168.1.11 : 50002 → 95.x.x.x : 50002
192.168.1.12 : 50003 → 95.x.x.x : 50003
Именно PAT используется в большинстве домашних и офисных сетей.
NAT позволяет множеству устройств выходить в интернет через один публичный IP.
Роутер подменяет адреса на лету — устройства внутри сети остаются невидимы снаружи.