• 產品與解決方案
  • 行業解決方案
  • 服務
  • 支持
  • 合作夥伴
  • 關於我們

H3C S5100-SI[EI]係列以太網交換機 命令手冊-Release 220X係列(V1.05)

19-ACL命令

本章節下載  (231.34 KB)

19-ACL命令


1 ACL命令

1.1  ACL命令

1.1.1  acl

【命令】

acl number acl-number [ match-order { auto | config } ]

undo acl { all | number acl-number }

【視圖】

係統視圖

【參數】

all:所有的ACL(Access Control List,訪問控製列表)。

number acl-number:ACL序號,取值範圍為:

l              2000~2999:表示基本ACL。

l              3000~3999:表示高級ACL(3998與3999是係統為集群管理預留的編號,用戶無法配置)。

l              4000~4999:表示二層ACL。

match-order:指定對該ACL規則的匹配順序,匹配順序如下:

l              auto:按照“深度優先”的順序進行規則匹配。

l              config:按照用戶配置規則的先後順序進行規則匹配。

關於autoconfig這兩種匹配順序的詳細介紹請參見“ACL操作”中的描述。

需要注意的是,在定義二層ACL時沒有match-order參數,二層ACL的匹配順序為config

【描述】

acl命令用來定義ACL,並進入相應的ACL視圖。undo acl命令用來刪除指定的ACL,或者刪除全部ACL。

缺省情況下,ACL規則的匹配順序為config

用戶也可以通過本命令修改一個已經存在的ACL的匹配順序,但必須在ACL中沒有規則的時候修改,對已經包含規則的ACL是無法修改其匹配順序的。

進入相應的ACL視圖之後,可以使用rule命令增加此ACL的規則。

相關配置可參考命令rule

【舉例】

# 定義基本ACL 2000,並配置其匹配順序為“深度優先”。

<Sysname> system-view

System View: return to User View with Ctrl+Z.

[Sysname] acl number 2000 match-order auto

# 為基本ACL 2000創建三條源IP地址範圍(反掩碼中“0”位的數量)不同的規則。

[Sysname-acl-basic-2000] rule 1 permit source 1.1.1.1 0.255.255.255

[Sysname-acl-basic-2000] rule 2 permit source 2.2.2.2 0.0.255.255

[Sysname-acl-basic-2000] rule 3 permit source 3.3.3.3 0.0.0.255

# 使用display acl命令查看基本ACL 2000的配置信息。

[Sysname-acl-basic-2000] display acl 2000

Basic ACL  2000, 3 rules, match-order is auto

Acl's step is 1

 rule 3 permit source 3.3.3.0 0.0.0.255

 rule 2 permit source 2.2.0.0 0.0.255.255

 rule 1 permit source 1.0.0.0 0.255.255.255

以上信息表明,交換機按照“深度優先”的原則對基本ACL 2000內的規則進行排序,即按照規則反掩碼中“0”位的數量由多到少的順序排列。

1.1.2  description

【命令】

description text

undo description

【視圖】

基本ACL視圖/高級ACL視圖/二層ACL視圖

【參數】

text:ACL的描述信息,取值範圍為1~127個字符,可以包含空格和特殊字符。

【描述】

description命令用來定義ACL的描述信息,描述該ACL的具體用途、應用於哪些端口等信息,方便用戶對ACL進行區分和識別。undo description命令用來刪除ACL的描述信息。

缺省情況下,ACL沒有描述信息。

S5100-SI係列交換機的Release2201及以前版本均不支持在二層ACL視圖下配置此命令。

 

【舉例】

# 定義高級ACL 3000的描述信息為“This acl is used for filtering all HTTP packets”。

<Sysname> system-view

System View: return to User View with Ctrl+Z.

[Sysname] acl number 3000

[Sysname-acl-adv-3000] description This acl is used for filtering all HTTP packets

# 使用display acl命令查看高級ACL 3000的配置信息。

[Sysname-acl-adv-3000] display acl 3000

Advanced ACL  3000, 0 rule

This acl is used for filtering all HTTP packets

Acl's step is 1

# 刪除高級ACL 3000的描述信息。

[Sysname-acl-adv-3000] undo description

1.1.3  display acl

【命令】

display acl { all | acl-number }

【視圖】

任意視圖

【參數】

all:所有的ACL。

acl-number:指定ACL的序號,取值範圍為2000~4999。

【描述】

display acl命令用來顯示ACL的配置信息。

需要注意的是,如果用戶在配置ACL的時候指定了match-order參數,則在使用display acl命令時,顯示的是交換機按照auto(深度優先)或config(配置順序)對ACL中的規則進行排序後的結果。

【舉例】

# 顯示基本ACL 2000的詳細配置信息。

