ACL与NAT

一、ACL原理与配置

1、什么是ACL

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

2、为什么会出现ACL

 

  • 随着网络的飞速发展,网络安全和网络服务质量QoS (Quality of Service)问题日益突出。访问控制列表 (ACL, Access Control List)是与其紧密相关的一个技术。
  • ACL可以通过对网络中报文流的精确识别,与其他技术结合,达到控制网络访问行为、防止网络攻击和提高网络带宽利用率的目的,从而切实保障网络环境的安全性和网络服务质量的可靠性。
  • 在本章节中,将介绍ACL的基本原理和基本作用,ACL的不同种类及特点,ACL的基本组成和匹配顺序,通配符的使用方法和ACL的相关配置。

3、ACL的组成

ACL由若干条permit或deny语句组成。每条语句就是该ACL的一条规则,每条语句中的permit或deny就是与这条规则相对应的处理动作。

 

4、规则编号与通配符

规则编号:

一个ACL中的每一条规则都有一个相应的编号,每个相邻规则编号之间的差值叫做步长,默认值为5,步长的作用是为了方便后续在新旧规则之间插入新的规则。

 

通配符:

通配符是一个32比特长度的数值,用于指示IP地址中,哪些比特位需要严格匹配,哪些比特位无需匹配。通配符通常采用类似网络掩码的点分十进制形式表示,但是含义却与网络掩码完全不同

其中区别:

 

5、ACL的分类和匹配顺序

                                          编号范围

  • 基本ACL                2000~2999
  • 高级ACL                3000~3999
  • 二层ACL                4000~4999
  • 用户自定义ACL     5000~5999
  • 用户ACL                6000~6999        

系统按照ACL规则编号从小到大的顺序进行报文匹配,规则编号越小越容易被匹配

6、ACL的基础配置命令

创建基本ACL

【Huawei]acl[number]acl-number[match-order config] 


#使用编号(2000~2999)创建一个数字型的基本ACL,并进入基本ACL视图
【Huawei】acl name acl-name{basic| acl-number}[match-order config]


#使用名称创建一个命名型的基本ACL,并进入基本ACL视图

配置基本ACL规则

【Huawei-acl-basic-2000】rule[rule-id]{deny|permit}[source{source-address source-wildcard|any}|time-range time-name]


#在基本ACL视图下,通过此命令来配置基本ACL的规则

创建高级ACL

[Huawei] acl [ number ] acl-number [ match-order config ]


#使用编号(3000-3999)创建一个数字型的高级ACL,并进入高级ACL视图
[Huawei] acl name acl-name { advance | acl-number } [ match-order config ]


#使用名称创建一个命名型的高级ACL,并进入高级ACL视图

配置基本ACL规则

当参数protocol为IP时,高级ACL的命令格式为

rule [ rule-id ] { deny | permit } ip [ destination { destination-address destination-wildcard | any } | source { source-address source-wildcard | any } | time-range time-name | [ dscp dscp | [ tos tos | precedence precedence ] ] ]


#在高级视图下,通过此命令来配置高级ACL的规则

当参数protocol为tcp时,高级ACL的命令格式为

rule [ rule-id ] { deny | permit } { protocol-number | tcp } [ destination { destination-address destination-wildcard | any } | destination-port { eq port | gt port | lt port | range port-start port-end } | source { source-address source-wildcard | any } | source-port { eq port | gt port | lt port | range port-start port-end } | tcp-flag { ack | fin | syn } * | time-range time-name ] *


#在高级ACL视图下,通过此命令来配置高级ACL的规则

 二、NAT

1、什么是NAT

  • 随着Internet的发展和网络应用的增多,有限的IPv4公有地址已经成为制约网络发展的瓶颈。为解决这个问题,NAT(Network Address Translation,网络地址转换)技术应需而生。
  • NAT技术主要用于实现内部网络的主机访问外部网络。一方面NAT缓解了IPv4地址短缺的问题,另一方面NAT技术让外网无法直接与使用私有地址的内网进行通信,提升了内网的安全性。

2、静态NAT

静态NAT原理:每个私有地址都有一个与之对应并且固定的公有地址,即私有地址和公有地址之间的关系是一对一映射。

静态NAT配置介绍:

a.接口视图下配置NAT

[Huawei-GigabitEthernet0/0/0] nat static  global { global-address} inside {host-address } 

# global参数用于配置外部公有地址,inside参数用于配置内部私有地址

b.系统视图下配置NAT

[Huawei] nat static  global { global-address} inside {host-address } 

# 配置命令相同,视图为系统视图,之后在具体的接口下开启静态NAT。

[Huawei-GigabitEthernet0/0/0] nat static enable

# 在接口下使用nat static 功能

3、动态NAT

动态NAT原理:静态NAT严格地一对一进行地址映射,这就导致即便内网主机长时间离线或者不发送数据时,与之对应的公有地址也处于使用状态。为了避免地址浪费,动态NAT提出了地址池的概念:所有可用的公有地址组成地址池。

动态NAT配置介绍:

a、创建地址池

[Huawei] nat address-group group-index start-address end-address
  • group-index      为地址池编号
  • start-address    为地址池起始地址
  • end-address     为地址池结束地址

b、配置地址转换的ACL规则

[Huawei] acl number 
[Huawei-acl-basic-number ] rule permit source  source-address source-wildcard 

# 配置基础ACL,匹配需要进行动态转换的源地址范围

c、接口视图下配置带地址池的NAT Outbound

[Huawei-GigabitEthernet0/0/0] nat outbound acl-number address-group group-index [ no-pat ]

# 接口下关联ACL与地址池进行动态地址转换,no-pat参数指定不进行端口转换。

 

三、总结

  • 在私有网络内使用私有地址,并在网络出口使用NAT技术,可以有效减少网络所需的IPv4公有地址数目,NAT技术有效地缓解了IPv4公有地址短缺的问题。
  • 动态NAT、NAPT、Easy IP为私网主机访问公网提供源地址转换。
  • NAT Server实现了内网主机对公网提供服务。
  • 静态NAT提供了一对一映射,支持双向互访

 

posted @ 2022-09-14 17:39  赵哈哈#  阅读(161)  评论(0编辑  收藏  举报