ACL和反掩码

合集下载

反掩码详解

反掩码详解

反掩码详解————————————————————————————————作者: ————————————————————————————————日期:ﻩ反掩码详解在配置路由协议的时候(如OSPF、EIGRP )使用的反掩码必需是连续的1即网络地址。

例:route ospf 100 network 192.168.1.00.0.0.255 network 192.168.2.00.0.0.255 而在配置ACL的时候可以使用不连续的1,只需对应的位置匹配即可。

例:access-list 1 permit 198.78.46.0 0.0.11.255ﻫ正掩码和反掩码的区别:正掩码必须是连续的,而反掩码可以不连续,例如:C类地址子网掩码中不可以出现255.253.255.0(二进制为111111111111110111111111 00000000)这样的掩码;而反掩码可以出现0.0.0.2(二进制为00000 00000)。

正掩码表示的路由条目,而反掩码表示的范围。

反掩码就是通配符掩码,通过标记0和1告诉设备应该匹配到哪位。

在反掩码中,相应位为1的地址在比较中忽略,为0的必须被检查.IP地址与反掩码都是32位的数例如掩码是255.255.255.0 wildcard-mask 就是0.0.0.255255.255.255.248 反掩就是0.0.0.7通配符掩码(wildcard-mask)ﻫ路由器使用的通配符掩码(或反掩码)与源或目标地址一起来分辨匹配的地址范围,它跟子网掩码刚好相反。

它像子网掩码告诉路由器IP地址的哪一位属于网络号一样,通配符掩码告诉路由器为了判断出匹配,它需要检查IP地址中的多少位。

这个地址掩码对使我们可以只使用两个32位的号码来确定IP地址的范围。

这是十分方便的,因为如果没有掩码的话,你不得不对每个匹配的IP客户地址加入一个单独的访问列表语句。

这将造成很多额外的输入和路由器大量额外的处理过程。

通配符问题

通配符问题

通配符VS反掩码,你懂了吗,有错误了请大神更正其实这两个术语的英文都是wildcard,不知道为什么派生出两个中文翻译来。

一般来说,wildcard在配置OSPF和EIGRP的network 命令时,被称作反掩码,如:network 12.0.0.0 0.0.0.255 area 0;而使用在访问控制列表(ACL)匹配地址段时,wildcard被称作通配符,如:access-list 20 permit 172.30.0.0 0.0.255.255。

我觉得出现两个中文名本没有必要。

但既然已经约定俗成了,我们且把他们当作两个概念,但两者很容易混淆,我查资料能给出的比较合理的界定是:反掩码是通配符取值范围的一部分。

为什么这么说?因为当且仅当32位的二进制通配符只出现连续1的情况时,通配符=反掩码。

取其中的8位地址段为例,譬如,0001 1111既可以被当作反掩码又可以是通配符,而0010 1100只能被当作通配符,但不能是反掩码。

当然以上只是数学上的定义。

从实际配置上来看:反掩码通常见于EIGRP和OSPF的配置命令中,用来界定地址段中哪些是网络位,哪些是主机位。

所以反掩码的取值范围只能出现连续的1,因为网络位和主机位都是连续的。

而通配符通常见于访问控制列表(ACL)配置中,其实就是一种运算符,它0和1两个,在配置语境中规定其他数值位是变量还是定值。

0是定量, 1是变量!That's it!一个实例:用访问控制列表抓取路由条目的匹配规则现在根据公司要求,需要在配置上运用访问控制列表匹配下列三个地址段172.16.1.0 /24172.16.3.0 /24172.16.9.0 /24以上三个网络号的编排规则貌似无规律可循,最笨的方法就是用三个访问列表一条一条的匹配。

但当你能熟练的运用通配符以后,一个访问列表就够了:第一步首先我们把三个网络号的第三地址区间转换成二进制:172.16.00000001.0 /24172.16.00000011.0 /24172.16.00001001.0 /24很显然那些粗体位的是三个网络号匹配下来不同的位,即为变量第二步不要考虑匹配地址位的顺序,把变量位对应的十进制数加起来,结果是2+8=10,所以能包括这三个网络号的通配符是:0.0.10.0 所以访问控制列表可以这样写:access-list 1 permit 172.16.1.0 0.0.10.0Q:如果本例的网络环境中还有网络号172.16.11.0 /24,access-list 1 permit 172.16.1.0 0.0.10.0的配置还能不能成立?A:不能成立了!为什么?因为如果把172.16.11.0 /24的第三地址区间转换成二进制,我们得到的数值是00001011,也正好把这个网络号匹配进了这条访问控制列表。

各种反掩码的计算方法

各种反掩码的计算方法

各种反掩码的计算⽅法⼀段时间不接触ACL,连反掩码都忘了怎么写,⽹上找了篇⽂章。

