输入您的问题查找答案
   
 
相关文库文档
更多相关文库文档 >>
联系客服
在线技术支持
客户服务热线:

电话销售热线:

服务时间(法定节假日除外):
家庭产品:
周一至周六:9:00-18:00
商用产品:
周一至周五:9:00-18:00
商用网络动态

与 NETGEAR 监控专用交换机亲密接触

选择德才兼备的 PoE 交换机

NETGEAR 交换机助力聊城第二人民医院智能监控建设

更多动态 >>

网件文库 » 交换机产品  »  XCM8800 系列交换机 ACL 基础介绍
XCM8800 系列交换机 ACL 基础介绍

编号:30212       来自:NetGear       更新日期:2018-04-10       访问数量:6523

文档目的:

  1. XCM8800系列交换机的ACL编写方式与其它的NETGEAR交换机存在很大差异。本文档对ACL的功能与编写作出应用上的说明。
  2. ACL除了能实现基本的包的过滤和转发决定(如策略路由等)外,它也是实现多种其它
    功能与特性的基础要素。多种基于ACL的功能与特性包括:
    • 记录次数(匹配ACL的次数)
    • 记录与查看包头部
    • 镜像流量到一个监控端口,为具体的监控流量作匹配
    • 将包送到一个QoS文件,为需要QoS的前期流量作匹配
    • 计量匹配ACL的包去控制带宽

文档适用性:

本文主要针对XCM8800系列的三层的ACL设置,其它IPv6,二层ACL此文档或会有所涉及,但不作具体说明。

ACL的建立具有两种方法

一、基于Policy的ACL:

建立一个ACL的策略并将ACL的策略应用到一个端口集中列表,一个VLAN或者所有的端口。

步骤1:

ACL 策略建立

#edit policy

创建一个策略并给策略起一个名字,系统将创建一个
policyname.pol的文件,“<>”指整体可更改字段。

~

进入到类似于LINUX 的VI编辑器,进行编写程序模式。输入“I”可以开始编写