<Sysname> display acl 2000

Basic ACL  2000, 1 rule

Acl's step is 1

 rule 0 permit

表1-1 display acl命令顯示信息描述表

字段

描述

Basic ACL  2000

這個ACL屬於基本ACL,序號為2000

1 rule

這個基本ACL包含1條規則

Acl's step is 1

這個基本ACL的規則序號的步長值為1

 

1.1.4  display acl remaining entry

【命令】

display acl remaining entry

【視圖】

任意視圖

【參數】

【描述】

display acl remaning entry命令用來顯示設備剩餘的ACL表項資源。

用戶可以根據該命令的輸出信息來了解某類型的ACL規則消耗的表項資源數,確認ACL無法下發的原因是否與表項資源耗盡有關。

隻有H3C S5100-EI係列以太網交換機支持本命令。

 

【舉例】

# 顯示設備剩餘的ACL表項資源。

<Sysname> display acl remaining entry

  Resource  Total   Reserved  Configured  Remaining   Start     End

  Type      Number  Number    Number      Number   Port Name  Port Name

--------------------------------------------------------------------------

RULE/MASK    1024       64          1         959     GE1/0/1   GE1/0/24

  COUNTER      32        0          0          32     GE1/0/1   GE1/0/24

    METER     256        0          0         256     GE1/0/1   GE1/0/24

表1-2 display acl remaining entry命令顯示信息描述表

字段名

描述

Resource Type

ACL表項資源類型

l      RULE/MASK:規則資源,即可以下發的rule數量

l      CONUTER:流量統計資源,即可以下發的traffic-statistics數量

l      METER:流限速資源,即可以下發的traffic-limit數量

Total Number

ACL表項資源的總數

Reserved Number

初始化時係統ACL用去的資源數目

Configured Number

用戶定義的ACL占用的資源數目

Remaining Number

剩餘的ACL資源數目

Start Port Name

End Port Name

該表項所對應的起始端口號和結束端口號

 

1.1.5  display packet-filter

【命令】

display packet-filter { global | interface interface-type interface-number | port-group [ group-id ] | unitid unit-id | vlan [ vlan-id ] }

【視圖】

任意視圖

【參數】

global:表示顯示全局包過濾的應用信息。

interface interface-type interface-number:端口類型和端口編號。表示顯示指定端口的包過濾的應用信息。

port-group group-id:端口組編號。表示顯示指定端口組的包過濾的應用信息。

unitid unit-idUnit ID,取值隻能為1。表示顯示設備上的包過濾的應用信息。

vlan vlan-id:VLAN編號。表示顯示指定VLAN上的包過濾的應用信息。

【描述】

display packet-filter命令用來顯示包過濾的應用信息。

l    S5100-SI係列交換機的Release2201及以前版本均不支持此命令。

l    S5100-SI係列交換機不支持端口組,因此不支持port-group group-id參數。

 

【舉例】

# 顯示交換機上的包過濾的應用信息。

<Sysname> display packet-filter unitid 1

GigabitEthernet1/0/1

 Inbound:

 Acl 2000 rule 0  running

表1-3 display packet-filter命令顯示信息描述表

字段

描述

GigabitEthernet1/0/1

應用包過濾的端口

Inbound

過濾方向為入方向

Acl 2000 rule 0

過濾規則為基本ACL 2000的0號規則

running

規則的下發狀態,包含以下兩種:

l      running:表示激活

l      not running:表示沒有激活,通常是由於此規則引用的時間段不生效所致

 

1.1.6  display time-range

【命令】

display time-range { all | time-name }

【視圖】

任意視圖

【參數】

all:所有的時間段。

time-name:為時間段的名稱,以英文字母a~z或A~Z為起始字母的字符串,取值範圍為1~32個字符。

【描述】

display time-range命令用來顯示時間段的配置和狀態,當前處於激活狀態的時間段將顯示Active,處於非激活狀態的時間段將顯示Inactive。

相關配置可參考命令time-range

【舉例】

# 顯示所有的時間段。

<Sysname> display time-range all

Current time is 17:01:34 May/21/2007 Monday

 

Time-range : tr ( Active )

 12:00 to 18:00 working-day

 

Time-range : tr1 ( Inactive )

 From 12:00 Jan/1/2008 to 12:00 Jun/1/2008

表1-4 display time-range命令顯示信息描述表

字段

描述

Current time is 17:01:34 May/21/2007 Monday

係統的當前時間

Time-range

時間段的名稱

Active

時間段的狀態,包含以下兩種:

l      Active:表示此時間段處於激活狀態,已經生效

l      Inactive:表示此時間段處於非激活狀態,沒有生效

12:00 to 18:00 working-day