各种反掩码的计算⽅法关于ACL反掩码,OSPF,EIGRP配置反掩码和区域汇总的计算总结⼀:关于ACL反掩码:ACL的反掩码注意0为严格匹配 1为不⽤管//这个就是ACL的精髓啊~~相同为0.不同为11(01),2(10),4(100),8(1000),16(10000),32,64,128 为基数值例如:⽹段为:192.168.0.0 0为000192.168.1.0 1为001192.168.2.0 2为010192.168.3.0 3为011192.168.4.0 4为100这时候写访问控制列表的时候:Access 1 deny 192.168.0.0 0.0.3.0 后两位变化所以为3192.168.4.0 ⽆法写进去再例如:192.168.128.0 128为00192.168.129.0 129为01192.168.130.0 130为10192.168.131.0 131为11写法跟上⾯⼀样反掩码都为0.0.3.0在例如:1.0 -22.0写⼀条表⽰:22⼤于16⼩于32 也就是说他不⽤严格匹配的为5全⽤1表⽰所以反掩码为1+2+4+8+16=31需要精确的匹配需要4条:192.168.0.0 0.0.15.0192.168.16.0 0.0.3.0192.168.20.0 0.0.1.0192.168.22.0 0.0.0.0⼆关于⽹段反掩码的写法:255.255.255.255 减去⼦⽹掩码:255.255.255.252 就得出反掩码 0.0.0.3三关于汇总的写法192.168.1.0 000192.168.2.0 001192.168.3.0 010192.168.4.0 100都是/24位的汇总为192.168.0.0/22 ⼦⽹掩码为255.255.252.0192.168.4.0 就不能汇总进去1.0-25.0汇总25⼤于16 ⼩于32 所以他在变化的位在:10000和100000之间所以是5位也就是说⼦⽹为/24-5=19的⽹段注意多汇总了⽹段为相同的为⼏就是⼏不同的为0反码为相同的为0 不同的为1 这个⼜是不是完全匹配可能会有漏掉的路由条⽬!反问控制列表不能匹配掩码前缀列表:199.172.4.0/22(这个意思为匹配前22位) ge 25 le 25(掩码为25位)。

ACL配置

ACL配置

第1章ACL简介1.1 ACL概述网络设备为了过滤数据,需要设置一系列匹配规则,以识别需要过滤的对象。

在识别出特定的对象之后,根据预先设定的策略允许或禁止相应的数据包通过。

ACL(Access Control List)可用于实现这些功能。

ACL(访问控制列表)是一种对经过网络设备的数据流进行判断、分类和过滤的方法。

通常我们使用ACL实现对数据报文的过滤、策略路由以及特殊流量的控制。

一个ACL中可以包含一条或多条针对特定类型数据包的规则,这些规则告诉网络设备,对于与规则中规定的选择标准相匹配的数据包是允许还是拒绝通过。

由ACL定义的数据包匹配规则,还可以被其它需要对流量进行区分的场合引用,如防火墙、QOS与队列技术、策略路由、数据速率限制、路由策略、NAT等。

1.2 ACL分类访问控制列表分为多种类型:1.基本ACL:只对源IP地址进行匹配。

2.扩展ACL:对源IP地址、目的IP地址、IP协议类型、TCP源端口号、TCP目的端口号、UDP源端口号、UDP目的端口号、ICMP类型、ICMP Code、DSCP(DiffServ CodePoint)、ToS、Precedence进行匹配。

3.二层ACL:对源MAC地址、目的MAC地址、源VLAN ID、二层以太网协议类型、802.1p 优先级值进行匹配。

4.混合ACL:对源MAC地址、目的MAC地址、源VLAN ID、源IP地址、目的IP地址、TCP源端口号、TCP目的端口号、UDP源端口号、UDP目的端口号进行匹配。

5.用户自定义ACL:对VLAN TAG的个数和偏移字节进行匹配。

1.3 ACL工作流程下面以路由器为例说明ACL的基本工作过程。

制定的,则图1.3-2 应用于入接口的ACL当ACL应用在入接口上时,工作流程如下:当路由器的接口接收到一个数据包时,首先会检查访问控制列表,如果执行控制列表中有拒绝和允许的操作,则被拒绝的数据包将会被丢弃,允许的数据包进入路由选择状态。

反掩码

反掩码

ACL中 wildcard-mask的各种使用方法 -------------------------------------------------------------------------------2009-03-15 16:33:05 标签:ACL wildcard [推送到技术圈]
反掩码 这是因为CISCO规定在ACL中用反向掩玛表示子网掩码,反向掩码为0.0.0.255的代表他的子网掩码为255.255.255.0。 ACL里的掩码也叫inverse mask(反掩码)或wildcard mask(通配符掩码),由32位长的2进制数字组成,4个八位位组.其中0代 表必须精确匹配,1代表任意匹配(即不关心) 反掩码可以通过使用255.255.255.255减去正常的子网掩码得到, 比如要决定子网掩码为255.255.255.0的IP地址172.16.1.0的反掩码: 255.255.255.255-255.255.255.0=0.0.0.255 即 172.16.1.0的反掩码为0.0.0.255
A>> 就是255.255.255.255 - subnet-mask 即 subnet-mask + wildcard-mask = 255.255.255.255 例:
1 使用一条ACL表示 172.16.0.0/24 答:
wildcard-maks = 255.255.255.255 - 255.255.255 permit 172.16.0.0 0.0.0.255 2 使用一条ACL将 下列条目都包括: 172.16.0.0/24 , 172.16.1.0/24 , 172.16.2.0/24 , 172.16.3.0/24 答: 0 0000 0000 1 0000 0001 2 0000 0010 3 0000 0011

ACL技术详解

ACL技术详解