Entry {

给ACL起一个名字,“{”对应最后一行条目的“}”。“{}”
为一种书写格式,“{”和“}”必须为一对使用,在“{}”
中表明设备需要的各种属性项。

if ;
;
---
__

match-conditions里面填写你需要匹配的属性项。以下会
有部分说明,切记“;”需要跟在属性项后。
match-conditions可以有多个,相互间是与关系。

then {;
;
---
----}

action 里面填写匹配后的动作属性项,action-modifiers
里面填写将动作修改后的属性项。
action-modifiers可以有多个,相互间是顺序执行关系。

对应ACL名字后面的“{”。

ESC

退出编辑模式。

:wq/:q!

保存文档并退出/不保存文档直接退出,退回到“#”模式。

 

Match-conditionsnt 属性项(部分):

Ethernet-type

Number指 IP:0x0800 8021Q:0x8100 IPv6:0x86DD

ethernet-source-address

以太网源地址,其中mac-address和mask格式为XX:XX:XX:XX:XX:XX/YY:YY:YY:YY:YY:YY 或XX:XX:XX:XX:XX:XX mask YY:YY:YY:YY:YY:YY,mask为可选项,默认mask 为FF:FF:FF:FF:FF:FF

Ethernet-destination-address

以太网目的地址,其中mac-address和mask格式为XX:XX:XX:XX:XX:XX/YY:YY:YY:YY:YY:YY 或XX:XX:XX:XX:XX:XX mask YY:YY:YY:YY:YY:YY,mask为可选项,默认mask 为FF:FF:FF:FF:FF:FF

Protocol

Number指tcp :6,udp:17,igmp:2,icmp:1 ip:4等等

Source-address

IP源地址与掩码 格式:X.X.X.X/X

Destination-address

IP目的地址与掩码 格式:X.X.X.X/X

Source-port or

源端口 number格式:X 范围:1~65535
number range格式:X-X范围:1~65535

destination-port or

目的端口 number格式:X范围:1~65535
number range格式:X-X范围:1~65535

其它选项请参考官方文档链接:http://support.netgear.cn/doucument/Detail.asp?id=2108 XCM8800系列用户手册中列表31 (Table 31)。

 

Actions

Permit

Action中的允许动作,是默认行为。

Deny

Action 中的丢弃动作。

Action Modifiers

Count

递增次数(匹配ACL的次数)countname 给一个名字以方便显示匹配数使用。查看次数的命令为:
Show access-list couter [][any|ports|vlan ][ingress|egress]

Log/log-raw

记录包头部/以十六进制格式记录包头部

Meter

依据流量的速率产生动作。

Mirror

发送一份包的副本(拷贝)到监控(镜像)端口(只在入站方向)

Mirror-cpu

发送一份包的副本(拷贝)到CPU,用于产生LOG。

Qosprofile

转发包到具体指定的QoS 文档

Traffic-queue

放置流量到具体指定的流量队列

Redirect

转发包到具体的IPv4地址(用于策略路由)。

Replace-dscp

从已关联的QoS文档中替换掉DSCP的值。

Replace-dot1p

从已关联的QoS文档中替换掉QoS的值

Replace-ethernet-destinaton
-address

替换包的目的MAC地址,此应用只用于2层转发流量

Redirect-port

重写转发决定且改变已使用的出站端口。

步骤2:
查看策略是否已写成功命令:# check policy  
当编写完policy时,需要检查policy语法是否已写正确,当屏幕回显: “Policy file check successful.” 说明策略的语法已通过测试.
要注意的是:上面回显只代表书写语法正确,不代表在策略含义上已写对并能匹配到正确的流量。

步骤3:
将ACL的Policy应用到端口、VLAN、所有接口:
#configure access-list {any | ports | vlan
{ingress|egress
从端口上移除 ACL的Policy:
#unconfigure access-list {any | ports | vlan }{ingress | egress
注意:应用到VLAN的ACL情况等同于应用到所有的接口,而不是只应用到VLAN所包括的端口。

具体例子:
要求:

  1. 在XCM8800系列的交换机上建立一个ACL拒绝流量从源为10.203.134.0/24,端口是:190, 到目的主机:140.158.18.16/32,端口为:1200到1250的UDP流量。
  2. 放行其它流量。
  3. 在1:10端口入站方向(ingress)应用。
编辑 policy 时常用的命令

i

在初始光标位置前插入内容

a

在初始光标位置后插入内容

dd

删除当前行

yy

复制当前的行

p

粘贴行的复制

:w

保存文档

:q

没有改变Policy时退出

:q!

强制退出不管Policy有没有变化

:wq

保存Policy并退出

注:以上命令通过按ESC进行切换

#edit policy udpacl
entry comeonA {
If {
source-address 10.203.134.0/24;
destination-address 140.158.18.16/32;
protocol udp;
source-port 190;
destination-port 1200 – 1250;
}
then {
deny;
}
entry comeonB{
if {}
then{permit;}

编写要点:

  1. policy 和entry名字可以不一样,entry间的名字要求不一样。
  2. 上面的示例中使用到的“{}”只要成对出现即可,不需要考虑前后是否存在空格。
  3. 由于默认是禁止所有流量通行,需要在comeonB中放行其它流量。
  4. 将ACL应用在入站方向(ingress)上,要match所有流量只需要使用“if {}”即可,
    如果应用在出站方向(egress)上,match 所有流量需要使用“if {source-address 0.0.0.0/0}”
    上面的例子comeonB只应用到ingress 方向,所以采用“if {}”
  5. 在最后的“}”的下一行开始,每一行必须要带有“~”符号开始,将不需要的空行、空格或文字删除,这时才能在check policy udpacl中检查policy成功。

在全局模式下(“#”)对policy需要使用到的检查、查看、更名、删除policy的命令
#check policy           //policyname后面不需要加后缀名
例如: #check policy udpacl

查看所有或单个文件,包括policy:
#ls 或#ls suffix>           //后面需要加入后缀名(suffix)
例如:#ls udpacl.pol

更名一个文件或一个policy:
#mv suffix> suffix>            //将前一个文件名改为后一个文件名 ,且要加后缀名。
例 如:#mv udpacl.pol www.pol

删除一个文件或一个policy:
#rm suffix>            //删除www的policy,且要加后缀名。此处只作命令说明,对上面所举例子不作实际删除
例如:#rm www.pol

应用ACL到接口
#configure access-list udpacl ports 1:10 ingress

最后不要忘记保存所有配置,包括ACL列表的应用
#save

二、动态ACL:

动态ACL的建立直接使用CLI界面,它的使用相似于policy的ACL的表达方式,能完成相同的动作,简单且直观。多条的动态ACL可以被应用到一个接口上,条目应用的优先级别也可以被配置。动态ACL比policy 的ACL应用到接口有更高的优先级别,在理解XCM8800系列的交换机的ACL配置语法的情况下,一般更多会使用动态ACL。

表达方式:
#create access-list [non-permanent]

                   //表示ACL的名字,在动态ACL中必须是唯一的,但它可以和policy的ACL重名。
                   //表示的条件,等同于policy中的if{……},使用“;”分隔条件。
                    //表示的动作,等同于policy中的then{……},使用“;”分隔条件。
[non-permanent]                   //可选项,默认为永久保留。使用此命令后,save 保存配置后,动态ACL不被保留

应用动态ACL到接口:
configure access-list add [ [[first | last] {priority } {zone } ] | [[before | after] ] | [ priority {zone } ]] [ any | vlan | ports ] {ingress | egress}

first                 //在写入多条 ACL 时,作为第一条需要匹配的 ACL 列表在最前
last                   //在写入多条ACL时,作为最后一条需要匹配的ACL列表在最后
before                 //指定该ACL放置在某一条ACL之前,后面参数需要写入一条ACL的名字
after                   //指定该ACL放置在另一条ACL之后,后面的参数需要写入一条ACL的名字

从接口中移除动态ACL
configure access-list delete [ any | vlan | ports | all] {ingress | egress}

具体例子:
要求:对于ICMP协议的流量进行匹配,并统计数包数量并在管理端口上禁止PING入:

#create access-list icmp-echo “protocol icmp;icmp-type echo-request””deny;count echo”
以上条目解释:
icmp-echo                   //给动态ACL起名字,表明本ACL针对icmp的echo包。
“protocol icmp;                    //条件中的一个选项,表明需要匹配到的协议是ICMP,条件最前面用双引号,条件间用冒号分隔。
icmp-type echo-request;                    //条件中的另一个选项,ICMP的类型是 echo-request,条件间用冒号分隔,条件陈述完使用双引号结束状态。
“deny”                    //另一个双引号代表动作选项为deny,仍然需要使用双引号。默认最后为永久保存型。

将动态ACL应用到管理接口入站方向:
#configure access-list add “icmp-echo” vlan “Mgmt” ingress
以上条目解释:
add                    //增加一个条目
“icmp-echo”                    //表示动态ACL的名字,需要双引号
vlan                    //应用到的是管理VLAN
“Mgmt”                   //管理VLAN的名字是Mgmt,需要双引号

查看动态ACL丢弃ICMP包的数目
#show access-list dynamic counter

移除动态ACL
#configure access-list del “icmp-echo” vlan “Mgmt”
#del access-list “icmp-echo”

清除ACL中ICMP包的数目
#clear access-list dynamic counter

最后不要忘记保存所有配置,包括ACL列表的应用
#save

 

序号 no.

日期 date

作者 author

摘要 summary

1

2012-08-29

Sam Li

文档创建

2

2013-06-28

Sam Li

文档修改

 
  
 
以上内容是否为您所需要的答案?
以上内容是否清晰、简明和易于理解的?
您是如何知道网件社区的?