周期時間段,範圍為工作日的12點到18點

From 12:00 Jan/1/2008 to 12:00 Jun/1/2008

絕對時間段,範圍為2008年1月1日12點到2008年6月1日12點

 

1.1.7  packet-filter

【命令】

packet-filter inbound acl-rule

undo packet-filter inbound acl-rule

【視圖】

係統視圖/以太網端口視圖/端口組視圖(S5100-SI係列不支持端口組視圖)

【參數】

inbound:表示對接收的數據包進行過濾。

acl-rule:應用的ACL規則,可以是多種ACL的組合。組合方式如表1-5所示。

表1-5 組合應用ACL的方式

組合方式

acl-rule的形式

單獨應用一個IP型ACL(基本ACL或高級ACL)中的所有規則

ip-group acl-number

單獨應用一個IP型ACL(基本ACL或高級ACL)中的一條規則

ip-group acl-number rule rule-id

單獨應用一個二層ACL中的所有規則

link-group acl-number

單獨應用一個二層ACL中的一條規則

link-group acl-number rule rule-id

同時應用IP型ACL(基本ACL或高級ACL)中一條規則和二層型ACL的一條規則

ip-group acl-number rule rule-id link-group acl-number rule rule-id

 

ip-group acl-number:表示基本或高級ACL序號,取值範圍為2000~3999。

link-group acl-number:表示二層ACL序號,取值範圍為4000~4999。

rule rule-id:ACL規則編號,取值範圍為0~65534。如果不指定規則編號則表示ACL中的所有規則。

【描述】

packet-filter命令用來在全局、端口或端口組上應用ACL,對數據包進行過濾。undo packet-filter命令用來取消ACL在全局、端口或端口組上的應用。

l    S5100-SI係列交換機的Release2201及以前版本均不支持此命令。

l    S5100-SI係列交換機不支持端口組,因此不支持在端口組上應用ACL。

 

【舉例】

# 在端口GigabitEthernet1/0/1上應用基本ACL 2000中的所有規則,對端口接收的數據包進行過濾。假設基本ACL 2000已經創建並且相關規則已經存在。

<Sysname> system-view

System View: return to User View with Ctrl+Z.

[Sysname] interface GigabitEthernet1/0/1

[Sysname-GigabitEthernet1/0/1] packet-filter inbound ip-group 2000

[Sysname-GigabitEthernet1/0/1] quit

# 在端口GigabitEthernet 1/0/4上應用高級ACL 3000中的規則1和二層ACL 4000中的規則2,對端口接收的數據包進行過濾。假設高級ACL 3000和二層ACL 4000已經創建並且相關規則已經存在。

[Sysname] interface GigabitEthernet 1/0/4

[Sysname-GigabitEthernet1/0/4] packet-filter inbound ip-group 3000 rule 1 link-group 4000 rule 2

完成上述配置後,用戶可以使用display packet-filter命令來查看包過濾的應用信息。

1.1.8  packet-filter vlan

【命令】

packet-filter vlan vlan-id inbound acl-rule

undo packet-filter vlan vlan-id inbound acl-rule

【視圖】

係統視圖

【參數】

vlan-id:VLAN編號。

inbound:表示對接收的數據包進行過濾。

acl-rule:應用的ACL,可以是多種ACL的組合。組合方式說明如表1-5所示。

【描述】

packet-filter vlan命令用來在VLAN上應用ACL,對VLAN中的所有端口上的數據包進行過濾。undo packet-filter vlan命令用來取消ACL在VLAN上的應用。

l    S5100-SI係列交換機的Release2201及以前版本均不支持此命令。

l    VLAN下發的ACL隻能對帶有802.1Q標簽頭的報文生效。關於802.1Q標簽頭的詳細介紹請參見本手冊“VLAN”部分。

 

當用戶需要在某一個VLAN內的所有端口上應用同一條ACL時,可以使用packet-filter vlan命令來批量下發ACL,減少配置的工作量。

【舉例】

# 在VLAN 10上應用基本ACL 2000中的所有規則,對VLAN 10中的所有端口接收的數據包進行過濾。假設VLAN 10和基本ACL 2000已經創建並且相關規則已經存在。

<Sysname> system-view

System View: return to User View with Ctrl+Z.

[Sysname] packet-filter vlan 10 inbound ip-group 2000

完成上述配置後,用戶可以使用display packet-filter命令來查看包過濾的應用信息。

1.1.9  rule(基本ACL)

【命令】

rule [ rule-id ] { deny | permit } [ rule-string ]

undo rule rule-id [ fragment | source | time-range ]*

【視圖】

基本ACL視圖

【參數】

1. rule命令的參數

rule-id:ACL規則編號,取值範圍為0~65534。

