ACL是应用在路由器接口的指令列表,通过这些指令,来告诉路由器哪些数据包可以接收,哪些数据包需要拒绝,基本原理就是:ACL使用包过滤技术,在路由器上读取OSI七层模型的第三层及第四层包头中的信息,如源地址、目的地址、源端口、目的端口等,根据预先定义好的规则,对包进行过滤,从而达到访问控制的目的。
ACL有三种类型:

标准ACL:根据数据包的源IP地址来允许或拒绝数据包,标准ACL的访问列表控制号是1~99。
扩展ACL:根据数据包的源IP地址、目的IP地址、指定协议、端口和标志来允许或拒绝数据包,扩展ACL的访问控制列表号是100~199。
命名ACL允许在标准ACL和扩展ACL中使用名称代替表号。(个人感觉扩展命名ACL规则更为灵活,若没耐心,可直接看文章最后的扩展命名ACL规则的语法)。

创建标准ACL语法:
Router(config)#access-list 1~99 { permit | deny } 源网段地址或网段(若源地址为主机,则在地址前面需要加“host”;若源地址为网段,则要在网段地址后面加反掩码,如/24的反掩码就是0.0.0.255。

例如:Router(config)#access-list 1 permit 192.168.1.0 0.0.0.255 #表示为允许192.168.1.0/24网段地址的流量通过

Router(config)#access-list 1 permit host 192.168.2.1 #表示为允许主机192.168.2.1的流量通过。

每一个ACL都有一条隐含的拒绝语句,可以拒绝所有流量,所以在做ACL规则时建议以拒绝某个网段或主机的流量通过,然后再允许所有流量通过,如下:

Router(config)#access-list 1 deny host 192.168.1.2 #拒绝192.168.1.2网段的流量通过

Router(config)#access-list 1 permit any #允许所有主机的流量通过

当以上ACL规则应用到接口上时,效果为除了192.168.1.2的流量外都可以通过。

源地址可以用 “any”来表示为所有主机。

删除ACL的规则时,在规则前加“no”即可,如:Router(config)# no access-list 1 #删除表号为1的规则

一个ACL可以配置多条规则,但是一个接口,一个方向只能应用一个ACL。

配置好的ACL规则应用到接口上的语法如下:

Router(config)#int f0/1
Router(config-if)# ip access-list 1 in/out #把表号1的规则应用到进站(in)或出站(out)方向

扩展ACL的配置语法:
语法1:
Router(config)# access-list 101 permit ip 192.168.1.0 0.0.0.255 192.168.2.0 0.0.0.255 #创建一个表号为101的ACL,规则为允许192.168.1.0访问192.168.2.0网段的流量通过

Router(config)# access-list 101 deny ip any any #拒绝所有流量通过

以上规则最终应用到接口上的效果为拒绝除了192.168.1.0访问192.168.2.0的数据包以外的所有数据包通过

语法2:
Router(config)# access-list 101 deny tcp 192.168.1.0 0.0.0.255 host 192.168.2.2 eq 21 #拒绝网络192.168.1.0访问主机192.168.2.2,tcp端口号21的流量通过

Router(config)# access-list 101 permit ip any any #允许所有流量通过

以上扩展ACL的规则为:拒绝网络192.168.1.0访问主机192.168.2.2,tcp端口号21的流量通过,而允许其他任何流量通过。其中命令最后的“eq”为等于XX端口号还有 lt (小于)、gt(大于)、neq(不等于)几个选项。

扩展ACL与标准ACL的区别就是扩展ACL可以基于端口号、目标地址、协议,来更加精准的控制流量是允许还是拒绝通过。
删除扩展ACL的规则的语句和删除标准ACL一致。如:Router(config)# no access-list 101 #删除表号为101的扩展ACL规则

命名ACL的配置
命名ACL在管理及维护方面更加方便,同时也支持友好的名称作为ACL名称,而不局限于使用ACL编号。
配置命名ACL的语法如下:
1、创建命名ACL:

Router(config)# ip access-list { standard | extended } access-list-name

2、如果是标准命名ACL,命令语法如下:

Router(config-std-nacl)# [ Sequence-Number ] { permit | deny } source [ source-wildcard ]

上述语法中Sequence-Number决定ACL语句在ACL列表中的位置

例如:配置规则,允许来自主机192.168.1.1/24的流量通过,而拒绝其他流量,标准命名ACL命令如下:
R1(config)#ip access-list standard test #创建名为test的标准命名ACL
R1(config-std-nacl)#permit host 192.168.1.1 #允许主机192.168.1.1的流量通过
R1(config-std-nacl)#deny any #拒绝其他流量
若退出后还要继续修改规则,可直接在全局模式下执行:Router(config)# ip access-list standard test进入ACL命名ACL组,继续写入如:
Router(config-std-nacl)#15 permit host 192.168.2.1
然后查看:
Standard IP access list cisco
10 permit 192.168.1.1
15 permit 192.168.2.1
20 deny any

若要删除ACL中某条规则的可以执行“no+规则编号”,如想删除上面规则编号为10 的可以执行“no 10”
若要删除上面已建立的命名ACL,命令语法如下:
R1(config)# no ip access-list standard test
创建扩展命名的ACL语法如下:

R1(config)#ip access-list extended test #创建名为test的扩展命名ACL

Router(config-ext-nacl)# deny tcp 192.168.1.0 0.0.0.255 host 192.168.2.2 eq 21 #禁止网络192.168.1.0访问主机192.168.2.2的21端口。其中以上命令最后的“eq”命令字的作用是等于XX端口号还有 lt (小于)、gt(大于)、neq(不等于)几个选项。

