特米网 > 科技 >
CISCO路由器中的access-list(访问列表)最基本的有两种,分别是标准访问列表和扩展访问列表,二者有什么区别主如果前者是基于目的地址的数据包过滤,而后者是基于目的地址、源地址和互联网协议及其端口的数据包过滤。
(1)标准型IP访问列表的格式
---- 标准型IP访问列表的格式如下:
---- access-list[list number][permit|deny][source address]---- [address][wildcard mask][log]
---- 下面讲解一下标准型IP访问列表的关键词和参数。第一,在access和list这2个关键词之间需要有一个连字符"-";第二,list number的范围在0~99之间,这表明该access-list语句是一个普通的规范型IP访问列表语句。由于对于Cisco IOS,在0~99之间的数字指示出该访问列表和IP协议有关,所以list number参数具备双重功能: (1)概念访问列表的操作协议; (2)公告IOS在处置access-list语句时,把相同的list number参数作为同一实体对待。正如本文在后面所讨论的,扩展型IP访问列表也是通过list number(范围是100~199之间的数字)而表现其特征的。因此,当运用访问列表时,还需要补充如下要紧的规则: 在需要创建访问列表的时候,需要选择合适的list number参数。
(2)允许/拒绝数据包通过
---- 在标准型IP访问列表中,用permit语句可以使得和访问列表项目匹配的数据包通过接口,而deny语句可以在接口过滤掉和访问列表项目匹配的数据包。source address代表主机的IP地址,借助不同掩码的组合可以指定主机。
---- 为了更好地知道IP地址和通配符掩码有哪些用途,这里举一个例子。假设你的公司有一个分支机构,其IP地址为C类的192.46.28.0。在你的公司,每一个 分支机构都需要通过总部的路由器访问Internet。要达成这点,你就能用一个通配符掩码 0.0.0.255。由于C类IP地址的最后一组数字代表主机,把它们都置1即允许总部访问互联网上的每一台主机。因此,你的规范型IP访问列表中的 access-list语句如下:
---- access-list 1 permit 192.46.28.0 0.0.0.255
---- 注意,通配符掩码是子网掩码的补充。因此,假如你是互联网高手,你可以先确定子网掩码,然后把它转换成可应用的通配符掩码。这里,又可以补充一条访问列表的规则5。(3)指定地址
---- 假如你想要指定一个特定的主机,可以增加一个通配符掩码0.0.0.0。比如,为了让来自IP地址为192.46.27.7的数据包通过,可以用下列语句:
---- Access-list 1 permit 192.46.27.7 0.0.0.0
---- 在Cisco的访问列表中,用户除去用上述的通配符掩码0.0.0.0来指定特定的主机外,还可以用"host"这一关键词。比如,为了让来自IP地址为192.46.27.7的数据包通过,你可以用下列语句:
---- Access-list 1 permit host 192.46.27.7
---- 除去可以借助关键词"host"来代表通配符掩码0.0.0.0外,关键词"any"可以作为源地址的缩写,并代表通配符掩码0.0.0.0 255.255.255.255。比如,假如期望拒绝来自IP地址为192.46.27.8的站点的数据包,可以在访问列表中增加以下语句:
---- Access-list 1 deny host 192.46.27.8---- Access-list 1 permit any
---- 注意上述2条访问列表语句的次序。第1条语句把来自源地址为192.46.27.8的数据包过滤掉,第2条语句则允许来自任何源地址的数据包通过访问列表 用途的接口。假如改变上述语句的次序,那样访问列表将不可以够阻止来自源地址为192.46.27.8的数据包通过接口。由于访问列表是按从上到下的次序执 行语句的。如此,假如第1条语句是:
---- Access-list 1 permit any
---- 的话,那样来自任何源地址的数据包都会通过接口。
(4)拒绝的奥秘---- 在默认状况下,除非明确规定允许通过,访问列表一直阻止或拒绝所有数据包的通过,即事实上在每一个访问列表的最后,都隐含有一条"deny any"的语句。假设大家用了前面创建的规范IP访问列表,从路由器的角度来看,这条语句的实质内容如下:
---- access-list 1 deny host 192.46.27.8---- access-list 1 permit any---- access-list 1 deny any
---- 在上述例子里面,因为访问列表中第2条语句明确允许任何数据包都通过,所以隐含的拒绝语句不起用途,但实质状况并不一直这样。比如,假如期望来自源地址为 192.46.27.8和192.46.27.12的数据包通过路由器的接口,同时阻止其他所有数据包通过,则访问列表的代码如下:---- access-list 1 permit host 192.46.27.8---- access-list 1 permit host 192.46.27.12
---- 注意,由于所有些访问列表会自动在最后包含该语句.
---- 顺便讨论一下标准型IP访问列表的参数"log",它起日志有哪些用途。一旦访问列表用途于某个接口,那样包含关键词"log"的语句将记录那些满足访问列表 中"permit"和"deny"条件的数据包。第一个通过接口并且和访问列表语句匹配的数据包将立即产生一个日志信息。后续的数据包依据记录日志的方 式,或者在控制台上显示日志,或者在内存中记录日志。通过Cisco IOS的控制台命令可以选择记录日志方法。
扩展型IP访问列表
---- 扩展型IP访问列表在数据包的过滤方面增加了不少功能和灵活性。除去可以基于源地址和目的地址过滤外,还可以参考协议、源端口和目的端口过滤,甚至可以利 用各种选项过滤。这类选项可以对数据包中某些域的信息进行读取和比较。扩展型IP访问列表的通用格式如下:
---- access-list[list number][permit|deny]---- [protocol|protocol key word]---- [source address source-wildcard mask][source port]---- [destination address destination-wildcard mask]---- [destination port][log options]
---- 和标准型IP访问列表类似,"list number"标志了访问列表的种类。数字100~199用于确定100个惟一的扩展型IP访问列表。"protocol"确定需要过滤的协议,其中包含IP、TCP、UDP和ICMP等等。
---- 假如大家回顾一下数据包是怎么样形成的,大家就会知道为何协议会干扰数据包的过滤,尽管有时如此会产生不良反应。图2表示了数据包的形成。请注意,应用数据 一般有一个在传输层增加的前缀,它可以是TCP协议或UDP协议的头部,如此就增加了一个指示应用的端口标志。当数据流入协议栈之后,互联网层再加上一个包 含地址信息的IP协议的头部。
因为IP头部传送TCP、UDP、路由协议和ICMP协议,所以在访问列表的语句中,IP协议的级别比其他协议更为要紧。但,在有的应用中,你可能需要改变这样的情况,你需要基于某个非IP协议进行过滤
---- 为了更好地说明,下面列举2个扩展型IP访问列表的语句来讲明。假设大家期望阻止TCP协议的流量访问IP地址为192.78.46.8的服务器,同时允许其他协议的流量访问该服务器。那样以下访问列表语句能满足这一需要吗?---- access-list 101 permit host 192.78.46.8---- access-list 101 deny host 192.78.46.12
---- 回答是相反的。第一条语句允许所有些IP流量、同时包含TCP流量通过指定的主机地址。如此,第二条语句将不起任何用途。
- 上一篇:笔记本连接交换机没办法上网如何解决?
- 下一篇:没有了
猜你喜欢
- 热点排行
- 热门推荐
- 热门tag