在 ASA 防火墙配置 NAT 分为 4 种类型: 动态 NAT, 动态 PAT, 静态 NAT, 静态 PAT.
结合实验拓补来了解如何配置这四种 NAT 类型:
基本配置已经配置完成
动态 PAT 转换配置方法:
- ASA(config)# nat (inside) 1 10.1.1.0 255.255.255.0
- # 声明内部地址, nat-id 为 1
- ASA(config)# global (outside) 1 30.1.1.100-30.1.1.200
- # 声明全局地址, nat-id 与内部 nat-id 相对应
测试一下, 查看 ASA 地址转换表
- ASA(config)# show xlate detail
- # 查看 ASA 地址转换表
- 1 in use, 1 most used
- Flags: D - DNS, d - dump, I - identity, i - dynamic, n - no random,
- r - portmap, s - static
- NAT from inside:10.1.1.2 to outside:30.1.1.100 flags i
- # 把内部全局地址 10.1.1.2 转换为 30.1.1.100
i 表示动态 NAT
动态 PAT 转换配置方法 (第一种)
- ASA(config)# nat (inside) 1 10.1.1.0 255.255.255.0
- # 声明内部地址, nat-id 为 1
- ASA(config)# global (outside) 1 30.1.1.254
- # 声明全局地址为 30.1.1.254 ,nat-id 与内部 nat-id 相对应
测试一下, 查看 ASA 地址转换表
- ASA(config)# show xlate detail
- # 查看 ASA 地址转换表
- 1 in use, 1 most used
- Flags: D - DNS, d - dump, I - identity, i - dynamic, n - no random,
- r - portmap, s - static
- TCP PAT from inside:10.1.1.2/11001 to outside:30.1.1.254/1024 flags ri
- # 把内部全局地址 10.1.1.2 转换为 30.1.1.100
ri 表示动态端口映射
第二种方法:
- ASA(config)# nat (inside) 1 10.1.1.0 255.255.255.0
- # 声明内部地址, nat-id 为 1
- ASA(config)# global (outside) 1 interface
- INFO: outside interface address added to PAT pool
- # 声明内部地址全部转换为 outside 区域接口地址
测试一下, 查看 ASA 地址转换表
- ASA(config)# show xlate detail
- # 查看 ASA 地址转换表
- 1 in use, 1 most used
- Flags: D - DNS, d - dump, I - identity, i - dynamic, n - no random,
- r - portmap, s - static
- TCP PAT from inside:10.1.1.2/11003 to outside:30.1.1.1/1024 flags ri
- # 转换为 outside 接口的地址
一般情况第二种比较实用
静态 NAT 转换配置方法
- ASA(config)# static (dmz,outside) 100.1.1.1 20.1.1.2
- # 第一个 IP 地址是公网 IP 地址, 第二地址是 dmz 区域服务器的真实 IP 地址
- ASA(config)# access-list 100 permit ip host 30.1.1.2 host 100.1.1.1
- ASA(config)# access-group 100 in int outside
- # 设置 ACL 允许 outside 区域访问 dmz 区域, 但是访问的映射后的地址
测试一下, 查看 ASA 地址转换表
- ASA(config)# show xlate detail
- # 查看 ASA 地址转换表
- 1 in use, 1 most used
- Flags: D - DNS, d - dump, I - identity, i - dynamic, n - no random,
- r - portmap, s - static
- NAT from dmz:20.1.1.2 to outside:100.1.1.1 flags s
- # 表示 dmz 区域的 20.1.1.2 映射成公网地址 100.1.1.1 访问
s 静态, 永久的地址转换
一般这种方法经常使用, 用于发布内部服务器
可以使用 clear xlate 清除 NAT 转换条目 (但是, 静态条目不会被删除)
可以使用 clear configure static 删除静态的相关配置
静态 PAT 转换配置方法
- ASA(config)# static (dmz,outside) tcp 100.1.1.1 http 20.1.1.2 http
- ASA(config)# static (dmz,outside) tcp 100.1.1.1 smtp 20.1.1.3 smtp
- # 将内部服务器地址映射到同一个公网地址不同端口号
- ASA(config)# access-list 100 permit ip host 30.1.1.2 host 100.1.1.1
- ASA(config)# access-group 100 in int outside
- # 设置 ACL 允许 outside 区域访问 dmz 区域, 但是访问的映射后的地址
测试一下, 查看 ASA 地址转换表
- ASA(config)# show xlate detail
- # 查看 ASA 地址转换表
- 2 in use, 2 most used
- Flags: D - DNS, d - dump, I - identity, i - dynamic, n - no random,
- r - portmap, s - static
- TCP PAT from dmz:20.1.1.2/80 to outside:100.1.1.1/80 flags sr
- TCP PAT from dmz:20.1.1.3/25 to outside:100.1.1.1/25 flags sr
- # 将内部的服务器映射到公网同一个 IP, 不同端口号
sr 表示静态 PAT
NAT 豁免配置方法
- ASA(config)# nat-control
- # 表示通过 ASA 防火墙的数据包都必须使用 NAT 地址转换技术
- ASA(config)# access-list 102 permit ip 10.1.1.0 255.255.255.0 30.1.1.0 255.255.255.0
- ASA(config)# nat (inside) 0 access-list 102
- #inside 接口应用 ACL, 注意 nat-id 为 0 表示使用 NAT 豁免, 优先级最高
就是 ACL 中的地址经过 ASA 防火墙时, 不需要进行地址转换
大概就这么多, 愿我们共同学习, 共同进步!
来源: http://www.bubuko.com/infodetail-3075098.html