ACL和网络地址转换

ACL原理与配置

前言

随着网络的飞速发展,网络安全和网络服务质量(QoS)问题日益突出。访问控制列表(ACL, Access Control List)是与其紧密相关的一个技术。ACL通过对网络中报文流的精确识别,与其他技术结合,达到控制网络访问行为、防止网络攻击和提高网络带宽利用率的目的,从而保障网络环境的安全性和网络服务质量的可靠性。

目标

学完本课程后,您将能够:

  • 描述ACL的基本原理和基本作用
  • 区分ACL的不同种类及特点
  • 描述ACL规则的基本组成结构和匹配顺序
  • 掌握ACL中通配符的使用方法
  • 完成ACL的基本组网配置

目录

  1. ACL技术概述
  2. ACL的基本概念及其工作原理
  3. ACL的基础配置及应用

技术背景

  • 需求: 需要一个工具实现流量过滤
  • 案例: 某公司为保证财务数据安全,禁止研发部门访问财务服务器,但总裁办公室不受限制。

ACL概述

  • 定义: ACL是由一系列permit或deny语句组成的、有序规则的列表。ACL是一个匹配工具,能够对报文进行匹配和区分。
  • 应用:
    • 匹配IP流量
    • 在Traffic-filter中被调用
    • 在NAT(Network Address Translation)中被调用
    • 在路由策略中被调用
    • 在防火墙的策略部署中被调用
    • 在QoS中被调用

ACL的组成

  • 基本元素:
    • ACL由若干条permit或deny语句组成
    • 每条语句就是该ACL的一条规则
    • 每条语句中的permit或deny就是与这条规则相对应的处理动作
  • 规则编号与步长:
    • 规则编号: 一个ACL中的每一条规则都有一个相应的编号
    • 步长: 系统自动为ACL规则分配编号时,每个相邻规则编号之间的差值,缺省值为5

通配符

  • 定义: 通配符是一个32比特长度的数值,用于指示IP地址中哪些比特位需要严格匹配,哪些比特位无需匹配。
  • 表示方法: 通配符通常采用类似网络掩码的点分十进制形式表示,但含义与网络掩码不同。
  • 使用示例:
    • 匹配192.168.1.0/24网段:192.168.1.1 0.0.0.255
    • 匹配192.168.1.0/24子网中的奇数IP地址:192.168.1.1 0.0.0.254

ACL的分类与标识

  • 基于规则定义方式的分类:
    • 基本ACL
    • 高级ACL
  • 基于标识方法的分类:
    • 数字型ACL
    • 命名型ACL

ACL的匹配机制

  • 匹配原则: 一旦命中即停止匹配
  • 匹配流程:
    1. 引用的ACL是否存在?
    2. ACL是否存在rule?
    3. 分析第一条rule
    4. 命中rule,是否剩余rule?
    5. 分析下一条rule
    6. ACL动作是permit还是deny?

ACL的匹配顺序及匹配结果

  • 配置顺序: 系统按照ACL规则编号从小到大的顺序进行报文匹配,规则编号越小越容易被匹配。
  • 匹配结果:
    • 允许(permit)
    • 拒绝(deny)
    • 不匹配

ACL的匹配位置

  • 入站(Inbound)及出站(Outbound)方向:
    • ACL可以配置在接口的入站方向或出站方向,以控制不同方向的流量。

ACL的基础配置命令

基本ACL

[Huawei] acl [ number ] acl-number [ match-order config ]
[Huawei] acl name acl-name { basic | acl-number } [ match-order config ]
[Huawei-acl-basic-2000] rule [ rule-id ] { deny | permit } [ source { source-address source-wildcard | any } | time-range time-name ]

高级ACL

[Huawei] acl [ number ] acl-number [ match-order config ]
[Huawei] acl name acl-name { advance | acl-number } [ match-order config ]
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 ] ] ]
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过滤数据流量

配置需求: 在Router上部署基本ACL,过滤掉源地址为192.168.1.0/24网段的数据包,放行其他流量。

 [Router] acl 2000
 [Router-acl-basic-2000] rule deny source 192.168.1.0 0.0.0.255
[Router-acl-basic-2000] rule permit source any
[Router] interface GigabitEthernet 0/0/1
[Router-GigabitEthernet0/0/1] traffic-filter inbound acl 2000
[Router-GigabitEthernet0/0/1] quit

