ACL是应用在路由器接口的指令列表,通过这些指令,来告诉路由器哪些数据包可以接收,哪些数据包需要拒绝,基本原理就是:ACL使用包过滤技术,在路由器上读取OSI七层模型的第三层及第四层包头中的信息,如源地址、目的地址、源端口、目的端口等,根据预先定义好的规则,对包进行过滤,从而达到访问控制的目的。
ACL有三种类型:
标准ACL:根据数据包的源IP地址来允许或拒绝数据包,标准ACL的访问列表控制号是1~99。
扩展ACL:根据数据包的源IP地址、目的IP地址、指定协议、端口和标志来允许或拒绝数据包,扩展ACL的访问控制列表号是100~199。
命名ACL允许在标准ACL和扩展ACL中使用名称代替表号。(个人感觉扩展命名ACL规则更为灵活,若没耐心,可直接看文章最后的扩展命名ACL规则的语法)。
创建标准ACL语法:
Router(config)#access-list 1~99 { permit | deny } 源网段地址或网段(若源地址为主机,则在地址前面需要加“host”;若源地址为网段,则要在网段地址后面加反掩码,如/24的反掩码就是0.0.0.255。
例如:Router(config)#access-list 1 per