深度好文:源 NAT 类型的防火墙

举报
wljslmz 发表于 2022/07/28 00:16:01 2022/07/28
【摘要】 防火墙和路由器一样,可以部署 NAT 功能来进行地址转换,但相比路由器,防火墙的NAT功能提供了更丰富的选择,让管理员可以更灵活地使用NAT功能。 在本文中,我们将讨论源 NAT 功能中的防火墙。 防...

防火墙和路由器一样,可以部署 NAT 功能来进行地址转换,但相比路由器,防火墙的NAT功能提供了更丰富的选择,让管理员可以更灵活地使用NAT功能。

在本文中,我们将讨论源 NAT 功能中的防火墙。

防火墙的源NAT可以分为两种:只进行地址转换同时进行地址和端口转换。仅地址转换模式包括 NAT No-PAT,而地址和端口转换模式包括 NAPT、Smart NAT、Easy IP 和三重 NAT。

NAT No-PAT

NAT No-PAT 只执行简单的源地址转换

管理员在配置NAT No-PAT时,需要指定NAT地址池,设备在对用户消息进行源地址转换时,会从地址池中选择一个IP地址,替换消息中的源IP地址,创建server-map表项和会话表项,然后发送消息。

由于每个用户都需要一个公网地址来进行源地址替换,所以如果有100个内网用户,则需要100个公网地址来满足同时进行的源地址转换请求,因此,NAT No-PAT 不会节省公网地址资源。

NAT No-PAT 将每个源 IP 转换为唯一的公共 IP 地址:

NAPT

与 NAT No-PAT 相比,NAPT 不仅会转换源 IP 地址还会转换源端口

由于这种机制,NAPT允许一个公网IP地址对应多个私网用户,防火墙根据端口号区分不同的用户,此外,NAPT 不会像 NAT No-PAT 那样同时为每次转换生成服务器映射表和会话条目。相反,它只为每次转换生成一个会话条目

NAPT 转换 IP 和端口:

Smart NAT

Smart NAT的出现就是为了解决NAT No-PAT只能为内网用户提供少量地址转换需求的矛盾。

Smart NAT结合了NAT No-PAT和NAPT两种模式,将地址池中的一个IP地址指定为保留IP,当地址池中剩余的地址被NAT No-PAT用尽时,如果还有额外的用户需要地址转换服务,防火墙会针对这些用户的地址转换需求进行NAPT转换。

Easy IP

Easy IP 模式与 NAPT 模式非常相似,都是同时转换源 IP 地址和源端口,但是NAPT会遇到用户公网IP不是固定IP的场景,比如PPPoE拨号用户。

此时设备上没有办法指定NAT地址池,可以使用easy IP方式。

Easy IP模式将报文的源IP地址替换为出口接口的IP地址,省去了指定NAT地址池的过程,这使得 PPPoE 场景中的地址转换成为可能。

三重 NAT

三重 NAT 也是一种同时转换地址和端口的模式

但与其他源NAT方式最大的不同在于,三重NAT允许公网用户访问私网用户。这是因为其他的源NAT模式都是在5元组NAT模式下进行的,可能会有不同的私网用户共享同一个公网IP的同一个端口号,比如:

假设 NAT 地址为 1.1.1.1,

当源地址 10.1.1.1 访问 2.2.2.2 的 TCP 80 端口时,使用 1.1.1.1 的 1000 端口来标记会话,此时10.1.1.2访问2.2.2.2的TCP 200端口时,仍然可以使用1.1.1.1的1000端口来标记新的会话。但是,当10.1.1.2也访问2.2.2.2的TCP 80端口时,需要与1.1.1.1的其他端口标记会话。

5 元组 NAT 中的端口重用:

也就是说,当防火墙用五元组(源端口、目的端口、源地址、目的地址、协议号)标记会话时,即使替换后的源地址和源端口重复,只要目的端口或目的IP地址不一样,防火墙可以区分这两个会话。

与五元组 NAT 不同,三元组 NAT 模式不重复使用端口号,因此可以唯一标识一个用户,使从公网访问私网用户成为可能。

与 NAT No-PAT 一样,三重 NAT 也同时生成 server-map entry 和 session entry 。

总结

下表详细显示了这五种源 NAT 模式的异同:

文章来源: blog.csdn.net,作者:wljslmz,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/weixin_43025343/article/details/123008131

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。