deny:表示丟棄符合條件的數據包。

permit:表示允許符合條件的數據包通過。

rule-string:ACL規則信息,具體參數說明如表1-6所示。

表1-6 基本ACL規則信息

參數

類別

作用

說明

fragment

分片信息

定義規則僅對非尾片分片報文有效

-

source { sour-addr sour-wildcard | any }

源地址信息

定義基本ACL規則的源地址信息

sour-addr為指定源IP地址,采用點分十進製表示;sour-wildcard為目標子網掩碼的反碼,采用點分十進製表示;sour-wildcard可以為0,代表主機地址

any代表任意源IP地址

time-range time-name

時間段信息

定義規則生效的時間段

time-name:指定規則生效的時間段名稱,為1~32個字符的字符串,不區分大小寫,必須以英文字母a~z或A~Z開頭,為避免混淆,時間段的名字不可以使用英文單詞all

 

sour-wildcard為目標子網掩碼的反碼,采用點分十進製表示。例如,如果用戶想指定子網掩碼255.255.0.0,則需要輸入0.0.255.255。

 

2. undo rule命令的參數

rule-id:ACL規則編號,必須是一個已經存在的ACL規則編號。如果用戶不知道ACL規則的編號,可以使用display acl命令來查看。

fragment:刪除編號對應的ACL規則的對非尾片分片報文有效的設置。

source:刪除編號對應的ACL規則的源IP地址的設置。

time-range:刪除編號對應的ACL規則的時間段設置。

【描述】

rule命令用來定義ACL規則。undo rule命令用來刪除ACL規則或者規則中的某些屬性信息。

在刪除一條ACL規則時,如果不指定其他參數,交換機將這個ACL規則完全刪除;否則交換機隻刪除該ACL規則中相應的屬性信息。

需要注意的是:

l              當基本ACL的匹配順序為config時,用戶可以修改該ACL中的任何一條已經存在的規則,在修改ACL中的某條規則時,該規則中沒有修改到的部分仍舊保持原來的狀態;當基本ACL的匹配順序為auto時,用戶不能修改該ACL中的任何一條已經存在的規則,否則係統會提示錯誤信息。

l              在創建一條ACL規則的時候,用戶可以不指定規則的編號,交換機將自動為這個規則分配一個編號:如果此ACL中沒有規則,編號為0;如果此ACL中已有規則,編號為現有規則的最大編號+1;如果此ACL中現有規則的最大編號為65534,則係統會提示錯誤信息,此時用戶必須指定規則的編號才能創建成功。

l              新創建或修改後的規則不能和已經存在的規則相同,否則會導致創建或修改不成功,係統會提示該規則已經存在。

l              當基本ACL的匹配順序為auto時,新創建的規則將按照“深度優先”的原則插入到已有的規則中,但是所有規則對應的編號不會改變。

【舉例】

# 創建基本ACL 2000,定義規則1,禁止源IP地址為192.168.0.1的報文通過。

<Sysname> system-view

System View: return to User View with Ctrl+Z.

[Sysname] acl number 2000

[Sysname-acl-basic-2000] rule 1 deny source 192.168.0.1 0

[Sysname-acl-basic-2000] quit

# 創建基本ACL 2001,定義規則1,禁止非尾片分片報文通過。

[Sysname] acl number 2001

[Sysname-acl-basic-2001] rule 1 deny fragment

[Sysname-acl-basic-2001] quit

# 創建基本ACL 2002,定義規則1,禁止所有報文在時間段trname所表示的時間範圍內通過。

[Sysname] acl number 2002

[Sysname-acl-basic-2002] rule 1 deny time-range trname

完成上述配置後,用戶可以使用display acl命令查看ACL的配置信息。

1.1.10  rule(高級ACL)

【命令】

rule [ rule-id ] { deny | permit } protocol [ rule-string ]

undo rule rule-id  [ destination | destination-port | dscp | fragment | icmp-type | precedence | source | source-port | time-range | tos ]*

【視圖】

高級ACL視圖

【參數】

1. rule命令的參數說明

rule-id:ACL規則編號,取值範圍為0~65534。

deny:表示丟棄符合條件的數據包。

permit:表示允許符合條件的數據包通過。

protocol:IP承載的協議類型。用數字表示時,取值範圍為1~255;用名字表示時,可以選取gre(47)、icmp(1)、igmp(2)、ipipinip(4)、ospf(89)、tcp(6)、udp(17)。

rule-string:ACL規則信息,具體參數說明如表1-7所示。

表1-7 高級ACL規則信息

參數

類別

作用

說明

source { sour-addr sour-wildcard | any }

源地址信息

定義ACL規則的源地址信息

