Cisco VLAN ACL配置

什么是ACL?

ACL全称访问控制列表(Access Control List),主要通过配置一组规则进行过滤路由器或交换机接口进出的数据包,

是控制访问的一种网络技术手段, ACL适用于所有的被路由支持的协议,如IP、tcp、udp、ftp、www等。

什么是反掩码?

反掩码就是通配符掩码 , 通过标记0和1告诉设备应该匹配到哪位。 在反掩码中,相应位为1的地址在比较中忽略,

为0的必须被检查。IP地址与反掩码都是32位的数 由于跟子网掩码刚好相反,所以也叫反掩码 。

路由器使用的通配符掩码与源或目标地址一起来分辨匹配的地址范围,它与子网掩码不同。它不像子网掩码告诉

扫描二维码关注公众号,回复: 873143 查看本文章

路由器IP地址是属于哪个子网(网段),通配符掩码告诉路由器为了判断出匹配,它需要检查IP地址中的多少位。

例如:

255.255.255.0 反掩码(wildcard-mask)就是0.0.0.255

255.255.255.248  反掩码(wildcard-mask)就是0.0.0.7

ACL工作原理:

ACL使用包过滤技术,在路由器上读取OSI七层模型的第3层和第4层包头中的信息。如源地址,目标地址,源端口,目标端口等,根据预先定义好的规则,对包进行过滤,从而达到访问控制的目的。

对于路由器接口而言,ACL是有两个方向:

注意:如果发现没有匹配的ACL规则,默认会丢弃该数据包,思科ACL规则默认会有一条隐藏的deny any any规则,而华三ACL规则默认是permit any any规则。

入站----如果是入站访问列表,则当路由器接收到数据包时,Cisco IOS 软件将检查访问列表中的条件语句,看是否有匹配。如果数据包被允许,则软件将继续处理该数据包。如果数据包被拒绝,则软件会丢弃该数据包。

出站----如果是出站访问列表,则当软件到接收数据包并将群其路由至出站接口后,软件将检查访问列表中的条件语句,看是否有匹配。如果数据包被允许,则软件会发送该数据包。如果数据包被拒绝,则软件会丢弃该数据包。

ACL两种类型:

标注:允许在标准ACL和扩展ACL中使用名称代替访问控制列表号。

1、 标准的ACL

根据数据包的源IP地址来控制允许转发或拒绝数据包,访问控制列表号1~99。

标准访问控制列表配置命令如下:

Router(config)#access-list access-list-number {permit|deny} source [souce-wildcard]

或者

Router(config)#ip access-list standard access-list-number

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

下面是命令参数的详细说明

access-list-number:访问控制列表号,标准ACL取值是1-99,可以使用名称替代列表号。

Sequence Number:每条ACL规则列表序列号,可使用范围1-2147483647。

permit | deny:如果满足规则,则允许/拒绝通过。

source:数据包的源地址,可以是主机地址,也可以是网络地址

2、 扩展的ACL

根据数据包的源IP地址、目的IP地址、指定协议,端口、标志和时间来控制允许转发或拒绝数据包,访问控制列表号100~199

扩展访问控制列表配置命令如下:

Router(config)#access-list access-list-number {permit|deny} protocol {source souce-wildcard destination destination-wildcard} [operator operan]

或者

Router(config)#ip access-list extended access-list-number

Router(config-std-nacl)#{permit|deny} protocol {source souce-wildcard destination destination-wildcard} [operator operan]

下面是命令参数的详细说明

access-list-number:访问控制列表号,扩展ACL取值100-199,可以使用名称替代列表号。

Sequence Number:每条ACL规则列表序列号,可使用范围1-2147483647。

permit|deny:如果满足规则,则允许/拒绝通过。

protocol:用来指定协议的类型,如IP,TCP,UDP,ICMP等。

source、destination:源和目的,分别用来标示源地址和目的地址。

souce-wildcard、destination-wildcard:子网反码,souce-wildcard是源反码,destination-wildcard是目标反码。