Router(config-ext-nacl)# permit ip any any #允许所有流量通过

以上规则的作用是禁止192.168.1.0网络访问主机192.168.2.2的21端口,而允许其他任何流量通过。

路由器ACL(访问控制列表)的类型及配置相关推荐

  1. 路由器ACL访问控制列表概念及常用命令

    ACL访问控制列表 ACL概述 (1).ACL全称访问控制列表(Access Control List). (2).基本原理:ACL使用包过滤技术,在路由器上读取第三层及第四层包头中的信息(如源地址. ...

  2. ACL访问控制列表(访问控制、抓取感兴趣流)详解及基本ACL和高级ACL的配置。

    ACL --- 访问控制列表 1. 访问控制:在路由器流量流入或流出的接口上,匹配流量,然后执行设定好的动作.(pemit 允许,deny 拒绝) 2. 抓取感兴趣流:ACL的另一个作用就是和其他服务 ...

  3. ACL访问控制列表(详细配置教程)

    文章目录 什么是ACL ACL分类 匹配规则 工作原理 ACL配置指南 配置实例 配置ACL列表(拓展ACL) 标准访问列表 删除ACL列表 什么是ACL 访问控制列表(Access Control ...

  4. ensp ACL访问控制列表配置

    访问控制列表(ACL)是一种基于包过滤的访问控制技术,它可以根据设定的条件对接口上的数据包进行过滤,允许其通过或丢弃.访问控制列表被广泛地应用于路由器和三层交换机,借助于访问控制列表,可以有效地控制用 ...

  5. ensp配置ACL访问控制列表

    简介:访问控制列表(ACL)是一种基于包过滤的访问控制技术,它可以根据设定的条件对接口上的数据包进行过滤,允许其通过或丢弃.访问控制列表被广泛地应用于路由器和三层交换机,借助于访问控制列表,可以有效地 ...

  6. ACL访问控制列表 基础、创建ACL访问控制列表的两种方式、配置ACL访问控制列表规则、修改ACL规则的默认步长。子网掩码、反掩码、通配符掩码的区别和作用。

    目录 ACL的组成: 创建ACL访问控制列表的两种的方式: 1.数字命名: 2.字符串命名方式: ACL创建步骤: 1.先创建ACL列表: 进入acl列表: 2.配置ACL的一条条规则: 3.进入需要 ...

  7. ACL访问控制列表【笔记|实验】

    一.访问控制列表概述 1.访问控制列表(ACL):读取第三层.第四层包头信息,根据预先丁含义好的规则对包进行过滤. 2.访问控制列表的处理过程:如果匹配第一条规则,则不再往下检查,路由器将决定该数据包 ...

  8. ACL访问控制列表详解

    ACL讲解目录 一.ACL知识    (1)接口应用方向    (2)访问控制列表的处理过程 二.ACL 工作原理:    (1)ACL 种类:    (2)ACL的应用原则: 三.应用规则 四.华为 ...

  9. ACL———访问控制列表

    目录 一.ACL简介 二.ACL的作用 三.访问控制列表的调用方向 四.访问控制列表的处理原则 五.访问控制列表类型 1.标准访问控制列表 2.扩展访问控制列表 验证两种类型 总结 一.ACL简介 A ...

  10. 三层交换技术 ACL访问控制列表

    华为模拟器 计算机网络 三层交换技术 ACL访问控制列表 访问控制列表(ACL):是一种基于包过滤的访问控制技术,它可以根据设定的条件对接口上的数据包进行过滤,允许其通过或丢弃.访问控制列表被广泛地应 ...

最新文章

  1. android 底部弹框 BottomSheetDialog 的使用
  2. 怎样查看哪些程序占用了swap空间
  3. Focal Loss改进版 GFocal Loss
  4. acwing算法题--多重背包问题二
  5. Java集合框架之 Java HashMap 源码解析
  6. create-react-app 构建的项目使用 mobx (说到底就是为了使用装饰器语法对 babel 做些配置...
  7. 10.15 wget:命令行下载工具
  8. 优秀的开源项目C_适合提高C/C++、网络编程能力的开源项目!不要错过,赶紧收藏...
  9. 台达asda-b2伺服驱动器说明书_台达解决方案提升粉末冶金液压机的控制精度
  10. UML类图解义 (来自《大话设计模式》)
  11. js 给动态li添加动态点击事件
  12. 结构与表现分离的思想
  13. paip.提升用户体验----错误信息提示结构总结
  14. 关于Python学习的一点说明
  15. 将bin文件以16进制字符显示
  16. 二叉树的前中后序遍历(非递归实现)
  17. 同文输入法 android,同文输入法app下载-同文输入法手机版-同文输入法最新版_易玩网...
  18. Datawhale打卡第2次
  19. 纸筒制作机器人_卡纸手工制作方法_机器人DIY制作教程图解
  20. 单身程序猿的七夕应该怎么过?

热门文章

  1. 阿里云学生服务器专注于学生搭建个人博客
  2. 百度分享到qq空间失败
  3. WordPress搭建过的知名网站有哪些?
  4. bs4的BeautifulSoup使用
  5. 委托构造函数继承构造函数
  6. java負數能取余_Java别说取余(%)运算简单,你真的会吗?-Go语言中文社区
  7. C++中“非常量引用的初始值必须是左值”的处理方法
  8. 同時acts_as_tree 和 ancestry gem
  9. 基于微信美食小程序系统设计与实现 开题报告
  10. 新南威尔士大学计算机博士英语要求,新南威尔士大学博士申请条件