cisco实现ACL配置

1. 什么是ACL


大家先看下面这张图:配置文件可以点此下载
cisco实现ACL配置_第1张图片
当给路由器R1和路由器R2均配好路由选择协议之后

  • PC1可以ping通PC3
  • PC2也可以ping通PC3

那如果我现在不想让PC2去ping通PC3咋办,那就是去实现ACL(可以在路由器R2上去实现,也可以在路由器R1上,我下边在R2上实现)


2. 给各个路由器配置端口IP和路由协议


配置路由器R1:
	int f0/0
	ip add 192.168.1.1 255.255.255.0
	no shut
	
	int e1/0
	ip add 192.168.2.1 255.255.255.0
	no shut
	
	int s0/1
	ip add 10.1.1.1 255.255.255.0
	clock rate 64000
	no shut
	/*配置ospf*/
	router ospf 100
	network 192.168.1.0 0.0.0.255 area 0
	network 192.168.2.0 0.0.0.255 area 0
	network 10.1.1.0    0.0.0.255 area 0
配置路由器R2:
	int s0/1
	ip add 10.1.1.2 255.255.255.0
	no shu
	
	int f0/0
	ip add 192.168.3.1 255.255.255.0
	no shut
	/*配置ospf*/
	router ospf 100
	network 192.168.3.0 0.0.0.255 area 0
	network 10.1.1.0    0.0.0.255 area 0

此时就实现了以下

  • PC1可以ping通PC3
  • PC2也可以ping通PC3

你可以自行试试看


回到刚开始说的那如果我现在不想让PC2去ping通PC3咋办,那就是去实现ACL(可以在路由器R2上去实现,也可以在路由器R1上,我下边在R2上实现)

3. 路由器R2上实现ACL


大家不要着急,我先将命令写下来,稍后逐一讲解

在路由器R2上配置ACL
	access-list 1 deny 192.168.2.0 0.0.0.255
	access-list 1 perm any
	int f0/0
	ip access-group 1 out

此时在PC1和PC2上分别ping PC3,PC2是ping不通的,这就达到了ACL的效果

  1. access-list 1 deny 192.168.2.0 0.0.0.255,
    • 这句中1是ACL的编号,如果路由器是IP协议,这个编号1~99之间你可以随便取
    • deny表示是拒绝
    • 192.168.2.0表示前面deny的ip地址
    • 通用格式为:access-list access-list-number {permit|deny} source {source-wildcard}
    • source为前面{permit|deny}的ip地址,{source-wildcard}叫通配符掩码(反码),我具体也不是太清楚这个
  2. 可以看到下面还有一句access-list 1 perm any
    这是因为在进行ACL验证时,是逐条验证的,先验证你写的第一条,如果第一条匹配,就不验证第二条了,如果第一条不匹配才验证第二条,就比如在这个例子中
    • 若PC1去ping PC3,在R2处匹配时,先去匹配access-list 1 deny 192.168.2.0 0.0.0.255,发现不能匹配,那就继续往下走,去匹配access-list 1 perm any,发现匹配
    • 若PC2去ping PC3,在R2处匹配时,先去匹配access-list 1 deny 192.168.2.0 0.0.0.255,发现匹配,就直接deny PC2的请求了,而不去匹配第二条

注意:在ACL匹配时 如果你写的列表里面那几条都没匹配到,那默认就是deny即拒绝

  1. 最后两句
    int f0/0
    ip access-group 1 out
    指明了ACL具体应用在哪一个接口上

刚才讲列表时用到了编号,即access-list 1 deny 192.168.2.0 0.0.0.255这里使用了1,其实也可以自己起名字的

命名标准ACL的配置
首先在路由器R2上删除原来的ACL
	no access-list 1
再配置命名标准ACL
	conf t
	ip access-list standard haha
	permit 192.168.1.0 0.0.0.255
	deny 192.168.2.0 0.0.0.255
	permit any
将命名标准ACL应用到接口上
int f0/0
	ip access-group haha out

下面这篇文章似乎也不错,可以参考

你可能感兴趣的:(计算机网络)