配置需求: 通过Router限制研发部(10.1.1.0/24)和市场部(10.1.2.0/24)之间互访。

[Router] acl 3001
[Router-acl-adv-3001] rule deny ip source 10.1.1.0 0.0.0.255 destination 10.1.2.0 0.0.0.255
[Router-acl-adv-3001] quit
[Router] acl 3002
[Router-acl-adv-3002] rule deny ip source 10.1.2.0 0.0.0.255 destination 10.1.1.0 0.0.0.255
[Router-acl-adv-3002] quit
[Router] interface GigabitEthernet 0/0/1
[Router-GigabitEthernet0/0/1] traffic-filter inbound acl 3001
[Router-GigabitEthernet0/0/1] quit
[Router] interface GigabitEthernet 0/0/2
[Router-GigabitEthernet0/0/2] traffic-filter inbound acl 3002
[Router-GigabitEthernet0/0/2] quit

思考题

  1. 下列选项中,哪一项才是一条合法的基本ACL的规则?
A.rule permit ip
B.rule deny ip
C.rule permit source any
D.rule deny tcp source any
  1. 高级ACL可以基于哪些条件来定义规则?

本章总结

ACL是一种应用广泛的网络技术,通过配置ACL规则对经过网络设备的报文进行匹配和处理,实现网络访问控制、安全防护和流量管理等功能。本章节介绍了ACL的基本原理、组成、匹配机制、分类、通配符使用方法以及基础配置命令。

网络地址转换

前言

随着Internet的发展和网络应用的增多,有限的IPv4公有地址已成为制约网络发展的瓶颈。 为解决此问题,NAT(Network Address Translation,网络地址转换)技术应运而生。 NAT技术主要用于实现内部网络的主机访问外部网络,一方面缓解了IPv4地址短缺的问题,另一方面提升了内网的安全性。

目标

学完本课程后,您将能够:

  • 了解NAT的技术背景
  • 掌握NAT的分类和技术原理
  • 掌握不同场景下如何选用不同类型的NAT技术

目录

  1. NAT概述
  2. 静态NAT
  3. 动态NAT
  4. NAPT、Easy-IP
  5. NAT Server

NAT产生背景

随着互联网用户的增多,IPv4的公有地址资源越发短缺,且存在分配不均的问题,导致部分地区IPv4可用公有地址严重不足。 为解决该问题,使用过渡技术解决IPv4公有地址短缺显得尤为必要。

私网IP地址

  • 公有地址:由专门机构管理、分配,可在Internet上直接通信的IP地址。
  • 私有地址:组织和个人可以任意使用,无法在Internet上直接通信,只能在内网使用的IP地址。
    • A类:10.0.0.0 ~ 10.255.255.255
    • B类:172.16.0.0 ~ 172.31.255.25 5
    • C类:192.168.0.0 ~ 192.168.255. 255

NAT技术原理

NAT对IP数据报文中的IP地址进行转换,一般部署在网络出口设备(如路由器或防火墙)。NAT的典型应用场景:在私有网络内部 使用私有地址,出口设备部署NAT,对于“从内到外”的流量,通过NAT将数据包的源地址转换成特定的公有地址; 对于“从外到内”的流量,则对数据包的目的地址进行转换。

静态NAT原理

静态NAT中,每个私有地址都有一个与之对应且固定的公有地址,即一对一映射关系。 支持双向互访:私有地址访问Internet时会被转换成对应的公有地址,外部网络访问内部网络时,公有地址也会被转换成对应的私有地址 。

静态NAT转换示例

  • 192.168.1.1访问Internet时,源地址转换为122.1.2.1。 Internet回包目的地址为122.1.2.1,转换回192.168.1.1。
  • Internet上的主机访问122.1.2.3时,目的地址转换为192.168.1.3 。 回包源地址192.168.1.3转换为122.1.2.3。

静态NAT配置介绍

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

静态NAT配置示例

[R1]interface GigabitEthernet0/0/1
[R1-GigabitEthernet0/0/1]ip address 122.1.2.1 24
[R1-GigabitEthernet0/0/1]nat static global 122.1.2.1 inside 19 2.168.1.1
[R1-GigabitEthernet0/0/1]nat static global 122.1.2.2 inside 19 2.168.1.2
[R1-GigabitEthernet0/0/1]nat static global 122.1.2.3 inside 19 2.168.1.3

动态NAT原理