•ACL :Access Control List ,访问控制列表ACL••ACL由一条或多条规则组成•每条规则必须选择动作:允许或拒绝•每条规则都有一个id 序列号(默认=5,间隔=5)•ACL 工作原理:序列号越小越先进行匹配•只要有一条规则和报文匹配,就停止查找,称为命中规则•查找完所有规则,如果没有符合条件的规则,称为未命中规则•ACL创建后,必须将其应用到某个接口或其他技术内才会生效•应用在接口时必须选择方向:入站或出站(相对设备来判断)•每个接口在每个方向上只可应用一个ACL •不能过滤由设备自己产生的数据•••ACL类型:分为数字型ACL和命名型ACL。

•192.168.0.1 0.0.0.0/0匹配一个主机地址192.168.0.0 0.0.0255匹配一个网段正掩码、反掩码、通配符区别:192.168.0.1 0.0.0.254匹配网段内奇数地址192.168.0.0 0.0.0.254匹配网段内偶数地址any=0.0.0.0 255.255.255.255匹配所有地址•acl 2000创建一个基本ACL rule 5deny/permit source 192.168.1.0 0.0.0.255配置ACL 的规则:拒绝或允许源地址为192.168.1.0/24网段内的所有流量acl 3000创建一个高级ACLrule 5deny/permit tcp source 192.168.1.0 0.0.0.255 destination 8.8.8.8 0destination-port eq 80配置ACL 的规则:拒绝或允许源地址为192.168.1.0/24网段内到8.8.8.8的HTTP 流量traffic-filter inbound/outbound acl 2000在接口调用ACL 过滤流量display acl 2000验证ACLdisplay traffic-filter applied-record查看设备上所有基于ACL 调用情况•ACL配置:••••基本ACL 尽量调用在离目标最近的出站接口•高级ACL 尽量调用在离源头最近的入站接口••ACL 接口调用方向的建议:。

华为设备访问控制列表ACL的原理与配置

华为设备访问控制列表ACL的原理与配置
只比较前8位
如何使用反掩码
扩展访问控制列表
从202.110.10.0/24来的,到179.100.17.10的, 使用TCP协议, 利用HTTP访问的 数据包可以通过!
路由器
扩展访问控制列表使用除源地址外更多的信息描述数据包,表明是允许还是拒绝。
配置TCP/UDP协议的扩展访问列表: rule { normal | special }{ permit | deny } { tcp | udp } [source source-addr source-wildcard | any ] [source-port operator port1 [ port2 ] ] [ destination dest-addr dest- wildcard | any ] [destination-port operator port1 [ port2 ] ] [logging] 配置ICMP协议的扩展访问列表: rule { normal | special }{ permit | deny } icmp [source source-addr source-wildcard | any ] [ destination dest-addr dest- wildcard | any ] [icmp-type icmp-type icmp-code] [logging] 配置其它协议的扩展访问列表: rule { normal | special }{ permit | deny } { ip | ospf | igmp | gre } [source source-addr source-wildcard | any ] [ destination dest-addr dest- wildcard | any ] [logging]

思科CISCO Acl访问控制详解

思科CISCO Acl访问控制详解

访问控制列表ACLACL简介ACL(Access Control List)是一个常用的用于流量匹配的工具,ACL通过对数据包中的源IP、目标IP、协议、源端口、目标端口这5元素进行匹配,然后对匹配的数据执行相应的策略(转发、丢弃、NAT 转换、限速)1.对访问网络的流量进行过滤,实现网络的安全访问;2. 网络地址转换(NAT);3. QOS服务质量;4. 策略路由。

策略:要求1.1和1.2可以访问财务部(1.1和1.2 是销售部经理),其他不允许访问财务。

一、标准ACL:匹配条件较少,只能通过源IP地址和时间段进行流量匹配,在一些需要进行简单匹配的环境中使用。

R(config)# access-list 编号策略源地址编号:标准ACL范围1--- 99策略:permit允许 | deny 拒绝源地址:要严格检查的地址( IP+通配符掩码)通配符掩码--- 是用来限定特定的地址范围(反掩码)用0 表示严格匹配用1 表示不检查例:主机 172.16.1.1 通配符掩码 0.0.0.0 32位都要检查主网 172.16.0.0/16 通配符掩码0.0.255.255 检查16位子网 172.16.1.0/24 通配符掩码0.0.0.255 24位要检查任意的 0.0.0.0 通配符掩码255.255.255.255不检查主机 ---- host 172.16.1.1 任意 ---- any练习:192.168.1.64/28子网掩码:255.255.255.240子网号: 192.168.1.64/28 (剩余4个主机位,网络号是16的倍数)广播地址: 192.168.1.79 (下一个网络号-1)通配符掩码 0.0.0.15 (比较前28位)通配符掩码 = 255.255.255.255 - 子网掩码也称为反掩码将ACL与接口关联:R(config-if)#ip access-group 编号 {in|out}{in|out} 表明在哪个方向上的数据进行控制策略:要求1.1和1.2可以访问财务部(1.1和1.2 是销售部经理),其他不允许访问财务部。

acl反掩码规则

acl反掩码规则

acl反掩码规则ACL反掩码规则是网络安全中常用的一种策略控制技术,用于配置和管理网络设备的访问控制列表(ACL)。

通过使用ACL反掩码规则,可以限制或允许特定的网络流量,从而提高网络的安全性和性能。

本文将介绍ACL反掩码规则的原理、应用场景和配置方法。

一、ACL反掩码规则的原理ACL反掩码规则是基于源地址、目的地址和协议类型等信息来过滤网络流量的一种策略控制技术。

