思科:
出:已经过路由器的处理,正离开路由器的数据包。
入:已到达路由器接口的数据包。将被路由器处理。
出入两个方向,应用在端口上面。acl做顺序匹配,匹配即停止,不匹配则使用默认规则的方式来过滤数据包。
标准访问控制列表:根据数据包的源IP地址来允许或拒绝数据包,标准访问控制列表的访问控制列表号是1-99。
创建标准ACL的语法如下:
Router(config)#access-list access-list-number {permit|deny} source [souce-wildcard]
下面是命令参数的详细说明
access-list-number:访问控制列表号,标准ACL取值是1-99。
permit|deny:如果满足规则,则允许/拒绝通过。
source:数据包的源地址,可以是主机地址,也可以是网络地址。
source-wildcard:通配符掩码,也叫做反码,即子网掩码去反值。如:正常子网掩码255.255.255.0取反则是0.0.0.255。
删除已建立的标准ACL语法如下:
Router(config)#no access-list access-list-number
列如:创建一个ACL允许192.168.1.0网段的所有主机。
Router(config)#access-list 1 permit 192.168.1.0 0.0.0.255
列如:创建一个ACL允许某个主机。
Router(config)#access-list 1 permit host 10.0.0.1
列如:创建一个默认ACL拒绝所有主机访问。
Router(config)#access-list 1 deny any
注意:上述中的关键字host可以指定一个主机地址,而不用写子网反码,而any可以代表所有主机。
扩展访问控制列表:根据数据包的源IP地址,目的IP地址,指定协议,端口和标志,来允许或拒绝数据包。扩展访问控制列表的访问控制列表号是100-199
创建扩展的ACL语法如下:
Router(config)#access-list access-list-number {permit|deny} protocol {source souce-wildcard destination destination-wildcard} [operator operan]
下面是命令参数的详细说明
access-list-number:访问控制列表号,扩展ACL取值是100-199。
permit|deny:如果满足规则,则允许/拒绝通过。
protocol:用来指定协议的类型,如IP,TCP,UDP,ICMP等。
source、destination:源和目的,分别用来标示源地址和目的地址。
souce-wildcard、destination-wildcard:子网反码,souce-wildcard是源反码,destination-wildcard是目标反码。
operator operan:lt(小于)、gt(大于)、eq(等于)、neq(不等于)一个端口号。
删除已建立的扩展ACL语法如下:
Router(config)#no access-list access-list-number
列如:允许192.168.1.0/24访问192.168.2.0/24,而拒绝其他所有主机访问。
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
列如:拒绝网络192.168.1.0/24访问FTP服务器192.168.2.100/24,而允许其他主机访问。
Router(config)#access-list 102 deny tcp 192.168.1.0 0.0.0.255 host 192.168.2.100 eq 21
Router(config)#access-list 102 permit ip any any
列如:禁止网络192.168.1.0/24中的主机ping同服务器192.168.2.200/24,而允许其它主机访问。
Router(config)#access-list 103 deny icmp 192.168.1.0 0.0.0.255 host 192.168.1.200 echo
Router(config)#access-list 103 permit ip any any
将命名ACL应用于接口语法如下:
Router(config-if)#ip access-group aaccess-list-name {in|out}
取消命名ACL的应用语法如下:
Router(config-if)#no ip access-group aaccess-list-name {in|out}