动态NAT中,所有可用的公有地址组成地址池。 当内部主机访问外部网络时,临时分配一个地址池中未使用的地址,并标记为“In Use”。主机不再访问时回收地址 ,重新标记为“Not Use”。

动态NAT转换示例

  1. 选择一个地址池中未使用的地址作为转换后的地址,并标记为“In Use”。

  2. 生成临时的NAT映射表。

  3. 根据公有地址查找私有地址,并进行IP数据报文目的地址转换。

动态NAT配置介绍

[Huawei] nat address-group group-index start-address end-address
[Huawei] acl number [Huawei-acl-basic-number] rule permit source source-address source-wildcard
[Huawei-GigabitEthernet0/0/0] nat outbound acl-number address-group group-index [no-pat]

动态NAT配置示例

[R1]nat address-group 1 122.1.2.1 122.1.2.3 
[R1]acl 2000
[R1-acl-basic-2000]rule 5 permit source 192.168.1.0  0.0.0.255
[R1-acl-basic-2000]quit
[R1]interface GigabitEthernet0/0/1
[R1-GigabitEthernet0/0/1]nat outbound 2000 address-group 1 no-pat

NAPT原理

NAPT(Network Address and Port Translation,网络地址端口转换)在转换IP地址的同时也会转换端口号,实现公有地址与私有地址 的1:n映射,提高公有地址利用率。

NAPT转换示例

  1. 选择一个地址池中的地址,同时转换源IP、端口。

  2. 生成临时的NAT映射表,记录转换前后的IP和端口。

  3. 根据公有地址和端口信息查找对应的私有地址和端口,并进行IP数据报文目的地址、端口转换。

NAPT配置示例

[R1]nat address-group 1 122.1.2.1 122.1.2.1 
[R1]acl 2000
[R1-acl-basic-2000]rule 5 permit source 192.168.1.0  0.0.0.255
[R1-acl-basic-2000]quit
[R1]interface GigabitEthernet0/0/1
[R1-GigabitEthernet0/0/1]nat outbound 2000 address-group 1

Easy IP

Easy IP实现原理和NAPT相同,但使用接口地址作为NAT转换的公有地址,适用于不具备固定公网IP地址的场景。

Easy IP配置示例

[R1]acl 2000
[R1-acl-basic-2000]rule 5 permit source 192.168.1.0  0.0.0.255
[R1-acl-basic-2000]quit
[R1]interface GigabitEthernet0/0/1
[R1-GigabitEthernet0/0/1]nat outbound 2000

NAT Server使用场景

NAT Server指定公有地址和端口与私有地址和端口的一对一映射关系,将内网服务器映射到公网,供外部网络访问 。

NAT Server转换示例

• 外部网络访问公有地址和端口时,根据NAT映射表转换为私有地址和端口。

• 回包时根据NAT映射表反向转换。

NAT Server配置示例

 [R1]interface GigabitEthernet0/0/1
 [R1-GigabitEthernet0/0/1]ip address 122.1.2.1 24
 [R1-GigabitEthernet0/0/1]nat server protocol tcp global 122.1.2.1 www inside  192.168.1.10 8080

思考题

  1. 何种NAT转换可以让外部网络主动访问内网服务器?

    • 答:NAT Server。

  2. NAPT相比较于No-PAT有哪些优点?

    • 答:NAPT不仅转换IP地址还转换端口号,实现公有地址与私有地址的1:n映射,提高公有地址 利用率。

本章总结

在私有网络内使用私有地址,并在网络出口使用NAT技术,可以有效减少网络所需的IPv4公有地址数目,NAT技术有效缓解了IPv 4公有地址短缺的问题。 动态NAT、NAPT、Easy IP为私网主机访问公网提供源地址转换。 NAT Server实现了内网主机对公网提供服务。 静态 N A T 提供了一对一映射,支持双向互访 \color{red} {静态NAT提供了一对一映射,支持双向互访} 静态NAT提供了一对一映射,支持双向互访
动态 N A T : 地址池 1 : 1 \color{red} {动态NAT:地址池 1:1} 动态NAT:地址池1:1
N A T P : I P 地址转换端口转换 1 : N 映射 \color{red} {NATP:IP地址转换 端口转换 1:N映射} NATP:IP地址转换端口转换1:N映射
E a s y I P : 没有地址池 \color{red} {Easy IP:没有地址池} EasyIP:没有地址池

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值