在ACL中,每条规则都由一个反掩码(wildcard mask)和一个掩码(mask)组成。

反掩码用于匹配需要过滤的网络流量,而掩码用于指定允许或拒绝匹配的条件。

ACL反掩码规则的匹配过程是逐位比较的。

当一个网络流量与ACL 规则中的反掩码进行匹配时,网络设备会将流量中的源地址与反掩码进行“与”操作,得到一个结果。

然后,再将该结果与掩码进行“或”操作,得到最终的匹配结果。

如果匹配结果为真,则网络流量会被允许通过;如果匹配结果为假,则网络流量会被拒绝。

二、ACL反掩码规则的应用场景ACL反掩码规则广泛应用于网络设备的访问控制、流量控制和安全策略等方面。

下面是几个常见的应用场景:1. 限制特定IP地址的访问:通过配置ACL反掩码规则,可以限制特定IP地址的访问网络资源,从而提高网络的安全性。

2. 阻止恶意流量:ACL反掩码规则可以用于阻止恶意流量,例如DDoS攻击、端口扫描等,从而减轻网络设备的负载压力。

3. 优化网络性能:通过配置ACL反掩码规则,可以限制或允许特定类型的网络流量,从而优化网络的性能。

例如,可以禁止P2P下载或限制视频流量,以减少网络拥塞。

4. 实现访问控制:ACL反掩码规则可以用于限制特定用户或用户组的访问权限,从而实现访问控制。

例如,可以禁止某些用户访问特定的网络资源。

三、ACL反掩码规则的配置方法配置ACL反掩码规则的方法因设备和操作系统而异。

下面是一个简单的示例,演示了如何在Cisco路由器上配置ACL反掩码规则:1. 进入路由器的配置模式:```enableconfigure terminal```2. 创建一个访问控制列表(ACL):```access-list 10 permit 192.168.1.0 0.0.0.255```3. 创建一个反掩码规则:```ip access-list extended ACL-1permit ip any 192.168.1.0 0.0.0.255```4. 应用ACL反掩码规则到接口:```interface GigabitEthernet0/0ip access-group ACL-1 in```通过以上配置,ACL反掩码规则将会过滤进入GigabitEthernet0/0接口的流量。

acl掩码匹配规则

acl掩码匹配规则

acl掩码匹配规则摘要:一、acl 掩码匹配规则简介1.acl 掩码的作用2.掩码匹配规则的分类二、acl 掩码匹配规则详解1.通配符掩码2.扩展通配符掩码3.反向掩码4.偏移量掩码三、acl 掩码匹配规则的应用1.网络安全策略2.路由策略四、总结正文:一、acl 掩码匹配规则简介在计算机网络中,acl(Access Control List,访问控制列表)是一种用于控制网络通信访问的技术。

通过配置acl,可以限制特定网络流量的访问权限。

掩码匹配规则是acl 中的一种重要概念,它用于定义网络地址的匹配方式。

了解掩码匹配规则对于网络工程师来说至关重要,因为它可以帮助他们更精确地控制网络流量。

二、acl 掩码匹配规则详解1.通配符掩码通配符掩码是最基本的掩码类型,它使用通配符“*”来表示任意数量的字符。

例如,如果要匹配所有以“192”开头的IP 地址,可以使用通配符掩码“0.0.0.255”。

2.扩展通配符掩码扩展通配符掩码是一种更灵活的掩码类型,它使用“?”符号来表示一个字符,使用“[]”符号来表示字符范围。

例如,如果要匹配所有以“192”开头、第三字节为“6”的IP 地址,可以使用扩展通配符掩码“0.0.1[0-9].*”。

3.反向掩码反向掩码是一种特殊的掩码类型,它将IP 地址的每个字节取反,然后与原始IP 地址进行比较。

例如,如果要匹配所有以“192”开头、第三字节为“6”的IP 地址,可以使用反向掩码“11000000.00000000.00000001.00000000”。

4.偏移量掩码偏移量掩码是一种用于匹配特定IP 地址范围的掩码类型。

它通过指定一个偏移量来匹配特定范围内的IP 地址。

例如,如果要匹配所有以“192”开头、第三字节为“6”的IP 地址,可以使用偏移量掩码“0.0.1[0-9].*”,并指定偏移量为6。

三、acl 掩码匹配规则的应用1.网络安全策略在网络安全策略中,acl 掩码匹配规则用于限制特定IP 地址或IP 地址范围的访问权限。

H3C路由器acl匹配原则

H3C路由器acl匹配原则

访问控制列表的匹配顺序一个访问控制列表可以由多条“permit | deny”语句组成,每一条语句描述的规则是不相同,这些规则可能存在重复或矛盾的地方,在将一个数据包和访问控制列表的规则进行匹配的时候,到底采用哪些规则呢?就需要确定规则的匹配顺序。

有两种匹配顺序:●配置顺序●自动排序"配置顺序",是指按照用户配置ACL的规则的先后进行匹配。

自动排序使用“深度优先”的原则。

“深度优先”规则是把指定数据包范围最小的语句排在最前面。

这一点可以通过比较地址的通配符来实现,通配符越小,则指定的主机的范围就越小。

比如129.102.1.1 0.0.0.0 指定了一台主机:129.102.1.1,而129.102.1.1 0.0.255.255 则指定了一个网段:129.102.1.1~129.102.255.255,显然前者在访问控制规则中排在前面。