operator operan:lt(小于)、gt(大于)、eq(等于)、neq(不等于)、rand(范围端口号)等。

ACL应用分类:

Port ACL基于MAC的ACL

ACL应用在二层接口上,但二层接口只支持in方向,一个接口只能使用一条ACL规则,IP或MAC的ACL都可以应用到二层接口,但不能应用到端口聚合(EtherChannel)

VLAN ACL基于VLAN的ACL

使用VLAN与VLAN之间的ACL,相同的VLAN也是可以过滤,只要流量进入或离开指定的VLAN都会被过滤,可以同时控制二层与三层流量。

VLAN ACL只是VLAN调用了ACL规则,in或out的VLAN流量都会被检测,无论是通过二层转发还是三层转发。VLAN ACL是不能定义方向的,

虽然VLNA调用ACL规则会有in或out选项,但只针对VLAN源地址和目标地址而言。VLAN调用ACL是不能实现vlan 10 ping不通vlan 20,

但vlan 20 ping通vlan10类似的功能,除非交换机支持自反ACL规则。

Router ACL基于 IP 的ACL

ACL应用到三层接上,但只能是IP ACL,不能是MAC ACL,Router ACL是in和out方向都可以使用,每个接口每个方向只能使用一条ACL规则。

Time ACL基于时间的ACL

Time ACL是在原来的ACL规则上增加的功能,可以应用于二层或三层,在原来的ACL规则和时间相结合使用,控制起来将更加灵活多变。

实例(VLAN ACL)

注意:配置VLAN  ACL需要注意以下问题:

1、VLAN ACL不能具体定义入站和出站规则,VLANACL的in和out是针对VLAN的本身而言,ACL源地址与应用的VLAN相同网段时,

就使用in方向,如果ACL目标地址与应用的VLAN相同网段时,就使用out方向。

2、当数据包匹配思科ACL规则发现没有匹配的规则,则会匹配思科ACL默认一条隐藏的deny any any规则,默认丢弃该数据包。

3、如果你删除access-list-number访问控制列表号,则access-list-number里的所有会被清除,建议进入每条access-list-number

后在根据需求删除相应的序列号。

4、ACL规则是按从上到下进行匹配,如果先匹配了后面就不会再进行匹配。

需求如下:

1、 实现VLAN 10 与VLAN 20不能相互访问,VLAN 10 能访问VLAN 30。

2、VLAN 30 服务器192.168.30.30只允许VLAN 20主机192.168.20.20访问www服务(80端口),其它服务都不能访问,其它VLAN 20的所有IP地址都不能访问。

3、VLAN 30 服务器192.168.30.31允许VLAN 20所有主机访问ftp服务(21端口),其它服务都不能访问。

设计思路:

1、 一台核心思科3560交换机,三台汇聚思科2960交换机

2、 3560交换机配置VTP、VLAN、trunk

3、 VLAN 30服务器192.168.30.30开启www服务,服务器192.168.30.31开启ftp

实验拓扑图:

核心交换机3560SW

##配置VTP服务器

3650SW>enable

3650SW#vlan database

3650SW(vlan)#vtp domain CCTV

3650SW(vlan)#vtp server

##创建VLAN

3650SW(vlan)#vlan 10 name VLAN10

3650SW(vlan)#vlan 20 name VLAN20

3650SW(vlan)#vlan 30 name VLAN30

3650SW(vlan)#exit

##配置VLAN IP地址

3650SW#configure terminal

3650SW(config)#interface vlan 10

3650SW(config-if)#ip address 192.168.10.1 255.255.255.0

3650SW(config-if)#exit

3650SW(config)#interface vlan 20

3650SW(config-if)#ip address 192.168.20.1 255.255.255.0

3650SW(config-if)#exit

3650SW(config)#interface vlan 30

3650SW(config-if)#ip address 192.168.30.1 255.255.255.0

3650SW(config-if)#exit

##开启三层交换机默认路由

3560SW(config)#ip routing

#设置端口汇聚(trunk)

3650SW(config)#interface range fastEthernet 0/22-24

