源 NAT、目标 NAT 和伪装之间有什么区别?
例如,我认为 IP Masqurading 是他们过去在 Linux 中的称呼?但令我困惑的是,在我们的 Astaro 防火墙中,有 IP Masquarading 和 NAT 选项。所有这些有什么区别?
Zor*_*che 98
源 NAT 更改数据包IP标头中的源地址。它还可能更改TCP/UDP 标头中的源端口。典型用法是将私有 (rfc1918) 地址/端口更改为用于离开网络的数据包的公共地址/端口。
目标 NAT 更改数据包 IP 标头中的目标地址。它还可能更改TCP/UDP 标头中的目标端口。其典型用途是将目标为公共地址/端口的传入数据包重定向到网络内的私有 IP 地址/端口。
伪装是源 NAT 的一种特殊形式,其中在将规则添加到内核中的表时源地址是未知的。如果您想允许在防火墙后面具有私有地址的主机访问 Internet,并且外部地址是可变的 (DHCP),这就是您需要使用的。伪装会将数据包的源 IP 地址和端口修改为分配给传出接口的主要 IP 地址。如果您的传出接口的地址是静态的,那么您不需要使用 MASQ 并且可以使用 SNAT,这会更快一点,因为它不需要每次都弄清楚外部 IP 是什么。