具体标准为:对于基本访问控制规则的语句,直接比较源地址通配符,通配符相同的则按配置顺序;对于基于接口的访问控制规则,配置了“any”的规则排在后面,其它按配置顺序;对于高级访问控制规则,首先比较源地址通配符,相同的再比较目的地址通配符,仍相同的则比较端口号的范围,范围小的排在前面,如果端口号范围也相同则按配置顺序。

使用display acl命令就可以看出是哪条规则首先生效。

显示时,列在前面的规则首先生效。

注:①访问控制列表能被匹配的前提是Firewall Enable。

②要注意Firewall默认的规则是Permit还是Deny> 如果默认为permit,则没有被匹配的数据流采取的动作为允许。

> 如果默认为deny,则没有被匹配的数据流采取的动作为禁止。

例如:Acl number 3000rule 0 permit ip source 192.168.1.3 0(rule 1 deny ip any)-----在最后隐藏了这样一条命令,也就是说来此非192.168.1.3的数据流都被拒绝。

acl介绍

acl介绍

ACLACL(Access Control List,访问控制列表)是用来实现流识别功能的。

网络设备为了过滤报文,需要配置一系列的匹配规则,以识别出特定的报文,然后根据预先设定的策略允许或禁止该报文通过。

ACL通过一系列的匹配条件对报文进行分类,这些条件可以是报文的源地址、目的地址、端口号等。

由ACL定义的报文匹配规则,可以被其它需要对流量进行区分的场合引用,如QoS中流分类规则的定义。

基于时间段的ACL基于时间段的ACL使用户可以根据时间段对报文进行ACL控制。

ACL中的每条规则都可选择一个时间段,这条规则只在该指定的时间段内生效。

如果规则引用的时间段未配置,则系统给出提示信息,并允许这样的规则创建成功。

但是规则不能立即生效,直到用户配置了引用的时间段,并且系统时间在指定时间段范围内ACL规则才能生效。

IPv4的ACLIPv4 ACL分类IPv4 ACL根据ACL序号来区分不同的ACL,IPv4 ACL分为下列四种类型:●基本IPv4 ACL(ACL序号为2000~2999):只根据报文的源IP地址信息制定匹配规则。

●高级IPv4 ACL(ACL序号为3000~3999):根据报文的源IP地址信息、目的IP地址信息、IP承载的协议类型、协议的特性等三、四层信息制定匹配规则。

●二层IPv4 ACL(ACL序号为4000~4999):根据报文的源MAC地址、目的MAC地址、VLAN优先级、二层协议类型等二层信息制定匹配规则。

●用户自定义IPv4 ACL(ACL序号为5000~5999):可以以报文的报文头、IP头等为基准,指定从第几个字节开始与掩码进行“与”操作,将从报文提取出来的字符串和用户定义的字符串进行比较,找到匹配的报文。

IPv4 ACL命名用户在创建IPv4 ACL的同时,可以为ACL指定一个名称。

命名的ACL使用户可以通过名称唯一地确定一个IPv4 ACL,并对其进行相应的操作。

每个IPv4 ACL最多只能有一个名称。

ACL和反向子网掩码

ACL和反向子网掩码

补充一下,应该叫做通配符掩码(Wildcards)
0为需要匹配的位,1为不必匹配的位
ospf设置network时也是用的反向!

通过上面的配置将来自192.168.1.0/24的所有计算机数据包进行过滤丢弃。为什么后头的子网掩码表示的是0.0.0.255呢?这是因为CISCO规定在ACL中用反向掩玛表示子网掩码,反向掩码为0.0.0.255的代表他的子网掩码为255.255.255.0。
反掩码和掩码是相反的,掩码中0表示不用匹配的位(比如平常说的255.255.255.0,24位掩码),反掩码中0表示必须匹配的位(EG.0.0.0.255)
例如:access-list 10 deny host 192.168.1.1这句命令是将所然我们也可以用网段来表示,对某个网段进行过滤。命令如下:access-list 10 deny 192.168.1.0 0.0.0.255
ACL和反向子网掩码
访问控制列表ACL分很多种,不同场合应用不同种类的ACL。其中最简单的就是标准访问控制列表,他是通过使用IP包中的源IP地址进行过滤,使用的访问控制列表号1到99来创建相应的ACL。
标准访问控制列表是最简单的ACL。
它的具体格式如下:access-list ACL号 permit|deny host ip地址

思科ACL

思科ACL

基本原则:1、按顺序执行,只要有一条满足,则不会继续查找2、隐含拒绝,如果都不匹配,那么一定匹配最后的隐含拒绝条目,思科默认的3、任何条件下只给用户能满足他们需求的最小权限4、不要忘记把ACL应用到端口上一、标准ACL 命令:access-list {1-99} {permit/deny} source-ip source-wildcard [log] 例:access-list 1 penmit 192.168.2.0 0.0.0.255 允许192.168.2.0网段的访问access-list 1 deny 192.168.1.0 0.0.0.255 拒绝192.168.1.0网段的访问说明:wildcard为反掩码,host表示特定主机等同于192.168.2.3 0.0.0.0;any表示所有的源或目标等同于0.0.0.0 255.255.255.255 ;log表示有匹配时生成日志信息;标准ACL一般用在离目的最近的地方二、扩展ACL 命令:access-list {100-199} {permit/deny} protocol source-ip source-wildcard [operator port] destination-ipdestination-wildcard [operator port] [established][log] 例:access-list 101 permit tcp 192.168.2.0 0.0.0.255 gt 1023 host 192.168.1.2 eq 80 允许192.168.2.0网段的主机访问主机192.168.1.2的web服务access-list 101 permit udp 192.168.2.0 0.0.0.255 gt 1023 any eq 53允许192.168.2.0网段的主机访问外网以做dns查询说明:gt 1023表示所有大于1023的端口,这是因为一般访问web、ftp等服务器时客户端的主机是使用一个1023以上的随机端口;established 表示允许一个已经建立的连接的流量,也就是数据包的ACK位已设置的包。