3650SW(config-if-range)#3650SWport trunk encapsulation dot1q

3650SW(config-if-range)#3650SWport mode trunk

3650SW(config-if-range)#no shutdown

3650SW(config-if-range)#exit

#创建扩展ACL规则101和102并配置

说明:ACL限制某个服务或端口一般使用以下命令限制:

3560SW(config-ext-nacl)#permit tcp host 192.168.30.30 host 192.168.20.20 eq www

但Cisco Packet Tracer Student模拟软件配置了会有异常,所以,本教程采用全部放开配置。

3560SW#configure terminal

##下面两条命令等同access-list 101 permit ip 192.168.10.0 0.0.0.255 192.168.30.0 0.0.0.255

3560SW(config)#ip access-list extended 101

3560SW(config-ext-nacl)#10 permit ip 192.168.10.0 0.0.0.255 192.168.30.0 0.0.0.255

3560SW(config-ext-nacl)#exit

3560SW(config)#ip access-list extended 102

3560SW(config-ext-nacl)#10 permit tcp host 192.168.20.20 host 192.168.30.30 eq www

3560SW(config-ext-nacl)#20 permit tcp 192.168.20.0 0.0.0.255 host 192.168.30.31 eq ftp

3560SW(config-ext-nacl)#30 permit ip 192.168.10.0 0.0.0.255 192.168.30.0 0.0.0.255

3560SW(config-ext-nacl)#exit

3560SW(config-if)#exit

##ACL规则应用在vlan 10的in接口

3560SW(config)#interface vlan 10

3560SW(config-if)#ip access-group 101 in

3560SW(config-if)#exit

##ACL规则应用在vlan 30的in接口

3560SW(config)#interface vlan 30

3560SW(config-if)#ip access-group 102 out

3560SW(config-if)#exit

##显示与维护

3560SW#show access-lists

3650SW#show running-config

2960交换机SW01

##配置VTP客户端

SW01#vlan database

SW01(vlan)#vtp domain CCTV

SW01(vlan)#vtp client

SW01(vlan)#exit

##设置端口汇聚(trunk)

SW01#configure terminal

SW01(config)#interface fastEthernet 0/24

SW01(config-if)#switchport mode trunk

SW01(config-if)#no shutdown

SW01(config-if)#exit

##分配VLAN所属端口

SW01#configure terminal

SW01(config)#interface range fastEthernet 0/1-5

SW01(config-if-range)#switchport access vlan 10

SW01(config-if-range)#switchport mode access

SW01(config-if-range)#no shutdown

SW01(config-if-range)#exit

2960交换机SW02

##配置VTP客户端

SW01#vlan database

SW01(vlan)#vtp domain CCTV

SW01(vlan)#vtp client

SW01(vlan)#exit

##设置端口汇聚(trunk)

SW01#configure terminal

SW01(config)#interface fastEthernet 0/24

SW01(config-if)#switchport mode trunk

SW01(config-if)#no shutdown

SW01(config-if)#exit

##分配VLAN所属端口

SW01#configure terminal

SW01(config)#interface range fastEthernet 0/1-5

SW01(config-if-range)#switchport access vlan 20

SW01(config-if-range)#switchport mode access

SW01(config-if-range)#no shutdown

SW01(config-if-range)#exit

2960交换机SW03

##配置VTP客户端

SW01#vlan database

SW01(vlan)#vtp domain CCTV

SW01(vlan)#vtp client

SW01(vlan)#exit

##设置端口汇聚(trunk)

SW01#configure terminal

SW01(config)#interface fastEthernet 0/24

SW01(config-if)#switchport mode trunk

SW01(config-if)#no shutdown

SW01(config-if)#exit

##分配VLAN所属端口

SW01#configure terminal

SW01(config)#interface range fastEthernet 0/1-5

SW01(config-if-range)#switchport access vlan 30

SW01(config-if-range)#switchport mode access

SW01(config-if-range)#no shutdown

SW01(config-if-range)#exit

猜你喜欢

转载自www.cnblogs.com/zoulongbin/p/9047390.html