sour-addr sour-wildcard用來確定數據包的源地址,點分十進製表示;sour-wildcard可以為0,表示主機地址

any代表任意源地址

destination { dest-addr dest-wildcard | any }

目的地址信息

定義ACL規則的目的地址信息

dest-addr dest-wildcard用來確定數據包的目的地址,點分十進製表示;dest-wildcard可以為0,表示主機地址

any代表任意目的地址

precedence precedence

報文優先級

IP優先級

用數字表示時,取值範圍為0~7

tos tos

報文優先級

ToS優先級

用數字表示時,取值範圍為0~15

dscp dscp

報文優先級

DSCP優先級

用數字表示時,取值範圍為0~63

fragment

分片信息

定義規則僅對非尾片分片報文有效

-

time-range time-name

時間段信息

定義規則生效的時間段

time-name:指定規則生效的時間段名稱,為1~32個字符的字符串,不區分大小寫,必須以英文字母a~z或A~Z開頭,為避免混淆,時間段的名字不可以使用英文單詞all

 

sour-wildcarddest-wildcard為目標子網掩碼的反碼,點分十進製表示。例如,如果用戶想指定子網掩碼255.255.0.0,則需要輸入0.0.255.255。

 

如果選擇dscp關鍵字,除了直接輸入數值0~63外,用戶也可輸入如表1-8所示的關鍵字。

表1-8 DSCP關鍵字說明

關鍵字

DSCP值(十進製)

DSCP值(二進製)

af11

10

001010

af12

12

001100

af13

14

001110

af21

18

010010

af22

20

010100

af23

22

010110

af31

26

011010

af32

28

011100

af33

30

011110

af41

34

100010

af42

36

100100

af43

38

100110

be

0

000000

cs1

8

001000

cs2

16

010000

cs3

24

011000

cs4

32

100000

cs5

40

101000

cs6

48

110000

cs7

56

111000

ef

46

101110

 

如果選擇precedence關鍵字,除了直接輸入數值0~7外,用戶也可輸入如表1-9所示的關鍵字。

表1-9 IP Precedence關鍵字說明

關鍵字

IP Precedence(十進製)

IP Precedence(二進製)

routine

0

000

priority

1

001

immediate

2

010

flash

3

011

flash-override

4

100

critical

5

101

internet

6

110

network

7

111

 

如果選擇tos關鍵字,除了直接輸入數值0~15外,用戶也可輸入如表1-10所示的關鍵字。

表1-10 ToS關鍵字說明

關鍵字

ToS(十進製)

ToS(二進製)

normal

0

0000

min-monetary-cost

1

0001

max-reliability

2

0010

max-throughput

4

0100

min-delay

8

1000

 

當協議類型選擇為TCP或者UDP時,用戶還可以定義如表1-11所示信息。

表1-11 TCP/UDP特有的ACL規則信息

參數

類別

作用

說明

source-port operator port1 [ port2 ]

源端口

定義UDP/TCP報文的源端口信息

operator為操作符,取值可以為lt(小於)、gt(大於)、eq(等於)、neq(不等於)或者range(在指定範圍內);隻有操作符range需要兩個端口號做操作數,其他操作符隻需要一個端口號做操作數

port1port2:TCP或UDP的端口號,用名字或數字表示,數字的取值範圍為0~65535

destination-port operator port1 [ port2 ]

目的端口

定義UDP/TCP報文的目的端口信息

established

TCP連接建立標識

表示此條規則僅對TCP建立連接的第一個SYN報文有效

TCP協議特有的參數

 

當TCP或UDP的端口號用名字表示時,用戶還可以定義如表1-12所示信息。

表1-12 TCP或UDP端口取值信息

協議類型

取值信息

TCP

CHARgen(19)、bgp(179)、cmd(514)、daytime(13)、discard(9)、domain(53)、echo(7)、exec(512)、finger(79)、ftp(21)、ftp-data(20)、gopher(70)、hostname(101)、irc(194)、klogin(543)、kshell(544)、login(513)、lpd(515)、nntp(119)、pop2(109)、pop3(110)、smtp(25)、sunrpc(111)、tacacs(49)、talk(517)、telnet(23)、time(37)、uucp(540)、whois(43)、www(80)

UDP

biff(512)、bootpc(68)、bootps(67)、discard(9)、dns(53)、dnsix(90)、echo(7)、mobilip-ag(434)、mobilip-mn(435)、nameserver(42)、netbios-dgm(138)、netbios-ns(137)、netbios-ssn(139)、ntp(123)、rip(520)、snmp(161)、snmptrap(162)、sunrpc(111)、syslog(514)、tacacs-ds(65)、talk(517)、tftp(69)、time(37)、who(513)、xdmcp(177)

 

