Разница между SNAT и MASQUERADE в Linux iptables заключается в следующем:
- SNAT (Source Network Address Translation) изменяет исходный адрес в заголовке пакета. 1 Основное применение — использование единственного реального IP-адреса несколькими компьютерами для выхода в Интернет. 1
- MASQUERADE (маскарадинг) используется в случаях, когда заранее неизвестен IP-адрес в Интернете. 1 Например, для подключений через DHCP, PPP, SLIP или другим способом, подразумевающим динамическое получение IP-адреса. 1
При этом MASQUERADE даёт более высокую нагрузку на систему, чем SNAT, так как определяет адрес внешнего интерфейса для каждого пакета. 2