更新时间:2023-12-08
1配置IP 访问列表命令
1.1IP访问列表配置命令
访问列表配置命令有:
• deny
• ip access-group
• ip access-list
• permit
• show ip access-list
• merge-enable
• debug ipacl
1.1.1deny
在IP访问列表配置模式中可使用此命令配置禁止规则,要从IP访问列表中删除deny规则,在命令前加no前缀。
deny source [source-mask]
no deny source [source-mask]
deny protocol source source-mask destination destination-mask [tos tos]
no deny protocol source source-mask destination destination-mask [tos tos]
对于互联网控制报文协议(ICMP),也可以使用以下句法:
deny icmp source source-mask destination destination-mask [icmp-type] [tos tos]
对于Internet 组管理协议(IGMP),可以使用以下句法:
deny igmp source source-mask destination destination-mask [igmp-type] [tos tos]
对于TCP,可以使用以下句法:
deny tcp source source-mask [operator port] destination destination-mask [operator port ] [tos tos]
对于数据报协议(UDP),可以使用以下句法:
deny udp source source-mask [operator port] destination destination-mask [operator port] [tos tos]
参数
参数 |
参数说明 |
protocol |
协议名字或IP协议号。它可以是关键字icmp、igmp、igrp、ip、ospf、tcp或udp,也可以是表IP协议号的0到255的一个整数。为了匹配任何Internet协议(包括ICMP、TCP和UDP)使用关键字ip。某些协议允许进一步限定,如下描述。 |
source |
源网络或主机号。有两种方法指定源:32位二进制数,用四个点隔开的十进制数表示。使用关键字any作为0.0.0.0 0.0.0.0的源和源掩码缩写。 |
source-mask |
源地址网络掩码。使用关键字any作为0.0.0.0 0.0.0.0的源和源掩码缩写。 |
destination |
目标网络或主机号。有两种方法指定: 使用四个点隔开的十进制数表示的32位二进制数。 使用关键字any作为0.0.0.0 0.0.0.0的目标和目标掩码的缩写。 |
destination-mask |
目标地址网络掩码。使用关键字any作为0.0.0.0 0.0.0.0的目标地址和目标地址掩码缩写。 |
tos tos |
(可选) 数据包可以使用服务层过滤。使用数字0-15指定。 |
icmp-type |
(可选)ICMP包可由ICMP报文类型过滤。类型是数字0到255。 |
igmp-type |
(可选)IGMP包可由IGMP报文类型或报文名过滤。 类型是0到15的数字。 |
operator |
(可选)比较源或目标端口。操作包括eq(等于)。如果操作符放在source和source-mask之后,那么它必须匹配这个源端口。如果操作符放在destination和destination-mask之后,那么它必须匹配目标端口。 |
port |
(可选)TCP或UDP端口的十进制数字或名称。端口号是一个0到65535的数字。 |
命令模式
IP访问列表配置态
使用说明
可以使用访问表控制包在接口上的传输,控制虚拟终端线路访问以及限制路由选择更新的内容。在匹配发生以后停止检查扩展的访问表。分段IP包,而不是初始段,立即由任何扩展的IP访问表接收。扩展的访问表用于控制访问虚拟终端线路或限制路由选择更新的内容,不必匹配TCP源端口、服务值的类型或包的优先权。
注意:
在初始建立一个访问表后,任何后续的添加内容(可能由终端键入)放置在列表的尾部。
示例
下面示例禁止192.168.5.0这个网段:
Switch_config#ip access-list standard filter
Switch_config_std#deny 192.168.5.0 255.255.255.0
注意:
IP访问表由一个隐含的deny规则结束。
相关命令
ip access-group
ip access-list
permit
show ip access-list
1.1.2ip access-group
为了控制访问一个接口,使用ip access-group接口配置命令。为了删除这个指定的访问组,使用no格式命令。
ip access-group {access-list-name} {in | out}
no ip access-group {access-list-name} {in | out}
参数
参数 |
参数说明 |
access-list-name |
访问表名。这是一个最长为20个字符的字符串。 |
in |
在进接口时使用访问列表。 |
out |
在出接口时使用访问列表。 |
命令模式
vlan接口配置态
使用说明
访问列表用在入接口。对于标准的入口访问列表,在接收到包之后,对照访问列表检查包的源地址。对于扩展的访问列表,该交换机也检查目标地址。如果访问表允许该地址,那么软件继续处理该包。如果访问表不允许该地址,该软件放弃包并返回一个ICMP主机不可到达报文。
如果指定的访问列表不存在,所有的包允许通过。
示例
下例在interface vlan 2的出口上应用列表filter:
Switch_config#inter vlan 2
Switch_config_v2# ip access-group filter out
相关命令
ip access-list
show ip access-list
1.1.3ip access-list
使用此命令后,进入的IP访问列表配置模式。在这状态下可以增加和删除访问规则。命令exit返回配置状态。
使用no前缀,删除IP访问列表。
ip access-list {standard | extended} name
no ip access-list {standard | extended} name
参数
参数 |
参数说明 |
standard |
指定为标准访问列表。 |
extended |
指定为扩展访问列表。 |
name |
访问表名。这是一个最长20的字符串。 |
缺省
没有IP访问列表被定义。
命令模式
全局配置态
使用说明
使用此命令将进入IP访问列表配置模式,在IP访问列表配置模式中,可以用deny或permit命令来配置访问规则。
示例
以下的例子配置一个标准访问列表。
Switch_config#ip access-list standard filter
Switch_config_std#deny 192.168.1.0 255.255.255.0
Switch_config_std#permit any
相关命令
deny
ip access-group
permit
show ip access-list
1.1.4permit
在IP访问列表配置模式中可使用此命令配置允许规则,要从IP访问列表中删除permit规则,在命令前加no前缀。
permit source [source-mask]
no permit source [source-mask]
permit protocol source source-mask destination destination-mask [tos tos]
no permit protocol source source-mask destination destination-mask [tos tos]
对于互联网控制报文协议(ICMP),也可以使用以下句法:
permit icmp source source-mask destination destination-mask [icmp-type] [tos tos]
对于Internet 组管理协议(IGMP),可以使用以下句法:
permit igmp source source-mask destination destination-mask [igmp-type] [tos tos]
对于TCP,可以使用以下句法:
permit tcp source source-mask [operator port] destination destination-mask [operator port ] [tos tos]
对于数据报协议(UDP),可以使用以下句法:
permit udp source source-mask [operator port [port]] destination destination-mask [tos tos]
参数
参数 |
参数说明 |
protocol |
协议名字或IP协议号。它可以是关键字icmp、igmp、igrp、ip、ospf、tcp或udp,也可以是表IP协议号的0到255的一个整数。为了匹配任何Internet协议(包括ICMP、TCP和UDP)使用关键字ip。某些协议允许进一步限定,如下描述。 |
source |
源网络或主机号。有两种方法指定源:32位二进制数,用四个点隔开的十进制数表示。使用关键字any作为0.0.0.0 0.0.0.0的源和源掩码缩写。 |
source-mask |
源地址网络掩码。使用关键字any作为0.0.0.0 0.0.0.0的源和源掩码缩写。 |
destination |
目标网络或主机号。有两种方法指定: 使用四个点隔开的十进制数表示的32位二进制数。 使用关键字any作为0.0.0.0 0.0.0.0的目标和目标掩码的缩写。 |
destination-mask |
目标地址网络掩码。使用关键字any作为0.0.0.0 0.0.0.0的目标地址和目标地址掩码缩写。 |
tos tos |
(可选) 数据包可以使用服务层过滤。使用数字0-15指定。 |
icmp-type |
(可选)ICMP包可由ICMP报文类型过滤。类型是数字0到255。 |
igmp-type |
(可选)IGMP包可由IGMP报文类型或报文名过滤。 类型是0到15的数字。 |
operator |
(可选)比较源或目标端口。操作包括eq(等于)。如果操作符放在source和source-mask之后,那么它必须匹配这个源端口。如果操作符放在destination和destination-mask之后,那么它必须匹配目标端口。 |
port |
(可选)TCP或UDP端口的十进制数字或名称。端口号是一个0到65535的数字。 |
命令模式
IP访问列表配置态
使用说明
可以使用访问表控制包在接口上的传输,控制虚拟终端线路访问以及限制路由选择更新的内容。在匹配发生以后停止检查扩展的访问表。
分段IP包,而不是初始段,立即由任何扩展的IP访问表接收。扩展的访问表用于控制访问虚拟终端线路或限制路由选择更新的内容,不必匹配TCP源端口、服务值的类型或包的优先权。
注意:
在初始建立一个访问表后,任何后续的添加内容(可能由终端键入)放置在列表的尾部。
示例
下面示例允许192.168.5.0这个网段:
Switch_config#ip access-list standard filter
Switch_config_std#permit 192.168.5.0 255.255.255.0
注意:
IP访问表由一个隐含的deny规则结束。
相关命令
deny
ip access-group
ip access-list
show ip access-list
1.1.5show ip access-list
要显示当前的IP访问列表内容,使用show ip access-list命令。
show ip access-list[access-list-name]
参数
参数 |
参数说明 |
access-list-name |
访问表名。这是一个最长20的字符串。 |
缺省
显示所有标准的和扩展的IP访问列表。
命令模式
管理态
使用说明
show ip access-list命令允许你指定一个特定的访问列表。
示例
以下是不指定名时show ip access-list 命令的示例输出:
Switch#show ip access-list
Standard IP access list test1
Index Rule content
--------------------------------------------------------------------
1 permit 10.1.1.2 255.255.255.255
2 deny any
Extended IP access list test2
Index Rule content
--------------------------------------------------------------------
1 deny ip interface VLAN4 any time-range time1
2 deny icmp interface VLAN4 any time-range time2
3 permit icmp interface VLAN4 any time-range time3
以下是指定访问表名时,show ip access-list命令的示例输出:
Switch#show ip access-list test1
Standard IP access list test1
Index Rule content
--------------------------------------------------------------------
1 permit 10.1.1.2 255.255.255.255
2 deny any
1.1.6merge-enable
为了标准与扩展的访问列表规则能减少规则条目,使用merge-enale命令允许用户配置某ip访问列表的时候能进行相应的规则归并,在其命令前加no可关闭归并功能。
merge-enable
no merge-enable
参数
缺省
命令模式
ipacl模式
使用说明
在ipacl模式下使用merge-enale命令可以归并原配置访问列表中可归并的规则,形成一张归并列表,归并的操作将在退出ipacl模式时完成。
此外,通过命令show ip access-list [access-list-name] [config-list | merge-list | both-list] 可以分别显示[原配置访问列表 | 归并列表 | 同时显示两张列表] 。
示例
以下是对标准访问列表使用merge-enale 命令的示例输出:
Switch_config#ip access-list standard bdcom1
Switch_config_std#permit 220.181.12.36
Switch_config_std#permit 220.181.12.37
Switch_config_std#merge-enable
Switch_config_std#exit
Switch#show ip access-list bdcom1 both-list
Standard IP access list bdcom1
Index Rule content
--------------------------------------------------------------------
1 permit 220.181.12.36 255.255.255.255
2 permit 220.181.12.37 255.255.255.255
Standard IP access-list bdcom1 merge enabled!
Merge list has 1 rules, reduce 1 rules.
Merge Standard IP access list bdcom1
Index Rule content
--------------------------------------------------------------------
1 permit 220.181.12.36 255.255.255.254
以下是对扩展访问列表使用merge-enale 命令的示例输出:
Switch_config#ip access-list extended bdcom2
Switch_config_ext#permit ip 192.168.1.10 255.255.255.255 any
Switch_config_ext#permit ip 192.168.1.11 255.255.255.255 any
Switch_config_ext#merge-enable
Switch_config_ext#exit
Switch#show ip access-list bdcom2 both-list
Extended IP access list bdcom2
Index Rule content
--------------------------------------------------------------------
1 permit ip 192.168.1.10 255.255.255.255 any
2 permit ip 192.168.1.11 255.255.255.255 any
Extended IP access-list bdcom2 merge enabled!
Merge list has 1 rules, reduce 1 rules.
Merge Extended IP access list bdcom4
Index Rule content
--------------------------------------------------------------------
1 permit ip 192.168.1.10 255.255.255.254 any
相关命令
deny
permit
ip access-list
show ip access-list
1.1.7debug ipacl
为及时了解ip访问列表配置的具体信息,可使用debug ipacl命令打开ip访问列表的调试功能,在命令前加no可关闭该调试功能。
debug ipacl [merge | iprange | timerange-rule | resource]
no debug ipacl
参数
参数 |
参数说明 |
merge |
Ipacl 规则 归并信息 |
iprange |
Ipacl iprange 规则分解信息 |
Timerange-rule |
Ipacl timerange 规则状态 |
resource |
跟踪IPACL资源处理过程信息 |
缺省
开启所有ip访问列表的调试信息。
命令模式
管理态
使用说明
使用debug ipacl允许用户跟踪ipacl配置和处理过程中的各种调试信息。
示例
以下是对ip访问列表配置命令过程中使用debug ipacl命令的示例输出:
Switch#debug ipacl
Switch_config#ip access-list extended bdcom2
Switch_config_ext#Jan 7 11:44:27
[: REG_OWNER (FUNC: ipacl_insert)] OWNER_ID: 0x071a2ef8, RESOURCE_TYPE: 3, RESOURCE_INDEX_TYPE: 1, INDEX_ADDR: 0x04d843e8, WRITE_FUNC: 0x00000000, READ_FUNC: 0x0062db00
Jan 7 11:44:27 [IPACL] -info- not find any active rule when do deep copy.
Jan 7 11:44:27
[: RES_SYN (FUNC: do_ipacl)] OWNER_ID: 0x057e3ec8, PARAM1: 0x071a2ef8, PARAM2: 0x01469e70
Switch_config_ext#permit ip 192.168.1.10 255.255.255.255 any
Switch_config_ext#permit ip 192.168.1.11 255.255.255.255 any
Switch_config_ext#Jan 7 11:44:27
[: REG_OWNER (FUNC: ipacl_insert)] OWNER_ID: 0x071a2ef8, RESOURCE_TYPE: 3, RESOURCE_INDEX_TYPE: 1, INDEX_ADDR: 0x04d843e8, WRITE_FUNC: 0x00000000, READ_FUNC: 0x0062db00
Jan 7 11:44:27 [IPACL] -info- not find any active rule when do deep copy.
Jan 7 11:44:27
[: RES_SYN (FUNC: do_ipacl)] OWNER_ID: 0x057e3ec8, PARAM1: 0x071a2ef8, PARAM2: 0x01469e70
Switch_config_ext#permit ip 192.168.1.10 255.255.255.255 any
Switch_config_ext#permit ip 192.168.1.11 255.255.255.255 any
Switch_config_ext#permit ip 192.168.1.12 255.255.255.255 any time-range bdcomtest1
Switch_config_ext#merge-enable
Switch_config_ext#exit
Switch_config#Jan 7 11:45:13 [IP ACL(bdcom2)] ACTIVE rule: permit ip 192.168.1.12 255.255.255.255 any time-range bdcomtest1
Jan 7 11:45:13 [IP ACL(bdcom2)] Merge: permit ip 192.168.1.11 255.255.255.255 any => permit ip 192.168.1.10 255.255.255.254 any
Jan 7 11:45:13 [IP ACL]Merge: total 2 merge operations, reduced 1 rules
Jan 7 11:45:13 would_notify_upper=1
Jan 7 11:45:13
[: RES_SYN (FUNC: ipacl_synchronize)] OWNER_ID: 0x057e3ec8, PARAM1: 0x071a2e70, PARAM2: 0x071a2efc
Jan 7 11:46:01
[: RES_SYN (FUNC: ipacl_synchronize)] OWNER_ID: 0x057e3ec8, PARAM1: 0x071a2e70, PARAM2: 0x071a2efc
Jan 7 11:46:01 IPACL(bdcom2) has changed(by timerange bdcomtest1), synchronize successfully.
相关命令
deny
permit
ip access-list
merge-enable