读取第三层、第四层包头信息,根据预先定义好的规则对包进行过滤。tcp
列表应用到接口的方向与数据方向有关ide
出:已通过路由器的处理,正离开路由器接口的数据包;
入:已到达路由器接口的数据包,将被路由器处理。code
Router(config)#access-list access-list-number {permit | deny} source [ source-wildcard ] //建立ACL Router(config)# no access-list access-list-number //删除ACL Router(config-i)# ip access-group access-list-number {in lout} //将ACL应用于接口 Router(config-if)# no ip access-group access-list-number {in lout} //在接口上取消ACL的应用
Router(config)# access-list 1 permit 192.168.1.0 0.0.0.255 //建立ACL,容许网段192.168.1.0/24 Router(config)# access-list 1 permit 192.168.2.2 0.0.0.0 //建立ACL,容许IP192.168.2.2
注意访问控制列表隐含拒绝,当你不设置规则时默认拒绝,至关于用了下面命令:blog
Router(config)# access-list 1 deny 0.0.0.0 255.255.255.255
接口
当咱们设置固定的主机地址能够不写子网掩码,在IP地址前加上关键字host便可,当咱们设置全部IP地址时,能够用any代替“0.0.0.0 255.255.255.255”。ip
Router(config)# access-list access-list-number { permit| deny } protocol { source source-wildcard destination destination-wildcard } [ operator operan ] //建立ACL Router(config)# no access-list access-list-number //删除ACL Router(config-if)# ip access-group access-list-number {in |out} //将ACL应用于接口 Router(config-if)# no ip access-group access-list-number {in |out} //在接口上取消ACL的应用
Router(config)# access-list 101 permit ip 192.168.1.0 0.0.0.255 192.168.2.0 0.0.0.255 Router(config)# access-list 101 deny ip any any Router(config)# access-list 101 deny tcp 192.168.1.0 0.0.0.255 host 192.168.2.2 eq 21 Router(config)# access-list 101 permit ip any any Router(config)# access-list 101 deny icmp 192.168.1.0 0.0.0.255 host 192.168.2.2 echo Router(config)# access-list 101 permit ip any any
Router(config)# ip access-list { standard | extended } access-list-name //建立ACL,standard标准命名ACL,extended配置标准命名ACL Router(config-std-nacl)# [ Sequence-Number] { permit | deny } source [ source-wildcard] //扩展命名ACL,Sequence-Number决定ACL语句在ACL列表中的位置 Router(config-ext-nacl)# [ Sequence-Number ] { permit| deny } protocol { source source-wildcard destination destination-wildcard } [ operator operan ] //配置扩展命名ACL Router(config)# no ip access-list { standard lextended } access-list-name //删除整组ACL Router(config-std-nacl)# no Sequence-Number //删除组中单一ACL语句,建议这种方法 Router(config-std-nacl)#no permit host ACL语句 //删除组中单一ACL语句 Router(config-if)# ip access-group access-list-name {in |out} //将ACL应用于接口 Router(config-if)# no ip access-group access-list-name {in |out} //在接口上取消ACL的应用 Router#show access-lists //查看ACL配置信息
Router(config)# ip access-list standard cisco //标准命名ACL Router(config-std-nacl)#15 permit host 192.168.2.1 Router(config)# ip access-list extended cisco //扩展命名ACL Router(config-ext-nacl)# deny tcp 192.168.1.0 0.0.0.255 host 192.168.2.2 eq 21 Router(config-ext-nacl)# permit ip any any