H3C S5100係列以太網交換機在硬件下發高級ACL時,有如下限製:

l    不支持precedencetos參數。

l    當協議類型選擇為TCP或者UDP時,隻支持operator操作符取值為eq的情況。

 

當協議類型選擇為ICMP時,用戶還可以定義如表1-13所示信息。

表1-13 ICMP特有的ACL規則信息

參數

類別

作用

說明

icmp-type icmp-type icmp-code

ICMP報文的類型和消息碼信息

定義規則中ICMP報文的類型和消息碼信息

icmp-type:ICMP消息類型,取值為0~255

icmp-code:ICMP的消息碼,取值為0~255

 

當協議類型選擇為ICMP時,用戶也可以直接在icmp-type參數後輸入ICMP的消息名稱,如表1-14所示。

表1-14 ICMP消息

名稱

ICMP TYPE

ICMP CODE

echo

Type=8

Code=0

echo-reply

Type=0

Code=0

fragmentneed-DFset

Type=3

Code=4

host-redirect

Type=5

Code=1

host-tos-redirect

Type=5

Code=3

host-unreachable

Type=3

Code=1

information-reply

Type=16

Code=0

information-request

Type=15

Code=0

net-redirect

Type=5

Code=0

net-tos-redirect

Type=5

Code=2

net-unreachable

Type=3

Code=0

parameter-problem

Type=12

Code=0

port-unreachable

Type=3

Code=3

protocol-unreachable

Type=3

Code=2

reassembly-timeout

Type=11

Code=1

source-quench

Type=4

Code=0

source-route-failed

Type=3

Code=5

timestamp-reply

Type=14

Code=0

timestamp-request

Type=13

Code=0

ttl-exceeded

Type=11

Code=0

 

2. undo rule命令的參數說明

rule-id:ACL規則編號,必須是一個已經存在的ACL規則編號。如果用戶不知道ACL規則的編號,可以使用display acl命令來查看。

source:刪除編號對應的ACL規則的源IP地址的設置。

source-port:刪除編號對應的ACL規則的源端口的設置,本參數僅在規則定義的協議是TCP或者UDP的情況下有效。

destination:刪除編號對應的ACL規則的目的IP地址的設置。

destination-port:刪除編號對應的ACL規則的目的端口的設置,本參數僅在規則定義的協議是TCP或者UDP的情況下有效。

icmp-type:刪除編號對應的ACL規則的ICMP類型和消息碼的設置,本參數僅在規則定義的協議是ICMP的情況下有效。

precedence:刪除編號對應的ACL規則的IP Precedence的相關設置。

tos:刪除編號對應的ACL規則的ToS的相關設置。

dscp:刪除編號對應的ACL規則的DSCP的相關設置。

time-range:刪除編號對應的ACL規則的時間段設置。

fragment:刪除編號對應的ACL規則的對非尾片分片報文有效的設置。

【描述】

rule命令用來定義ACL規則。undo rule命令用來刪除ACL規則或者ACL規則中的某些屬性信息。

在刪除一條ACL規則時,如果不指定其他參數,交換機將這個ACL規則完全刪除;否則交換機隻刪除該ACL規則中相應的屬性信息。

需要注意的是:

l              當高級ACL的匹配順序為config時,用戶可以修改該ACL中的任何一條已經存在的規則,在修改ACL中的某條規則時,該規則中沒有修改到的部分仍舊保持原來的狀態;當高級ACL的匹配順序為auto時,用戶不能修改該ACL中的任何一條已經存在的規則,否則係統會提示錯誤信息。

l              在創建一條ACL規則的時候,用戶可以不指定規則的編號,交換機將自動為這個規則分配一個編號:如果此ACL中沒有規則,編號為0;如果此ACL中已有規則,編號為現有規則的最大編號+1;如果此ACL中現有規則的最大編號為65534,則係統會提示錯誤信息,此時用戶必須指定規則的編號才能創建成功。

l              新創建或修改後的規則不能和已經存在的規則相同,否則會導致創建或修改不成功,係統會提示該規則已經存在。

l              當高級ACL的匹配順序為auto時,新創建的規則將按照“深度優先”的原則插入到已有的規則中,但是所有規則對應的編號不會改變。

【舉例】

# 創建高級ACL 3000,定義規則1,拒絕源IP地址為192.168.0.1並且DSCP優先級為46的IP報文通過。

<Sysname> system-view

System View: return to User View with Ctrl+Z.

[Sysname] acl number 3000

[Sysname-acl-adv-3000] rule 1 deny ip source 192.168.0.1 0 dscp 46

[Sysname-acl-adv-3000] quit

