A-A+

思科ASA防火墙之NAT的一次试验

2016年02月16日 站长资讯 暂无评论

实验拓扑

软件版本GN3 0.8.6 ASA镜像8.0(2)

实验环境

R1和R2模拟公司内网,R3模拟互联网设备。ASA作为公司出口,实现NAT地址转换。

实验需求

在ASA上做动态NAT实现对R1 loopback 0 网段的地址转换。

在ASA上做动态PAT实现对R1 loopback 1 网段的地址转换。

在ASA上做静态NAT实现对R2 loopback 0 地址经行转换。

在ASA上做静态PAT实现将R2的F0/0的23端口映射为218.1.1.1这个地址的23端口。

地址规划

  1. R1 loopback 0 IP: 192.168.10.1/24  
  2. R1 loopback 1 IP: 172.16.1.1/24  
  3. R1 F0/0       IP: 11.0.0.2/24  
  4. R2 loopback 0 IP: 192.168.20.1/24  
  5. R2 F0/0       IP: 12.0.0.2/24  
  6. R3 F0/0       IP: 13.0.0.3/24  

配置如下:

路由器的一些基本配置这里就不做解释了。 http://www.xiaoxiongboke.com/

R1配置:

  1. R1(config)#int f0/0  
  2. R1(config-if)#ip add 11.0.0.2 255.255.255.0  
  3. R1(config-if)#no shut  
  4. R1(config-if)#int loo 0  
  5. R1(config-if)#ip add 192.168.10.1 255.255.255.0  
  6. R1(config-if)#int loo 1  
  7. R1(config-if)#ip add 172.16.1.1 255.255.255.0  
  8. R1(config-if)#exit  
  9. R1(config)#ip route 0.0.0.0 0.0.0.0 11.0.0.1  

R2配置:

  1. R2(config)#line vty  0 4  
  2. R2(config-line)#password abc123  
  3.    
  4. R2(config-line)#login  
  5. R2(config-line)#exit  
  6. R2(config)#ip route 0.0.0.0 0.0.0.0 12.0.0.1  
  7.    
  8. R2(config-if)#ip add 12.0.0.2 255.255.255.0  
  9. R2(config-if)#no shut  
  10.    
  11. R2(config-if)#int loo 0  
  12. R2(config-if)#ip add 192.168.20.1 255.255.255.0  

R3配置:

  1. R3(config)#int f0/0  
  2. R3(config-if)#ip add 13.0.0.3 255.255.255.0  
  3. R3(config-if)#no shut  

为R1的loopback 0 接口做动态NAT

ASA1配置:

  1. ASA1(config)# int e0/0  
  2. ASA1(config-if)# nameif inside              //定义接口名称  
  3. INFO: Security level for "intside" set to 100 by default.  
  4. ASA1(config-if)# ip add 11.0.0.1 255.255.255.0  
  5. ASA1(config-if)# no shut  
  6.    
  7. ASA1(config-if)# exit  
  8. ASA1(config)# int e0/1  
  9. ASA1(config-if)# nameif dmz  
  10. INFO: Security level for "dmz" set to 0 by default.  
  11. ASA1(config-if)# ip add 12.0.0.1 255.255.255.0  
  12. ASA1(config-if)# security-level 50          //配置接口安全级别  
  13. ASA1(config-if)# no shut  
  14. ASA1(config-if)# int e0/2  
  15. ASA1(config-if)# nameif outside  
  16. ERROR: Name "outside" has been assigned to interface Ethernet0/0  
  17. ASA1(config-if)# ip add 13.0.0.1 255.255.255.0  
  18. ASA1(config-if)# no shut  
  19. ASA1(config-if)# exit  
  20. ASA1(config)# route inside 192.168.10.0 255.255.255.0 11.0.0.2    
  21. ASA1(config)# route inside 172.16.1.0 255.255.255.0 11.0.0.2     //配置到达环回口的静态路由  
  22. ASA1(config)# route dmz 192.168.20.0 255.255.255.0 12.0.0.2  
  23. ASA1(config)# nat (inside) 1 192.168.10.0 255.255.255.0  //定义列表1,inside口要转换的地址  
  24.    
  25. ASA1(config)# global (outside) 1 200.1.1.10-200.1.1.20 netmask 255.255.255.0  
  26. //配置公网地址池范围  
  27. ASA1(config)# access-list 110 permit icmp any any   //这里为了偷懒就允许所有icmp  

在R3上添加回程路由,并开启debug

R3#debug ip icmp

R3#conf t

R3(config)#ip route 200.1.1.0 255.255.255.0 13.0.0.1

R1 loopback 0 ping R3 测试

从R3的debug信息可以看出NAT转换成功了

在ASA上为R1 loopback 1 接口做PAT

ASA1(config)# nat (inside) 2 172.16.1.0 255.255.255.0

ASA1(config)# global (outside) 2 interface

用R1 的 loopback 1 ping R3测试

查看R3上的debug信息,发现转换成功为外网口地址

在ASA上做为R2的loopback 0 做静态NAT,转换为222.222.222.222

ASA1(config)# static (dmz,outside) 222.222.222.222 192.168.20.1 //配置将192.168.20.1这个地址转换为222.222.222.222,注意公网地址是写在前面

在R3上做回程路由

R3(config)#ip route 222.222.222.222 255.255.255.255 13.0.0.1

在R2上ping 13.0.0.3 测试

在R3上查看debug信息,发现转换成功

在ASA上做静态PAT,将R2的F0/0的23端口映射为到218.1.1.1的23端口

ASA1(config)# static (dmz,outside) tcp 218.1.1.1 telnet 12.0.0.2 telnet

//配置将12.0.0.2的23端口映射到218.1.1.1这个地址的23端口,公网地址要写在前面

ASA1(config)# access-list 110 permit tcp host 13.0.0.3 host 218.1.1.1 eq 23

//定义一个ACL允许13.0.0.3对218.1.1.1进行telnet,由于之前110在接口上应用了这里就省略了

在R3上做回程路由

R3(config)#ip route 218.1.1.1 255.255.255.255 13.0.0.1

在R3上telnet 218.1.1.1 ,验证是否能映射到R2

总结:

动态NAT是多对多,定义一个地址池。地址池内有少个地址就可以有多少地址上公网。

动态PAT是一对多,让所有私网地址都复用一个地址去上公网。

静态NAT是一对一,一个私网地址指定一个公网地址。

静态PAT是端口映射,将一个公网地址的某个端口映射到私网的某个地址。

标签:

给我留言