反掩码详解

反掩码详解

反掩码详解在配置路由协议得时候(如OSPF、EIGRP )使用得反掩码必需就是连续得1即网络地址。

例: route ospf 100 network 192、168、1、0 0、0、0、255 network 192、168、2、0 0、0、0、255而在配置ACL得时候可以使用不连续得1,只需对应得位置匹配即可。

例:access-list 1 permit 198、78、46、0 0、0、11、255正掩码与反掩码得区别:正掩码必须就是连续得,而反掩码可以不连续,例如:C类地址子网掩码中不可以出现255、253、255、0(二进制为11111111 11111101 11111111 00000000)这样得掩码;而反掩码可以出现0、0、0、2(二进制为00000 00000)。

正掩码表示得路由条目,而反掩码表示得范围。

反掩码就就是通配符掩码,通过标记0与1告诉设备应该匹配到哪位。

在反掩码中,相应位为1得地址在比较中忽略,为0得必须被检查、IP地址与反掩码都就是32位得数例如掩码就是255、255、255、0 wildcard-mask 就就是0、0、0、255255、255、255、248 反掩就就是0、0、0、7通配符掩码(wildcard-mask)路由器使用得通配符掩码(或反掩码)与源或目标地址一起来分辨匹配得地址范围,它跟子网掩码刚好相反。

它像子网掩码告诉路由器IP地址得哪一位属于网络号一样,通配符掩码告诉路由器为了判断出匹配,它需要检查IP地址中得多少位。

这个地址掩码对使我们可以只使用两个32位得号码来确定IP地址得范围。

这就是十分方便得,因为如果没有掩码得话,您不得不对每个匹配得IP客户地址加入一个单独得访问列表语句。

这将造成很多额外得输入与路由器大量额外得处理过程。

所以地址掩码对相当有用。

在子网掩码中,将掩码得一位设成1表示IP地址对应得位属于网络地址部分。

相反,在访问列表中将通配符掩码中得一位设成1表示I P地址中对应得位既可以就是1又可以就是0。

acl通配符

acl通配符

acl的功能:1.访问控制2. 匹配:a.匹配数据 b.匹配路由。

配置:1.标准访问控制列表:①access-list(1-99)基于ip标准,只能控制ip包。

(1300-1999)不常用。

②编号的没有办法针对某一行单独删除,也不可以进行插入,支持行号重排;命名的都可以。

③只能匹配源ip。

④当匹配路由时,只能控制网络号,不能控制掩码(掩码比须一致)。

a. 编号的:R2(config)#access-list [list number][permit | deny][source address][wildcard-mask][log]例如: R2(config)#access-list 10 permit 12.1.1.1 0.0.0.0R2(config)#access-list 10 permit 1.1.1.0 0.0.0.255b. 命名的:R2(config)#ip access-list standard[(1-99,1300-1999)| (wolf ,wolf123 ,e@#¥,......)]例如:R2(config)#(行号)ip access-list standardwolf (行号可选,一般在需要插入的时候使用)R2(config-std-nacl)#permit 4.4.4.40.0.0.255 (可进到该表下,不必再像编号那样每次都accless)R2(config-std-nacl)#permit 5.55.5.0 0.0.255.254R2(config-std-nacl)#remark ce shi (描述:针对上面一行)R2(config-std-nacl)#deny host 192.168.0.12.扩展访问控制列表:a.编号的:R2(config)#access-list [list num.] [per | deny][protocol | protocol keyword] [source address][source-wildcard] [source port] [dest address] [dest-wildcard] [dest port] [log] [options]①access-list(100-199)不仅基于ip,还可以支持tcp、udp、icmp、等协议。

ACL中反掩码讲解+总结

ACL中反掩码讲解+总结

ACL中反掩码讲解+总结总结:在反掩码中,1表⽰随机,0表⽰精确匹配;0和1,永远不交叉;0永远在左边,1永远在右边;在路由协议的配置中,通过network命令进⾏⽹段宣告时,会使⽤在掩码中,1表⽰精确匹配,0表⽰随机;1和0,永远不交叉;1永远在左边,0永远在右边;在配置IP地址以及路由的时候,会使⽤掩码;在通配符中,1表⽰随机,0表⽰精确匹配;0和1的位置,没有任何的固定限制;可以连续,可以交叉;在ACL中,使⽤的通配符;例:答案解析写成⼆进制0000 1010 . 0000 0001 . 0000 0001 .0000 00000000 0000 . 0000 0000 . 1111 1110 . 1111 1111根据 0 就严格匹配,1 就任意,可得到结果(注意:这⾥X代表任意填充)10.1.xxxx xxx1.xxxx xxxx10.1.1.1 换成⼆进制(10.1.0000 0001.0000 0001)标记红⾊的0都可以变为110.1.3.1 换成⼆进制(10.1.0000 0011.0000 0001)标记红⾊的0都可以变为1所以选AC若还不明⽩把【通配符掩码】转为⼆进制对⽐如下:根据 0 就严格匹配,1 就任意把0.0.254.255转为⼆进制为00000000.00000000.11111110.11111111表⽰前16位检查+第24位检查,其他位不检查都是匹配的。

