本帖最后由 ITAA实验室 于 2012-8-4 17:09 编辑
转载请注明:本文来自www.xuexizu.com
JUNOS如今已经到了12.x版本,安全部分已经完全实现并超越了ScreenOS的功能。刚刚推出安全特性是在JUNOS8.5开始,此时SRX还未推出,J路由器为了继承迁移ScreenOS,推出了过渡性的两种操作系统:包模式OS和流模式OS。这取决于你想把它作为路由器还是防火墙。JUNOS 9.4之后终于统一为一种,被称为JUNOS-ES(enhanced services ),但最初的部分设计思路和命令还是尽可能沿用netscreen,和现在的新思路是有些不同的。我们从区别最为明显的NAT地址转换部分来看看为什么现在的NAT是JUNOS历史上设计最巧妙的NAT。
这个流程图是早期的NAT处理模式,和ScreenOS一样,NAT和策略并不独立,被绑定到策略里面。NAT是需要策略来触发的。这样就造成了将被互相影响,改动nat就会影响策略,改动策略也会影响nat。 当做destination NAT的时候,因为流程中检查路由在前,nat并没有被触发转换地址,所以进入设备的nat地址很可能在路由表并不存在,这样将在路由这一步就出错丢包。为了让其通过路由检查,必须做一个路由强制给nat前的地址指出下一跳 (范例: http://kb.juniper.net/kb/documents/public/NAT/DESTINATIONNAT.pdf )因此我们可以发现这种设计的局限性,如果nat转换在路由查找和策略匹配的流程之前,我们是不是就可以不需要这样的路由指路呢? 还有,比如我们内网分了很多个zone,每个zone都要上网,按照策略触发的原则我们就要在每个zone都做一个nat的策略,这种重复性的工作是不是可以省略呢?
在新的处理流程中,我们看到了junos的变化,dest-nat在路由和策略前,而source-nat在路由和策略检查的后面。nat彻底从策略中独立出来,从此nat获得了从未有过的自由和强大。在命令行设计中也发挥了这样的设计思路。每种nat中有rule-set规则集合,每个rule-set中又可以有多个细致的匹配规则rule。在rule-set中我们可以匹配: 源/目的接口 源/目的zone 源/目的 路由实例一旦匹配了rule-set的条件,就可以检查更细致的rule,rule中可以匹配源/目的的地址甚至端口。都符合后执行转换规则。例如这个范例,trust和dmz的所有地址都希望可以利用公网地址直接上网。我们的内网地址段是10.1.1.0/24 source { rule-set interface-nat { from zone [trust dmz]; to zone internet; rule to-internet { match { source-address 10.1.1.0/24; } then { source-nat interface; } } } } 可以看到配置的时候我们仅仅配from zone [trust dmz] to zone internet 这样简单直观的语法就可以实现匹配转换。而不用像从前一样每个区域新建nat策略,再调整策略的顺序了。
|