思科CCIE安全培训学习笔记

本文详细介绍了思科ASA中的两种主要NAT规则类型:TwiceNAT和NetworkObjectNAT,包括它们的特点、配置方式和适用场景,以及它们在访问控制列表中的应用和顺序规则。
摘要由CSDN通过智能技术生成

从ASA 8.31开始(习惯称为8.3开始,其实还有个8.30是老NAT),改为新的NAT设计。

 

思科CCIE安全培训学习笔记-只有两种NAT规则类型:

 

(1)Twice NAT (二次NAT,手动NAT)

 

(2)Network Object NAT (自动NAT)

 

特点:

 

(1)access-list注意要放行真实地址(与pre 8.3不同)

 

(2)助你记忆:Network Object NAT的命令格式中, nat 是object network的参数; Twice NAT中,object network是nat的参数

 

(3)你要转换什么地址,就定义这个地址的Network Object,然后加nat参数定义转换规则

 

一、Network Object NAT

 

——要么转换源地址,要么转换目的地址

 

(1)一个规则只能做一项转换(要么是源,要么是目的)

 

(2)一个数据包只能匹配上一个转换规则,之后就不会再匹配其他规则(自上至下)

 

(3)规则执行是有顺序的,系统会自动将所有network object nat规则进行排序,顺序:

 

(a)static优于dynamic

 

(b)掩码越长越优先

 

(c) IP地址越小越优先

 

(d)object名字字母越小越优先

 

(4)对于转换后地址为一个单一地址的情况下,可以直接写,也可以调用另一个定义好的object,好处是方便在不同策略中多次调用。如果是地址范围,就只能定义object了。

 

二、Twice NAT

 

——用于策略NAT转换,既能转换源地址,也能转换目的地址

 

(1)一个规则内既能转换源地址,也能转换目的地址

 

(2)一个数据包同样只能匹配上一个转换规则,之后就不会再匹配其他规则(自上至下)

 

(3)Twice NAT 规则执行顺序: 手动调整(行号)

 

(4)定义转换前转换后各个地址,都只能通过object来定义,不能直接写地址

 

(5)Twice NAT可以调用object也可以调用object-group,而Network Object NAT只能在object中使用,不能在object-group中使用

 

三、两者之间的关系

 

https://pics2.baidu.com/feed/d8f9d72a6059252d643a430779faea315bb5b974@f_auto?token=3d97acab3643ae456248205c049c3a76&f=png

对于系统整体而言,所有的Twice NAT和Network Object NAT策略会共同形成一套统一的NAT规则表。可以通过show nat 查看,规则表分为三个部分(Section 1 ~ 3)。分别是:

 

(1)Twice NAT

 

(2)Network Object NAT

 

(3)Twice NAT with "after-auto" 参数

 

一般情况下都推荐使用Network Object NAT(可以满足绝大多数场景),个别情况下使用Twice NAT

 

1. 动态一对一转换

 

传统配置:

 

nat (inside) 1 10.1.1.0 255.255.255.0

 

global (outside) 1 202.100.1.100-202.100.1.200

 

新配置(Network Object NAT)

 

object network Outside-Pool

 

range 202.100.1.100 202.100.1.200

 

object network Inside-Network

 

subnet 10.1.1.0 255.255.255.0

 

nat (inside,outside) dynamic Outside-Pool

 

注:object network Inside-Network下两句话可以连打,但show run会看到subnet/host/range与nat会分别在两个相同的object network下显示,中间被其他配置隔开,变成:

 

object network Inside-Network

 

subnet 10.1.1.0 255.255.255.0

 

……………………

 

object network Inside-Network

 

nat (inside,outside) dynamic Outside-Pool

 

2. 动态PAT (多对一)

 

传统配置:

 

nat (inside) 1 10.1.1.0 255.255.255.0

 

global(outside) 1 202.100.1.101

 

新配置(Network Object NAT)

 

object network Outside-PAT-Address

 

host 202.100.1.101

 

object network Inside-Network

 

subnet 10.1.1.0 255.255.255.0

 

object network Inside-Network

 

nat (inside,outside) dynamic Outside-PAT-Address

 

或者直接写PAT地址

 

nat (inside,outside) dynamic 202.100.1.101

 

或直接复用接口地址 (global (outside) 1 interface )

 

nat (inside,outside) dynamic interface

 

注:还可以写subnet 0.0.0.0 0.0.0.0 表示内网所有地址都转换

 

如果是多个地址做PAT复用地址的话:

 

传统配置:

 

global (outside) 1 202.100.1.101

 

global (outside) 1 202.100.1.102

 

新配置:

 

object network Outside-PAT-Pool

 

range 202.100.1.101 202.100.1.102 //只能是连续地址, 如果不是连续地址,用obj-group做

 

nat (inside,outside) dynamic pat-pool Ouside-PAT-Pool

 

后面还可跟round-robin参数,表示多个PAT地址轮流使用,而不是耗尽第一个才用第二个

 

2.5 先做动态一对一,地址不够了再做PAT

 

传统配置:

 

nat (inside) 1 10.1.1.0 255.255.255.0

 

global(outside) 1 202.100.1.101--109

 

global(outside) 1 202.100.1.110

 

新配置(Network Object NAT)

 

object network Inside-Network

 

subnet 10.1.1.0 255.255.255.0

 

object network Outside-Pool-Address

 