把【原地址】转为⼆进制对⽐如下:把10.1.1.0 转为⼆进制为00001010.00000001.00000001.00000000把【选择题中的地址】转为⼆进制对⽐如下:把10.1.1.1转为⼆进制为00001010.00000001.00000001.00000001把10.1.2.1转为⼆进制为00001010.00000001.00000010.00000001 第24位必须为1把10.1.3.1转为⼆进制为00001010.00000001.00000011.00000001把10.1.4.1转为⼆进制为00001010.00000001.00000100.00000001 第24位必须为1总结:以10.1.1.0为标准,只要是⼆进制的前16位+第24位相同,即为匹配;因为在反掩码中,相应位为1的地址在⽐较中忽略,为0的必须被检查。

ACL与反掩码

ACL与反掩码

在访问控制列表中,掩码和IP地址配合使用来指定什么样的流量可以通过(permitted)或者禁止(denied)。

要在接口上才能配置访问控制列表。

它与子网掩码不同的是,子网掩码是由左端的255开始的(比如,IP地址:209.165.202.129,掩码:255.255.255.224)而访问控制列表的掩码与子网掩码是相反的(比如,访问控制列表的掩码:0.0.0.255)这种掩码通常被叫做反转掩码(inverse mask)或通配符掩码(wildcard mask)。

当这些十进制的掩码被转换为二进制的时候(表现为一些0或1),就可以被用来决定什么样的流量应该被禁止,什么样的流量应该被通过。

一个0表示它说对应的IP地址位一定要被精确匹配;一个1表示所对应的IP地址位应该被忽略,下面的表格用来说明访问控制列表的概念。

掩码示例:网络地址:10.1.1.0(流量)掩码:0.0.0.255网络地址(二进制):00001010.00000001.00000001.00000000掩码(二进制):00000000.00000000.00000000.11111111根据二进制的掩码,你可以看到,前三个八位数组必须被精确的匹配给网络地址(00001010.00000001.00000001)。

最后的一个八位数组是“应该被忽略”的(.11111111)所以,所有的流量以10.1.1开始,直到最后八个“应该被忽略”的。

所以,根据这个掩码,网络地址10.1.1.1直到10.1.1.255(10.1.1.x)都会被处理。

访问控制列表的反转掩码同样也可以通过与默认掩码(normal mask)255.255.255.255做减法来得出。

例如:求一个网络地址为172.16.1.0,标准掩码255.255.255.0的反转掩码方法为:255.255.255.255-255.255.255.0(默认掩码)=0.0.0.255(反转掩码)请注意访问控制列表一些等价的表示:1、源地址/源通配符0.0.0.0/255.255.255.255意义等于“any”2、源地址/通配符10.1.1.2/0.0.0.0意义等于“host 10.1.1.2”小结访问控制列表注意:子网掩码同样可以表示成一个固定长度的符号。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

ACL和反掩码
学习ACL,搞懂ACL就不能不搞定wildcard mask,通配符掩码。

说简单点,通配符掩码就是0为绝对匹配,必须严格匹配才行,而1为任意,从某种意义上讲,如果一个8位上有一个1字符,那也只有两种方式,0或者1,但是如果进行组合,那么方式就多了。

举例说明吧。

一般我们在应用上都是进行地址块的匹配,怎么讲呢?就是说:
1)对某个A B C类网进行匹配或者教通配符屏蔽
2)对某个子网应用ACL。

3)对特定主机应用ACL
4)对任意主机或者网络应用ACL
5)特殊情况的匹配
差不多就是以上五种情况,下面一一说明。

1)对某个有类网络进行ACL的通配符屏蔽。

这种情况很好解释。

例如:A类:10.0.0.0 0.255.255.255
先写成二进制形式:00001010.00000000.00000000.00000000
00000000.11111111.111111111.11111111
可以看出,第一个字节需要严格匹配,也就是说必须为10.,后面的任意匹配。

得到的网络为10.*.*.*
如果我把这个改一下呢?10.0.0.0 0.0.3.255
同样写成二进制形式:00001010.00000000.00000000.00000000
00000000.00000000.00000011.111111111
前两个字节严格匹配为10.0,后面的同上题一个思路,0就严格匹配,1就任意。

在这里,后10个比特可以任意匹配,我们通过计算可以得到合适的结果:10.0.0.*
10.0.1.*
10.0.2.*
10.0.3.*
这四个子网
2)
对某个子网应用ACL
还是举例说明,以C类网络192..168.1.0/24为例进行子网划分。

我们引入地址块的思想进行解释会好理解一些。

因为子网一般都是以地址块形式存在的。

