前言
一:华为防火墙的NAT分类
- 主要分为NAT NO-PAT ,NAPT,出接口地址( Easy-IP),Smart NAT,三元组NAT。
1.1:NAT NO-PAT
- 【NAT no-PAT】类似于思科的动态转化,多对多,不转化端口,它不能解约公网IP地址
实际应用场景使用较少,主要适用于需要上网的用户比较少,而公网IP地址又足够多的场景
1.2:NAPT
- 【NAPT】(Network Address and Port Translation,网络地址和端口转换):
类似于Cisco的PAT转换,NAPT即转换报文的源地址,又转换源端口。转换后的地址不能是外网接口IP地址,
属于多对多或多对一转换,可以节约公网IP地址,使用场景较多。
1.3:出接口地址( Easy-IP)
- 【出接口地址(Easy-IP)】:因其转换方式非常简单,所以也被称为Easy-IP、
和NAPT一样,即转换源IP地址,又转换源端口。区别是出接口地址方式转换后的地址只能是
NAT设备外网接口所配置的IP地址,属于多对一转换,可以节约IP地址。
1.4:NAT Server
- 【NAT Server】:静态一对一发布,主要用于内部服务器需要对Internet提供服务时使用,。
1.5:Smart NAT
- 【Smart NAT(智能转换)】:通过预留一个公网地址进行NAPT转换,而其他的公网地址
用来进行NAT No-PAT转换,该方式不太常用。
1.6:三元组NAT
- 【三元组NAT】:与源IP地址、源端口和协议类型有关的一种转换,将源IP地址和源端口
转换为固定公网IP地址和端口,能解决一些特殊应用在普遍NAT中无法实现的问题。
主要应用于外部用户访问局域网的一些P2P应用。
二:黑洞路由
2.1:黑洞路由的产生
-
在特定的NAT转换时,可能会产生环路及无效ARP,关于其如何产生,大概就是,
在有些NAT的转换方式中,是为了解决内网连接Internet,而映射出了一个公有IP -
那么,若此时有人通过internet来访问这个映射出来的公有IP,就会产生这两种情况。
-
-
2.2:通过配置黑洞路由解决环路和ARP的问题
-
根据情况选择是否配置黑洞路由
-
NAT类型 描述 是否配置黑洞路由 NAT NO-PAT 当公网用户访向转换后地址时产生环路或产生ARP报文 是 NAPT 当公网用户访问转换后地址时产生环路或产生ARP报文 是 出接口地址( Easy-IP) 转换后的地址就是外网接口地址,公网用户访问该地址被防火墙接收(策略允许)或丢弃(策略不允不产生环路 否 NAT Server(粗泛) 当公网用户访问映射后地址时直接转发给内部服务器 否 NAT Server(精细) 当公网用户访问映射后地址时产生环路或产生ARP报文 是
-
2.3:配置黑洞路由的命令
-
解决这两个问题很简单,就是配置黑洞路由
-
(将internet主动访问映射出来的地址的流量指定到空接口null0)
-
[USG6000V1]ip route-static 100.2.2.10 32 NULL 0
三:Sever-map表
- 状态化防火墙中会有一张表叫做会话表,用来记录的是内网访问外网时的一个连接信息,
当外网返回的数据匹配到会话表的记录时,直接放行相关返回流量。 - server-map表不用手动配置,是自动生成的
3.1:Sever-map和会话表的区别
- 会话表记录的是连接信息,包括连接状态。
- ●server-map表记录的不是当前的连接信息,而是通过分析当前连接的报文后得到的信息,
该信息用来解决接下来的数据流通过防火墙的问题。可以将server-map表的作用理解为通过未雨绸缪解决将来的问题, - 如像FTP这种的多端口协议,在从一开始的三次握手,到最后完成数据的传输,其过程中,可能端口会发生改变等问题,
server-map正好可以解决这种问题。 - 然而在NAT中也需要这个server-map表,就是在有数据流量通过NAT的方式穿越防火墙时,
server-map表会记录其源地址和转换后地址的对应关系,从而使后续流量可以不用查看NAT策略,
直接匹配到server-map表,从而实现高效的NAT转换。若用户通过互联网访问转换后的地址时,
也可以匹配到server-map表,从而高效的将数据转发到内网真实主机(必须保证安全策略允许通过)。
3.2:server-map表的生成
-
server-map表不用手动配置,是自动生成的,在NAT中,不是所有的表都可以生成server-map表的,我简单总结了一下,如下:
-
NAT类型 描述 NAT no-PAT 动态生成server-map表,也就是说只有流量通过才会
自动生成server-map表,并且不是长期存在的NAT Server 静态生成server-map表,意味表中的内容长期存在 NAPT及出口地址方式 不会生成Server-map表
-
-
当防火墙上配置某些内类的NAT后,在防火墙上会生成Server-map,默认生成两个server-map条目,
分别是正向条目和反向条目(Reverse) -
此时Server-map表的作用是:
- 正向条目 :携带端口信息,用来使Internet用户访问内网中的服务器时直接通过server-map表来进行目标地址转换。
- 反向条目(Reverse):不携带端口信息,且目标地址是任意的,用来使服务器可以访问Internet。
3.3:FTP传输方式
3.3.1:主动模式
- 服务器主动发起数据连接。首先客户端向服务器的21端口建立FTP管理连接
控制连接源端口是1万以上的端口目标端口:21
客户端以PORT命令告诉服务器“我打开了某个端口”你来连我。
这个时候服务器以源端口20目标端口“我打开了某个端口”向客户机请求并建立连接。
3.3.2:被动模式
- 场景:客户端有防火墙。
客户机主动发起数据连接。首先客户端想服务器的21端口建立FTP管理连接
客户端有防火墙,这个时候服务器连接客户机是连不起来的,因为客户端有防火墙,需要被动模式
服务端以PASV命令告诉客户端“我打开了某个端口”你来连我。
于是客户端向服务端“我打开了某个端口″进行建立数据连接