range 202.100.1.11 202.100.1.22

 

object network Outside-PAT-Pool

 

host 202.100.1.110

 

object network Inside-Network

 

nat (inside,outside) dynamic Outside-Pool-Address pat-pool Outside-PAT-Pool

 

注: 或者PAT地址池也不够了,再用接口地址复用,就在后面再加interface参数

 

3. Identity NAT (等同转换)

 

传统配置:

 

nat (inside) 0 10.1.1.1 255.255.255.255

 

 新配置(Network Object NAT)

 

object network Inside-Address

 

host 10.1.1.1

 

object network Inside-Address

 

nat (inside,outside) static Inside-Address

 

或者直接写转换后地址

 

nat (inside,outside) static 10.1.1.1

 

4. 静态一对一转换

 

传统配置:

 

static (inside,outside) 202.100.1.101 10.1.1.1

 

新配置(Network Object NAT)

 

object network Static-Outside-Address

 

host 202.100.1.101

 

object network Static-Inside-Address

 

host 10.1.1.1

 

object network Static-Inside-Address

 

nat (Inside,Outside) static Static-Outside-Address

 

或者

 

nat (Inside,Outside) static 202.100.1.101

 

5. 静态端口转换

 

传统配置:

 

static (inside,outside) tcp 202.100.1.102 2323 10.1.1.1 23

 

 

 

新配置(Network Object NAT)

 

object network Static-Outside-Address

 

host 202.100.1.102

 

object network Static-Inside-Address

 

host 10.1.1.1

 

object network Static-Inside-Address

 

nat (Inside,Outside) static Static-Outside-Address service tcp 23 2323

 

或者

 

  nat (Inside,Outside) static 202.100.1.102 service tcp 23 2323

 

6. Twice NAT

 

多个不同的流量,只转换源地址,不转换目的地址

 

传统配置:

 

access-list inside-to-1 permit ip 10.1.1.0 255.255.255.0 host 202.100.1.1

 

access-list inside-to-2 permit ip 10.1.1.0 255.255.255.0 host 202.100.1.2

 

nat (inside) 1 access-list inside-to-1

 

nat (inside) 2 access-list inside-to-2

 

global (outside) 1 202.100.1.101

 

global (outside) 2 202.100.1.102

 

新配置(Twice NAT):

 

object network dst-1

 

host 202.100.1.1

 

object network dst-2

 

host 202.100.1.2

 

object network pat-1

 

host 202.100.1.101

 

object network pat-2

 

host 202.100.1.102

 

object network Inside-Network

 

subnet 10.1.1.0 255.255.255.0

 

nat (inside,outside) source dynamic Inside-Network pat-1 destination static dst-1 dst-1

 

nat (inside,outside) source dynamic Inside-Network pat-2 destination static dst-2 dst-2

 

思科CCIE安全培训学习笔记-既转换源地址,也转换目的地址

 

说明:这种需求极为少见,例如两个私网(A,B)中间隔了一个公网,A私网只想直接通过B私网的地址去访问,就需要把A的源地址转换成公网地址,并且把目的地址B也转换成公网地址。当然需要在B的公网出口也做同样的工作。

 

传统配置:

 

access-list inside-to-1 permit ip 10.1.1.0 255.255.255.0 host 202.100.1.1

 

nat (inside) 1 access-list inside-to-1

 

global (outside) 1 202.100.1.101

 

static (outside,inside) 10.1.1.101 202.100.1.1

 

新配置方法(Twice NAT):

 

object network dst-1

 

host 202.100.1.1

 

object network pat-1

 

host 202.100.1.101

 

object network Inside-Network

 

subnet 10.1.1.0 255.255.255.0

 

object network map-dst

 

host 10.1.1.101

 

nat (inside,outside) source dynamic Inside-Network pat-1 destination static map-dst-1 dst-1

 

手工调整Twice Nat规则顺序

 

show nat

 

可以看到每条twice nat规则前面的序号,针对此序号操作,与access-list方法相同

 

如,在当前第1条前面插入一条:

 

nat (inside,outside) 1 source …… //插入到第1,将当前的第1行往下挤

 

NAT 0 + ACL 为什么不需要了

 

https://pics2.baidu.com/feed/f3d3572c11dfa9ec135e37d231b11e09908fc16b@f_auto?token=1981c8d369d43dc6e28d68404a0ad985&f=jpeg

nat (inside) 1 30.0.0.0 255.255.255.0

 

global (outside) 1 interface

 

这两条配置做完, Inside路由器可以PAT转换后访问到Outside路由器,但会发现Inside到dmz不通了。就是因为nat (inside) 1 影响到了 inside去往其他接口的流量(没有定义转换项)

 

解决办法是加上:

 

access-list IN-TO-DMZ permit ip 30.0.0.0 255.255.255.0 20.0.0.0 255.255.255.0

 

nat (inside) 0 access-list IN-TO-DMZ

 

但是在Network Object Nat中, nat (inside,outside) 已经明确关联了两个接口,自然就不会影响到inside去dmz了。

 

等同转换和NAT免除都取消了,改为使用twiceNAT完成:

 

nat (inside,outside) source dynamic NONAT-Network NONAT-Network destination static DST-Network DST-Network //mapped 和 real 相同,等于不翻译,或是等同翻译。 加之twiceNAT可以指定源地址和目的地址,即是可以匹配特定流量。

  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

菜鸟啄

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值