# 創建高級ACL 3001,定義規則1,允許從129.9.0.0/16網段的主機向202.38.160.0/24網段的主機發送的目的端口號為80的TCP報文通過。

[Sysname] acl number 3001

[Sysname-acl-adv-3001] rule 1 permit tcp source 129.9.0.0 0.0.255.255 destination 202.38.160.0 0.0.0.255 destination-port eq 80

完成上述配置後,用戶可以使用display acl命令查看ACL的配置信息。

1.1.11  rule(二層ACL)

【命令】

rule [ rule-id ] { deny | permit } [ rule-string ]

undo rule rule-id

【視圖】

二層ACL視圖

【參數】

rule-idACL規則編號,取值範圍為0~65534。

deny:表示丟棄符合條件的數據包。

permit:表示允許符合條件的數據包通過。

rule-string:ACL規則信息,具體參數說明如表1-15所示。

表1-15 二層ACL規則信息

參數

類別

作用

說明

format-type

鏈路層封裝類型

定義規則中的鏈路層封裝類型

format-type:取值可以為802.3/802.2、802.3、ether_ii、snap

lsap lsap-code lsap-wildcard

LSAP字段

定義規則的LSAP字段

lsap-code:數據幀的封裝格式,16比特的十六進製數

lsap-wildcard:lsap值的掩碼, 16比特的十六進製數,用於指定屏蔽位

source { source-mac-addr source-mac-mask | vlan-id }*

MAC信息或源VLAN信息

定義規則的源MAC地址範圍或源VLAN ID

source-mac-addr:源MAC地址,格式為H-H-H

source-mac-mask:源MAC地址的掩碼,格式為H-H-H

vlan-id:源VLAN ID,取值範圍1~4094

dest dest-mac-addr dest-mac-mask

目的MAC信息

定義規則的目的MAC地址範圍

dest-mac-addr:目的MAC地址,格式為H-H-H

dest-mac-mask:目的MAC地址的掩碼,格式為H-H-H

cos vlan-pri

802.1p優先級

定義規則的802.1p優先級

vlan-pri:取值範圍為0~7

time-range time-name

時間段信息

定義規則生效的時間段

time-name:指定規則生效的時間段名稱,為1~32個字符的字符串,不區分大小寫,必須以英文字母a~z或A~Z開頭,為避免混淆,時間段的名字不可以使用英文單詞all

type protocol-type protocol-mask

以太網幀的協議類型

定義以太網幀的協議類型

protocol-type:協議類型

protocol-mask:協議類型掩碼

 

H3C S5100係列以太網交換機在硬件下發二層ACL時,不支持配置format-type參數和lsap參數。

 

【描述】

rule命令用來定義ACL規則。undo rule命令用來刪除ACL規則。

在刪除一條ACL規則時,需要指定該ACL規則的編號。如果用戶不知道ACL規則的編號,可以使用display acl命令來查看。

需要注意的是:

l              用戶可以修改二層ACL中的任何一條已經存在的規則,在修改ACL中的某條規則時,該規則中沒有被修改到的部分仍舊保持原來的狀態。

l              在創建一條ACL規則的時候,用戶可以不指定規則的編號,交換機將自動為這個規則分配一個編號:如果此ACL中沒有規則,編號為0;如果此ACL中已有規則,編號為現有規則的最大編號+1;如果此ACL中現有規則的最大編號為65534,則係統會提示錯誤信息,此時用戶必須指定規則的編號才能創建成功。

l              新創建或修改後的規則不能和已經存在的規則相同,否則會導致創建或修改不成功,係統會提示該規則已經存在。

S5100-SI係列交換機的Release2201及以前版本均不支持此命令。

 

【舉例】

# 創建二層ACL 4000,定義規則1,禁止從MAC地址000d-88f5-97ed發送到MAC地址0011-4301-991e且802.1p優先級為3的報文通過。

<Sysname> system-view

System View: return to User View with Ctrl+Z.

[Sysname] acl number 4000

[Sysname-acl-ethernetframe-4000] rule 1 deny cos 3 source 000d-88f5-97ed ffff-ffff-ffff dest 0011-4301-991e ffff-ffff-ffff

1.1.12  rule comment

【命令】

rule rule-id comment text

undo rule rule-id comment

【視圖】

高級ACL視圖/二層ACL視圖

【參數】

rule-idACL規則編號,取值範圍為0~65534。

text:ACL規則的注釋信息,字符串格式,取值範圍為1~127個字符。

【描述】

rule comment命令用來定義ACL規則的注釋信息。undo rule comment命令用來刪除ACL規則的注釋信息。

用戶可以使用rule comment命令來描述ACL規則的具體用途、應用於哪些端口等信息,方便用戶對ACL規則進行區分和識別。