?地址块为128,192.168.1.128 0.0.0.127
?地址块为64,192.168.1.0 0.0.0.63
?地址块为32,192.168.1.0 0.0.0.31
?地址块为16,192.168.1.0 0.0.0.15
?地址块为8,192.168.1.0 0.0.0.7
?地址块为4,192.168.1.0 0.0.0.3
?地址块为2,192.168.1.0 0.0.0.1
3)对特定主机应用ACL
通配符需要全匹配,例如:182.168.12.4 0.0.0.0
还有一种表示方法:host 182.168.12.4
Host在这里是关键字,用来代替0.0.0.0 ,用于源地址和目的地址字段。

4)对任意主机或者网络应用ACL
这是任意匹配的情况,主机任意,通配符任意匹配:0.0.0.0 255.255.255.255,同时这里也有简写——any
5)比较特殊的情况。

用我的话说这种情况是不按规则出牌的情况,也是比较有趣的。

我不想让某个子网或者是某个有类网被通配符屏蔽,我仅仅是想让部分主机被屏蔽,不过这部分主机也应该是有规律的,要不管理人员肯定得折腾疯。

哈哈。

仅举两例以供说明:
?随便写一个,计算出屏蔽了哪些网络。

随便写一个192.168.1.23 0.0.0.5
怎么?傻眼了?这就是不按规则出牌的情况,CCNA自学指南里面肯定说了,不能从11.0或者12.0
等网络开始,非得是2的次幂才行。

对此
规矩我们不予理睬,还是使用最为原始的办法进行一个一个匹配。

写成二进制形式:11000000.10101000.00000001.00010111
00000000.00000000.00000000.00000101
接下来就是匹配计算了。

前三个字节毫无疑问,严格匹配。

最后一个字节逢0匹配,逢1任意。

00010111
00000101
00010*1*
如上的公式,我们看到有星号的位置是可以任意匹配的,这样我们就可以
算出:
①00010010——18
②00010011——19
③00010110——21
④00010111——23
这样就很明显了,得到的结果就是192.168.1.18
192.68.1.19
192.168.1.21
192.168.1.23 都被0.0.0.5这个通配符掩码给屏蔽了。

怎样,这个不按规则出牌的通配符掩码是不是也愚弄了你一次?
备注:只要严格按照0——严格匹配,1——任意配置的原则不管什么反掩码都是纸老虎。

?写第二个,我需要匹配一个网络里面奇数IP的主机或者偶数IP的主机(或者的路由过滤中需要奇数网络)
还是看例子:
192.168.1.1
192.168.1.2
192.168.1.3
192.168.1.4
192.168.1.5
192168.1.6
192.168.1.7
192.168.1.9
……………
192.168.1.254
思路都是一样的,条条道路通罗马,这里条条道路通配符我还是要写成二进制形式
前面的三个字节就省略了,只写后面的一个字节的:00000001
00000010
00000011
00000100
00000101
00000110
00000111
…………
看出规律了么?什么?没有啊,仔细瞧瞧么!奇数IP的最后一位都是1,而偶数IP的最后一位都是0。

这就是规律啊。

那么怎么写呢?这个就比较简单了吧,奇数IP的:192.168.1.1 0.0.0.254 ;偶数IP的呢——192.168.1.2 0.0.0.254
如上就是我对ACL的理解,有说错的,做错的,还望大家指正,所谓三人行必有我师,你有什么更好的办法别忘记跟帖。

ACL主要难点是在通配符的计算,如有这么一道题:
已知子网,求通配符掩码。

例:允许199.172.5.0/24
199.172.10.0/24
199.172.13.0/24
199.172.14.0/24网段访问路由器。

要求写出ACL来,但只能用两条ACL代替。

1.
先将这四个数换成二进制:
5.0
-------
0 1 0 1
10.0
-----
1 0 1 0
13.0
-----
1 1 0 1
14.0
-----
1 1 1 0
观察可以看到5.0和13.0
10.0和14.0有共同点。

2.
将不相同的部分用Z表示
5.0和13.0
----------
Z 1 0 1
10.0和14.0
--------
1 Z 1 0
3.
将Z换成1,数字换成0。

可以得出:5.0和13.0
Z 1 0 1
------------ 1 0 0 0
10.0和14.0
--------
1 Z 1 0
------------ 0 1 0 0
4.
最后将二进制换成十进制:5.0和13.0
----------
Z 1 0 1
------------ 1 0 0 0
-------- 8
10.0和14.0
--------
1 Z 1 0
------------ 0 1 0 0
-------- 4
最后得出:
st
10 permit 199.172.5.0 0.0.8.0
access-list 11 permit 199.172.10.0 0.0.4.0
举个例子:
比如:控制192.168.1.40/24-192.168.1.70/24这一段IP地址能访问server,如何设置通配符掩码?
只能分段完成,这里我分四段。

(也可以分五段,自己想)
192.168.1.40---47 192.168.1.40 0.0.0.7
192.168.1.48---63 192.168.1.48 0.0.0.15
192.168.1.64---71 192.168.1.64 0.0.0.7
外加一条deny 192.168.1.71 0.0.0.0
也可以五段:
00101000 192.168.1.40 0.0.0.7(192.168.1.40-47)
00101111
00000111
00110000 192.168.1.48 0.0.0.15(192.168.1.48-63)00111111
00001111
01000000 192.168.1.64 0.0.0.3 (192.168.1.64-67)01000011
01000100 192.168.1.68 0.0.0.1 (192.168.1.68-69)01000101
01000110 192.168.1.70 0.0.0.0 (192.168.1.70)。

相关文档
最新文档