【ACL 和 NAT】

192 阅读5分钟

一、ACL

1. ACL概述

ACL( access list 访问控制列表 )可以根据设定的条件对接口上的数据包进行过滤,允许其通过或丢弃。访问控制列表被广泛地应用于路由器和三层交换机,借助于访问控制列表,可以有效地控制用户对网络的访问,从而最大程度地保障网络安全。

ACL是由一系列permit或deny语句组成的、有序规则的列表;是一个匹配工具,能够对报文进行匹配和区分。

功能

1)限制网络流量、提高网络性能。例如,ACL可以根据数据包的协议,指定这种类型的数据包具有更高的优先级,同等情况下可预先被网络设备处理。

2)提供对通信流量的控制手段。

3)提供网络访问的基本安全手段。

4)在网络设备接口处,决定哪种类型的通信流量被转发、哪种类型的通信流量被阻塞。

2. ACL应用

ACL主要应用在接口上

  • 匹配IP流量
  • 在Traffic-filter中被调用
  • 在NAT中被调用
  • 在路由策略中被调用
  • 在防火墙的策略部署中被调用

3. ACL类型

  1. 基本ACL

编号2000-2999---依据数据包当中的源IP地址匹配数据---尽量用在离源地址近的接口

  1. 高级ACL

编号3000-3999---依据数据包当中源、目的IP,源、目的端口、协议号(“5元组”)匹配数据---尽量用在离目的地址近的出口

4. ACL工作原理

  1. 当一个数据包进入一个端口,路由器检查这个数据包是否可路由

如果是可以路由的,路由器检查这个端口是否有ACL控制进入数据包。 如果有,根据ACL中的条件指令,检查这个数据包。 如果数据包是被允许的,就查询路由表,决定数据包的目标端口。

  1. 由器检查目标端口是否存在ACL控制流出的数据包。

若不存在,这个数据包就直接发送到目标端口。 若存在,就再根据ACL进行取舍。然后在转发到目的端口。

5. ACL匹配规则

  • 一个接口的同一个方向,只能调用一个acl
  • 一个acl里面可以有多个rule 规则,按照规则ID从小到大排序,从上往下依次执行
  • 数据包一旦被某rule匹配,就不再继续向下匹配
  • 用来做数据包访问控制时,默认隐含放过所有(华为设备)

ACL的组成.png

规则编号.png 规则编号 :小范围写在前面 , 最好默认规则步长

6.通配符掩码

  • 子网掩码:连续的1表示网络位,不可以0 1 穿插
  • 反掩码:连续的0表示网络位,不可以0 1 穿插
  • 通配符掩码:用来匹配acl控制的范围,0代表此位不可以变化 , 1代表此位置可以变化

有0 有1 写1

全0 全1 写0

二、NAT

1. NAT概述

NAT( Network Address Translation 网络地址转换 )是用于在本地网络中使用私有地址,在连接互联网时转而使用全局 IP 地址的技术。NAT技术主要用于实现内部网络的主机访问外部网络。一方面NAT缓解了IPv4地址短缺的问题,另一方面NAT技术让外网无法直接与使用私有地址的内网进行通信,提升了内网的安全性。

2. NAT工作原理

数据包在出路由器的时候,将源内网地址改为公网地址

数据包在回来的时候,将目的地址改回私网地址

nat工作原理.png :port 端口号

3. NAT类型

静态NAT

一一对应,一个私网地址对应一个公网地址(市场环境中一般不用,因为公网要花钱)

静态nat.png

nat static enable                                    #静态NAT启用
nat static global 200.1.1.100 inside 192.168.1.1     #将私网地址192.168.1.1和公网地址200.1.1.100 做上nat对应关系

动态NAT

动态NAT通过使用地址池来实现。

nat address-group 1 200.1.1.10 200.1.1.15      #建立地址池
acl number 2000                                #建立acl规则
rule 5 permit source 192.168.1.0 0.0.0.255     #给需要地址转换的 网段添加规则

int g0/0/1
nat outbound acl 2000 address-group 1 no-pat       #添加规则:将外出(outbound)且满足ACL2000的数据包的源地址转换为address-group 1中的公网地址  no-pat指不转换端口

Easy-IP

现实环境中使用最多的(因为静态NAT和动态NAT都需要购买很多公网IP), 所有的内网机器都使用当前接口的公网地址上网

  • 使用列表匹配私网的ip地址

  • 将所有的私网地址映射成路由器当前接口的公网地址

acl 2000
rule permit source 192.168.1.0 0.0.0.255
int g0/0/1
undo nat static global 200.1.1.100 inside 192.168.1.1 netmask 255.255.255.255
nat outbound 2000

将IP地址和端口号一起转换,端口号范围为 0 - 65535 (前1024为知名端口)

4. NATPT(端口映射)

让外网用户可以访问内网机器的服务

NATPT.png

配置好ip地址

企业出口路由器需要配置默认路由

在企业出口路由器上 的g0/0/1 口配置
int  g0/0/1
ip address 200.1.1.1 255.255.255.0 
undo nat static global 200.1.1.100 inside 192.168.1.1 netmask 255.255.255.255
nat server protocol tcp global current-interface www inside 192.168.1.100 www
nat static enable