缺省情況下,ACL規則沒有注釋信息。

需要注意的是,在定義ACL規則的注釋信息之前,該ACL規則必須已經存在。

S5100-SI係列交換機的Release2201及以前版本均不支持在二層ACL視圖下配置此命令。

 

【舉例】

# 定義高級ACL 3001的rule 0的注釋信息為“This rule is to be applied to Gigabitetheth 1/0/1”。

<Sysname> system-view

System View: return to User View with Ctrl+Z.

[Sysname] acl number 3001

[Sysname-acl-adv-3001] rule 0 comment This rule is to be applied to Gigabitetheth 1/0/1

# 使用display acl命令查看高級ACL 3001的配置信息。

[Sysname-acl-adv-3001] display acl 3001

Advanced ACL  3001, 1 rule

Acl's step is 1

 rule 0 deny IP source 1.1.1.1 0 destination 2.2.2.2 0

 rule 0 comment This rule is to be applied to Gigabitetheth 1/0/1

1.1.13  time-range

【命令】

time-range time-name { start-time to end-time days-of-the-week [ from start-time start-date ] [ to end-time end-date ] | from start-time start-date [ to end-time end-date ] | to end-time end-date }

undo time-range { all | name time-name [ start-time to end-time days-of-the-week [ from start-time start-date ] [ to end-time end-date ] | from start-time start-date [ to end-time end-date ] | to end-time end-date ] }

【視圖】

係統視圖

【參數】

all:所有的時間段。

time-name:時間段的名稱,為1~32個字符的字符串,不區分大小寫,必須以英文字母a~z或A~Z開頭。為避免混淆,時間段的名字不能使用英文單詞all。

start-time:可選參數,周期時間段的開始時間,表示形式為hh:mm。

end-time:可選參數,周期時間段的結束時間,表示形式為hh:mm。結束時間必須大於起始時間。

days-of-the-week:可選參數,參數表示該周期時間在每周幾有效。可以輸入如下參數及其組合:

l              數字(0~6);

l              星期一到星期日(Mon,Tue,Wed,Thu,Fri,Sat,Sun);

l              工作日(working-day),包括從星期一到星期五五天;

l              休息日(off-day),包括星期六和星期日;

l              每一天(daily),一個星期中的每一天。

from start-time start-date:可選參數,絕對時間段的開始日期,和end-time end-date共同表示該絕對時間在某一段日期中生效,表示形式為hh:mm MM/DD/YYYY或hh:mm YYYY/MM/DD。如果不指定開始日期,則開始日期為1970年1月1日0點0分。

to end-time end-date:可選參數,絕對時間段的結束日期,和start-time start-date共同表示該絕對時間在某一段日期中生效,表示形式為hh:mm MM/DD/YYYY或hh:mm YYYY/MM/DD。如果不指定結束日期,則結束日期為2100年12月31日23點59分。

【描述】

time-range命令用來配置一個時間段。undo time-range命令用來刪除一個時間段或刪除所有的時間段。

需要注意的是:

l              如果一個時間段隻定義了周期時間段,則隻有係統時鍾在該周期時間段內,該時間段才進入激活狀態。如果一個時間段下定義了多個周期時間段,則這些周期時間段之間是“或”的關係。

l              如果一個時間段隻定義了絕對時間段,則隻有係統時鍾在該絕對時間段內,該時間段才進入激活狀態。如果一個時間段下定義了多個絕對時間段,則這些絕對時間段之間是“或”的關係。

l              如果一個時間段同時定義了絕對時間段和周期時間段,則隻有同時滿足絕對時間段和周期時間段的定義時,該時間段才進入激活狀態。例如,一個時間段定義了絕對時間段:從2004年1月1日零點零分到2004年12月31日23點59分,同時定義了周期時間段:每周三的12:00到14:00。該時間段隻有在2004年內每周三的12:00到14:00才進入激活狀態。

【舉例】

# 定義周期時間段,時間範圍為每周一到周五的08:00至12:00。

<Sysname> system-view

System View: return to User View with Ctrl+Z.

[Sysname] time-range tr1 08:00 to 12:00 working-day

# 定義絕對時間段,時間範圍為2008年1月1日12:00至2008年6月1日12:00。

[Sysname] time-range tr2 from 12:00 1/1/2008 to 12:00 6/1/2008

# 顯示時間段的配置信息。

[Sysname] display time-range all

Current time is 17:37:23 Nov/27/2007 Tuesday

 

Time-range : tr1 ( Inactive )

 08:00 to 12:00 working-day

 

Time-range : tr2 ( Inactive )

 From 12:00 Jan/1/2008 to 12:00 Jun/1/2008

 

不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!

BOB登陆
官網
聯係我們