01-对象组命令
本章节下载: 01-对象组命令 (225.25 KB)
目 录
1.1.3 display object-group host
1.1.4 network (IPv4 address object group view)
1.1.5 network (IPv6 address object group view)
1.1.8 port (port object group view)
1.1.9 service(service object group view)
非缺省vSystem不支持本特性的部分命令,具体情况请见本文相关描述。有关vSystem的详细介绍请参见“虚拟化技术配置指导”中的“vSystem”。
description命令用来配置对象组的描述信息。
undo description命令用来恢复缺省情况。
【命令】
description text
undo description
【缺省情况】
对象组未配置任何描述信息。
【视图】
对象组视图
【缺省用户角色】
network-admin
context-admin
vsys-admin
【参数】
text:表示对象组的描述信息,为1~127个字符的字符串,区分大小写。
【举例】
# 配置对象组的描述信息为“This is an IPv4 object-group”。
<Sysname> system-view
[Sysname] object-group ip address ipgroup
[Sysname-obj-grp-ip-ipgroup] description This is an IPv4 object-group
display object-group命令用来显示对象组的内容。
【命令】
display object-group [ { { ip | ipv6 } address | port | service } [ default ] [ name object-group-name ] | name object-group-name ]
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
context-admin
context-operator
vsys-admin
vsys-operator
【参数】
ip address:指定对象组类型为IPv4地址对象组。
ipv6 address:指定对象组类型为IPv6地址对象组。
port:指定对象组类型为端口对象组。
service:指定对象组类型为服务对象组。
default:指定默认对象组。
name:指定对象组名称。
object-group-name:对象组的名称,为1~63个字符的字符串,不区分大小写。
【举例】
# 显示所有对象组。
<Sysname> display object-group
IP address object group obj1: 0 object(in use)
IP address object group obj2: 6 objects(out of use)
0 network host address 1.1.1.1
10 network host name host
20 network subnet 1.1.1.1 255.255.255.0
IPv6 address object-group obj3: 0 object(in use)
IPv6 address object-group obj4: 5 objects(out of use)
0 network host address 1::1:1
10 network host name host
20 network subnet 1::1:0 112
Port object-group obj7: 0 object(in use)
Port object-group obj8: 3 objects(out of use)
0 port lt 20
10 port range 20 30
# 显示名称为obj2的对象组。
<Sysname> display object-group name obj2
IP address object-group obj2: 5 objects(out of use)
0 network host address 1.1.1.1
10 network host name host
20 network subnet 1.1.1.1 255.255.255.0
# 显示所有IPv4地址对象组。
<Sysname> display object-group ip address
IP address object-group obj1: 0 object(in use)
IP address object-group obj2: 5 objects(out of use)
0 network host address 1.1.1.1
10 network host name host
20 network subnet 1.1.1.1 255.255.255.0
# 显示名称为obj4的IPv6地址对象组。
<Sysname> display object-group ipv6 address name obj4
IPv6 address object-group obj4: 5 objects(out of use)
0 network host address 1::1:1
10 network host name host
20 network subnet 1::1:0 112
表1-1 display object-group命令显示信息描述表
|
字段 |
描述 |
|
in use |
表明此对象组被引用,包括被ACL引用或被对象组嵌套引用 |
|
out of use |
表明此对象组没有被引用 |
display object-group host命令用来显示主机名对应IP地址的相关信息。
【命令】
display object-group { ip | ipv6 } host { object-group-name object-group-name | name host-name [ vpn-instance vpn-instance-name ] } *
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
context-admin
context-operator
【参数】
ip address:指定对象组类型为IPv4地址对象组。
ipv6 address:指定对象组类型为IPv6地址对象组。
object-group-name object-group-name:指定对象组的名称。为1~63个字符的字符串,不区分大小写。不指定该参数时,显示某一个对象组中指定主机名或排除主机名的对应IP地址。
name host-name:指定主机名称。host-name表示主机名称,为1~60字符,不区分大小写。不指定该参数时,显示指定对象组中所有主机名和排除主机名的对应IP地址。
vpn-instance vpn-instance-name:指定主机所属的VPN。vpn-instance-name表示VPN实例名称,为1~31个字符的字符串,区分大小写。若不指定此参数,则表示指定公网的主机名称。
【使用指导】
非缺省vSystem不支持本命令。
【举例】
# 显示名称为group1的IPv4地址对象组中www.a.com主机名对应的地址。
<Sysname> display object-group ip host object-group-name group1 name www.a.com
Object group : group1
Object ID : 0
Host name : www.a.com
VPN instance : -
Updated at : 2019-05-20 11:04:24
IP addresses :
169.0.0.10
169.0.0.11
# 显示名称为group1的IPv6地址对象组中所有主机名和排除主机名对应的地址。
<Sysname> display object-group ipv6 host object-group-name group1
Object group : group1
Object ID : 0
Host name : www.a.com
VPN instance : -
Updated at : 2019-05-20 11:04:24
IP addresses :
169:0::0:10
169:0::0:11
Object ID : 10
Host name : www.b.com
VPN instance : -
Updated at : 2019-05-20 11:04:24
IP addresses :
169:0::0:11
169:0::0:12
表1-2 display object-group host命令显示信息描述表
|
字段 |
描述 |
|
Object group |
对象组的名称 |
|
Object ID |
对象的ID |
|
Host name |
主机的名称 |
|
VPN instance |
主机所属的VPN |
|
Updated at |
最后一次更新该主机名对应IP地址的时间 |
|
IP addresses |
该主机名对应的IP地址 |
【相关命令】
· object-group
network命令用来创建一个IPv4地址对象。
undo network命令用来删除指定的IPv4地址对象。
【命令】
[ object-id ] network { host { address ip-address | name host-name [ vpn-instance vpn-instance-name ] } | subnet ip-address { mask-length | mask } }
undo network { host { address ip-address | name host-name [ vpn-instance vpn-instance-name ] } | subnet ip-address { mask-length | mask } }
undo object-id
【缺省情况】
不存在IPv4地址对象。
【视图】
IPv4地址对象组视图
【缺省用户角色】
network-admin
context-admin
vsys-admin
【参数】
object-id:指定对象ID,取值范围为0~4294967294。若未指定本参数,系统将按照步长10从0开始,自动分配一个大于现有最大ID的最小ID。譬如现有对象的最大ID为22,那么自动分配的新ID将是30。
host:指定主机IPv4地址或主机名称。
address ip-address:指定主机IPv4地址。
name host-name:指定主机名称。host-name表示主机名称,为1~60字符,不区分大小写。支持模糊匹配主机名称,输入方式为*abc*或者*abc或者abc*,三种方式均表示主机名中包含指定的字符串即可。主机名称中间不能带“*”号。若输入的主机名中不存在“*”号,则表示精确匹配所配置的主机名。
vpn-instance vpn-instance-name:指定主机所属的VPN。vpn-instance-name表示VPN实例名称,为1~31个字符的字符串,区分大小写。若不指定此参数,则表示指定公网的主机名称。
subnet ip-address { mask-length | mask }:指定子网IPv4地址。mask-length表示子网掩码长度,即掩码中连续“1”的个数,取值范围为0~32。mask表示接口IPv4地址相应的子网掩码,为点分十进制格式。
【使用指导】
创建对象时指定ID,如果指定ID的对象不存在,则创建一条新的对象;如果指定ID的对象已存在,则对原对象进行修改。
新创建或修改的对象不能与已有对象的内容完全相同,否则该命令执行失败,并提示出错。
在配置subnet参数时,如果指定mask-length为32或者mask为255.255.255.255,则该配置被视为主机地址对象配置。
【举例】
# 配置地址为192.168.0.1的IPv4主机地址对象。
<Sysname> system-view
[Sysname] object-group ip address ipgroup
[Sysname-obj-grp-ip-ipgroup] network host address 192.168.0.1
# 配置匹配主机名称为pc3的IPv4主机地址对象。
<Sysname> system-view
[Sysname] object-group ip address ipgroup
[Sysname-obj-grp-ip-ipgroup] network host name pc3
# 配置模糊匹配主机名称为abc的IPv4主机地址对象。
<Sysname> system-view
[Sysname] object-group ip address ipgroup1
[Sysname-obj-grp-ip-ipgroup1] network host name *abc*
# 配置地址为192.167.0.0,掩码长度为24的IPv4子网地址对象。
<Sysname> system-view
[Sysname] object-group ip address ipgroup
[Sysname-obj-grp-ip-ipgroup] network subnet 192.167.0.0 24
# 配置地址为192.166.0.0,掩码为255.255.0.0的IPv4子网地址对象。
<Sysname> system-view
[Sysname] object-group ip address ipgroup
[Sysname-obj-grp-ip-ipgroup] network subnet 192.166.0.0 255.255.0.0
network命令用来创建一个IPv6地址对象。
undo network命令用来删除指定的IPv6地址对象。
【命令】
[ object-id ] network { host { address ipv6-address | name host-name [ vpn-instance vpn-instance-name ] } | subnet ipv6-address prefix-length }
undo network { host { address ipv6-address | name host-name [ vpn-instance vpn-instance-name ] } | subnet ipv6-address prefix-length }
undo object-id
【缺省情况】
不存在IPv6地址对象。
【视图】
IPv6地址对象组视图
【缺省用户角色】
network-admin
context-admin
vsys-admin
【参数】
object-id:指定对象ID,取值范围为0~4294967294。若未指定本参数,系统将按照步长10从0开始,自动分配一个大于现有最大ID的最小ID。譬如现有对象的最大ID为22,那么自动分配的新ID将是30。
host:指定主机IPv6地址或主机名称。
address ipv6-address:指定主机IPv6地址。
name host-name:指定主机名称。host-name表示主机名称,为1~60字符,不区分大小写。支持模糊匹配主机名称,输入方式为*abc*或者*abc或者abc*,三种方式均表示主机名中包含指定的字符串即可。主机名称中间不能带“*”号。若输入的主机名中不存在“*”号,则表示精确匹配所配置的主机名。
vpn-instance vpn-instance-name:指定主机所属的VPN。vpn-instance-name表示VPN实例名称,为1~31个字符的字符串,区分大小写。若不指定此参数,则表示指定公网的主机名称。
subnet ipv6-address prefix-length:指定子网IPv6地址。prefix-length:指定IPv6地址的前缀长度,取值范围为1~128。
【使用指导】
创建对象时指定ID,如果指定ID的对象不存在,则创建一条新的对象;如果指定ID的对象已存在,则对原对象进行修改。
新创建或修改的对象不能与已有对象的内容完全相同,否则该命令执行失败,并提示出错。
在配置subnet参数时,如果指定掩码长度为128,则该配置被视为主机地址对象配置。
【举例】
# 配置地址为1::1的IPv6主机地址对象。
<Sysname> system-view
[Sysname] object-group ipv6 address ipv6group
[Sysname-obj-grp-ipv6-ipv6group] network host address 1::1
# 配置匹配主机名称为pc3的IPv6主机地址对象。
<Sysname> system-view
[Sysname] object-group ipv6 address ipv6group
[Sysname-obj-grp-ipv6-ipv6group] network host name pc3
# 配置模糊匹配主机名称为abc的IPv6主机地址对象。
<Sysname> system-view
[Sysname] object-group ipv6 address ipv6group1
[Sysname-obj-grp-ipv6-ipv6group1] network host name *abc*
# 配置地址为1:1:1::1,前缀长度为24的IPv6子网地址对象。
<Sysname> system-view
[Sysname] object-group ipv6 address ipv6group
[Sysname-obj-grp-ipv6-ipv6group] network subnet 1:1:1::1 24
object-group命令用来创建一个对象组,并进入对象组视图。如果指定的对象组已经存在且类型一致,则直接进入对象组视图。
undo object-group命令用来删除指定的对象组。
【命令】
object-group { { ip | ipv6 } address | port | service } object-group-name
undo object-group { { ip | ipv6 } address | port | service } object-group-name
【缺省情况】
存在系统默认对象组。
【视图】
系统视图
【缺省用户角色】
network-admin
context-admin
vsys-admin
【参数】
ip address:指定对象组类型为IP地址对象组。
ipv6 address:指定对象组类型为IPv6地址对象组。
port:指定对象组类型为端口对象组。
service:指定对象组类型为服务对象组。
object-group-name:对象组的名称,为1~63个字符的字符串,不区分大小写,且对象组的名称必须全局唯一。
【使用指导】
在配置object-group命令时,需要注意的是:
· 如果指定名称的对象组不存在,则创建对象组并进入其视图。
· 如果指定名称的对象组存在但类型不一致,命令执行失败,并提示出错。
在配置undo object-group命令时,需要注意的是:
· 如果指定名称的对象组不存在,处理结束。
· 如果指定名称的对象组存在但类型不一致,则命令执行失败,并提示出错。
· 要删除的对象组被ACL、对象策略或者其他对象组引用,命令执行失败,并提示出错。
· 系统默认对象组不能被删除。
【举例】
# 配置名称为ipgroup的IP地址对象组。
<Sysname> system-view
[Sysname] object-group ip address ipgroup
# 配置名称为ipv6group的IPv6地址对象组。
<Sysname> system-view
[Sysname] object-group ipv6 address ipv6group
# 配置名称为portgroup的端口对象组。
<Sysname> system-view
[Sysname] object-group port portgroup
# 配置名称为servicegroup的服务对象组。
<Sysname> system-view
[Sysname] object-group service servicegroup
object-group rename命令用来重命名对象组。
【命令】
object-group rename old-object-group-name new-object-group-name
【视图】
系统视图
【缺省用户角色】
network-admin
context-admin
vsys-admin
【参数】
old-object-group-name:被重命名对象组的名称,为1~63个字符的字符串,不区分大小写。
new-object-group-name:重命名后的对象组名称,为1~63个字符的字符串,不区分大小写,且对象组的名称必须全局唯一。
【使用指导】
只能对用户创建的对象组进行重命名,系统缺省的对象组不能被重命名。
【举例】
# 重命名IPv4地址对象组ipgroup1的名称为ipgroup2。
<Sysname> system-view
[Sysname] object-group rename ipgroup1 ipgroup2
【相关命令】
· object-group
port命令用来创建一个端口对象。
undo port命令用来删除指定的端口对象。
【命令】
[ object-id ] port { { eq | lt | gt } port | range port1 port2 }
undo port { { eq | lt | gt } port | range port1 port2 }
undo object-id
【缺省情况】
不存在端口对象。
【视图】
端口对象组视图
【缺省用户角色】
network-admin
context-admin
vsys-admin
【参数】
object-id:指定对象ID,取值范围为0~4294967294。若未指定本参数,系统将按照步长10从0开始,自动分配一个大于现有最大ID的最小ID。譬如现有对象的最大ID为22,那么自动分配的新ID将是30。
eq:等于指定的端口号。
lt:小于指定的端口号。
gt:大于指定的端口号。
port:指定端口号,取值范围为0~65535。
range port1 port2:指定端口在两个端口号范围内。port1表示起始端口号,取值范围为0~65535。port2表示结束端口号,取值范围为0~65535。
【使用指导】
新创建或修改的对象不能与已有对象的内容完全相同,否则该命令执行失败,并提示出错。
在配置lt参数时,需要注意的是:
· 不能指定port为0。
· 如果指定port为1,则该配置被视为eq 0。
· 如果指定port为2~65535,则实际生效的端口号为[ 0, port-1 ]。
在配置gt参数时,需要注意的是:
· 不能指定port为65535。
· 如果指定port为65534,该配置被视为eq 65535。
· 如果指定port为0~65533,则实际生效的端口号为[ port+1, 65535 ]。
在配置range参数时,需要注意的是:
· 如果指定的port1和port2相同,则该配置被视为等于指定的端口号。
· 如果指定port1为0,则该配置被视为lt配置,譬如配置range 0 999,被视为lt 1000。
· 如果指定port2为65535,则该配置被视为gt配置,譬如配置range 50001 65535,被视为gt 50000。
· 如果指定的port1比port2大,会自动调整范围为[ port2, port1 ]。
【举例】
# 配置端口号等于100的端口对象。
<Sysname> system-view
[Sysname] object-group port portgroup
[Sysname-obj-grp-port-portgroup] port eq 100
# 配置端口号小于20的端口对象。
<Sysname> system-view
[Sysname] object-group port portgroup
[Sysname-obj-grp-port-portgroup] port lt 20
# 配置端口号大于60000的端口对象。
<Sysname> system-view
[Sysname] object-group port portgroup
[Sysname-obj-grp-port-portgroup] port gt 60000
# 配置端口号范围为1000到2000的端口对象。
<Sysname> system-view
[Sysname] object-group port portgroup
[Sysname-obj-grp-port-portgroup] port range 1000 2000
service命令用来创建一个服务对象。
undo service命令用来删除指定的服务对象。
【命令】
[ object-id ] service { protocol [ { source { { eq | lt | gt } port | range port1 port2 } | destination { { eq | lt | gt } port | range port1 port2 } } * | icmp-type icmp-code | icmpv6-type icmpv6-code ] | group-object object-group-name }
undo service { protocol [ { source { { eq | lt | gt } port | range port1 port2 } | destination { { eq | lt | gt } port | range port1 port2 } } * | icmp-type icmp-code | icmpv6-type icmpv6-code ] | group-object object-group-name }
undo object-id
【缺省情况】
不存在服务对象。
【视图】
服务对象组视图
【缺省用户角色】
network-admin
context-admin
vsys-admin
【参数】
object-id:指定对象ID,取值范围为0~4294967294。若未指定本参数,系统将按照步长10从0开始,自动分配一个大于现有最大ID的最小ID。譬如现有对象的最大ID为22,那么自动分配的新ID将是30。
protocol:协议类型,可输入的形式如下:
· 数字:取值范围为0~255;
· 名称:可选取tcp(6)、udp(17)、icmp(1)或icmpv6(58)。
source:指定源端口。只在protocol为tcp或udp时有效。
destination:指定目的端口。只在protocol为tcp或udp时有效。
eq:等于指定的端口号。
lt:小于指定的端口号。
gt:大于指定的端口号。
port:指定端口号,取值范围为0~65535。
range port1 port2:在指定的两个端口号范围内。port1表示端口号1,取值范围为0~65535。port2表示端口号2,取值范围为0~65535。
icmp-type:ICMP消息类型,取值范围为0~255,只在protocol为icmp时有效。
icmp-code:ICMP消息码,取值范围为0~255。
icmpv6-type:ICMPv6消息类型,取值范围为0~255,只在protocol为icmpv6时有效。
icmpv6-code:ICMPv6消息码,取值范围为0~255。
group-object:指定引用服务对象组。object-group-name表示服务对象组名称,为1~63字符,不区分大小写。
【使用指导】
创建对象时指定ID,如果指定ID的对象不存在,则创建一条新的对象;如果指定ID的对象已存在,则对旧对象进行修改。
新创建或修改的对象不能与已有对象的内容完全相同,否则该命令执行失败,并提示出错。
在配置lt参数时,需要注意的是:
· 不能指定port为0。
· 如果指定port为1,则该配置被视为eq 0。
· 如果指定port为2~65535,则实际生效的端口号为[ 0, port-1 ]。
在配置gt参数时,需要注意的是:
· 不能指定port为65535。
· 如果指定port为65534,该配置被视为eq 65535。
· 如果指定port为0~65533,则实际生效的端口号为[ port+1, 65535 ]。
在配置range参数时,需要注意的是:
· 如果指定的port1和port2相同,则该配置被视为等于指定的端口号。
· 如果指定port1为0,则该配置被视为lt配置,譬如配置range 0 999,被视为lt 1000。
· 如果指定port2为65535,则该配置被视为gt配置,譬如配置range 50001 65535,被视为gt 50000。
· 如果指定的port1比port2大,会自动调整范围为[ port2, port1 ]。
在配置group-object参数时,需要注意的是:
· 如果指定名称的对象组不存在,则系统会创建此名称的服务对象组。
· 如果指定名称的对象组存在,则对象组类型必须为服务对象组。
· 引用的服务对象组不能形成循环,譬如服务对象组a引用服务对象组b,则服务对象组b不能再引用服务对象组a。
· 引用的服务对象组最大嵌套层次为5层,譬如服务对象组1、2、3、4分别引用服务对象组2、3、4、5,则服务对象组5不能再引用其他服务对象组,服务对象组1也不能再被其他服务对象组引用。
【举例】
# 配置协议号等于100的服务对象。
<Sysname> system-view
[Sysname] object-group service servicegroup
[Sysname-obj-grp-service-servicegroup] service 100
# 配置指定源端口和目的端口的tcp协议报文的服务对象。
<Sysname> system-view
[Sysname] object-group service servicegroup
[Sysname-obj-grp-service-servicegroup] service tcp source eq 100 destination range 10 100
# 配置icmp协议的服务对象。
<Sysname> system-view
[Sysname] object-group service servicegroup
[Sysname-obj-grp-service-servicegroup] service icmp 100 150
# 配置引用servicegroup2对象组的服务对象。
<Sysname> system-view
[Sysname] object-group service servicegroup
[Sysname-obj-grp-service-servicegroup] service group-object servicegroup2
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!
