Source NAT cambia la dirección de origen en el encabezado IP de un paquete. También puede cambiar el puerto de origen en los encabezados TCP / UDP. El uso típico es cambiar una dirección / puerto privado (rfc1918) en una dirección / puerto público para los paquetes que salen de su red.
El NAT de destino cambia la dirección de destino en el encabezado IP de un paquete. También puede cambiar el puerto de destino en los encabezados TCP / UDP. El uso típico de esto es redirigir los paquetes entrantes con un destino de una dirección / puerto público a una dirección / puerto IP privado dentro de su red.
El enmascaramiento es una forma especial de NAT de origen donde la dirección de origen es desconocida en el momento en que la regla se agrega a las tablas en el núcleo. Si desea permitir que los hosts con dirección privada detrás de su firewall accedan a Internet y la dirección externa es variable (DHCP), esto es lo que necesita usar. El enmascaramiento modificará la dirección IP de origen y el puerto del paquete para que sea la dirección IP principal asignada a la interfaz saliente. Si su interfaz de salida tiene una dirección que es estática, entonces no necesita usar MASQ y puede usar SNAT, que será un poco más rápido ya que no necesita averiguar cuál es la IP externa cada vez.