01
—
标准ACL语法
Access-list 访问控制列表号 {deny | permit} 源网络地址 [通配符掩码]
(1)标准ACL的号码范围是1-99。
(2){}是必选项, deny表示如果满足条件,数据包则被丢弃;permit表示如果满足条件,数据包则被允许通过该接口。
(3)通配符掩码(反掩码)
0表示"检查相应的位“
1表示“不检查相应位”。
子网掩码按位求反就可以得到相应的通配符掩码。
(4)any:允许源地址为任意的IP地址的数据包通过。
access-list 1 permit any等价于下面的命令:
access-list 1 permit 0.0.0.0 255.255.255.255
(5)host:仅允许单台主机的流量通过。
如下列命令:
access-list 1 permit host 192.168.100.100
注意:
访问控制列表末尾隐含存在一条拒绝所有流量的指令,所以,访问控制列表至少要有一条允许数据通过的命令语句。
标准访问控制列表要应用在靠近目标端
标准的访问控制列表只能针对源地址进行控制,提供基本的过滤功能,用1~99来作为列表的标识。配置标准访问控制列表分为两个步骤,第一步是创建列表,第二步是应用列表。
02
—
扩展ACL的语法
access-list 访问控制列表号 {deny|permit} 协议类型
源网络地址 [通配符掩码] 目的网络地址 [通配符掩码] [运算符 端口号]
协议类型包括IP、TCP、UDP、ICMP、OSPF等。
运算符有lt、gt、eq、neq,分别表示"小于、大于、等于、不等于"。
ICMP协议:是一种面向无连接的协议,用于传输出错报告控制信息。
传输控制协议TCP:是一种面向连接的、可靠的、基于字节流的传输层通信协议,
UDP 为应用程序提供了一种无需建立连接就可以发送封装的 IP 数据包的方法。
关键点2:扩展访问控制列表要应用在靠近源端
扩展访问控制列表功能更强大,同时使用源地址和目标地址作为过滤条件,使用协议类型、端口号、时间范围来过滤,可以更加精细地控制通信量。用100-199来作为列表的标识。
03
在接口上应用ACL
ip access-group 访问控制列表号 {in|out}
(1) in:数据包从外部进入设备。
(2) out:数据包从设备流向外部。
04
客户端访问网页的数据传输协议使用了TCP协议
TCP协议是传输层上可靠的传输控制协议,具有完善的重传机制和控制机制。
TCP是传输层协议。如果TCP的数据部分直接承载数据,则通常是TCP数据。
此时,TCP数据包中的端口号设置为0。
如果TCP数据包中的端口号未设置为0,则其将与上述应用层相关的协议相对应。
TCP协议上有很多应用层协议,例如FTP协议,端口分别为20和21;
HTTP协议,端口为80,依此类推。
05
DNS用的是TCP协议还是UDP协议
1.DNS区域传输的时候使用TCP协议:
(1).辅域名服务器会定时(一般3小时)向主域名服务器进行查询以便了解数据是否有变动。
如有变动,会执行一次区域传送,进行数据同步。区域传送使用TCP而不是UDP,
因为数据同步传送的数据量比一个请求应答的数据量要多得多。
(2).TCP是一种可靠连接,保证了数据的准确性。
2.域名解析时使用UDP协议:
客户端向DNS服务器查询域名,一般返回的内容都不超过512字节,用UDP传输即可。
不用经过三次握手,这样DNS服务器负载更低,响应更快。
理论上说,客户端也可以指定向DNS服务器查询时用TCP,
但事实上,很多DNS服务器进行配置的时候,仅支持UDP查询包。
06
访问控制列表只对穿越路由器的流量起作用
07
创建访问控制列表语句的前后顺序不能颠倒
创建列表时语句的前后顺序不能颠倒,因为列表的匹配顺序是从上往下的,最有限制性的语句应该放在首行,如果找到一条匹配,就执行操作并不再往下继续查找。如果两条语句放在前或后都不影响结果,一般把使用较多的那条放在前面,这样可以减少路由器的查找时间,提高路由器的工作效率。
08
访问控制列表的最后一句隐含的是拒绝所有
在访问控制列表里最后一句隐含的是“全部拒绝”,因此在列表至少要有一条“允许”语句,否则列表将自动设成禁止所有通信量。
09
删除访问控制列表时一次性删除整个列表
访问控制列表建立后,任何在列表中增加的语句都被放在表的末端,用户不能有选择地增加或删除语句。只能一次性删除整个访问控制列表,命令是
No access-list access-list-number
显然,当访问控制列表很大时,维护是十分麻烦的。我们可以将表的内容剪切,然后粘贴成文本文档来编辑,命名访问列表和扩展访问控制列表的增强编辑功能可用于克服这一缺点。
10
一个访问控制列表可用于不同的端口
一个访问控制列表可用于同一个路由器(三层交换机)的许多不同的端口,并不需要对每个需要它的端口定义相同的访问控制列表。如果不给端口提供任何访问控制列表,或者提供一个未定义的访问控制列表,默认情况下它将传递所有通信量。如果想让访问控制列表对两个方向都有用,则在端口调用访问控制列表两次,一个用于入站,一个用于出站。对于每个协议的每个接口的每个方向,只能有一个访问控制列表。
发表评论