04-域名解析命令
本章节下载: 04-域名解析命令 (440.44 KB)
目 录
1.1.4 display dns server health status
1.1.5 display dns transparent host
1.1.14 dns server (dns server-group view)
1.1.18 dns transparent-proxy enable
display dns domain命令用来显示域名后缀信息。
【命令】
display dns domain [ dynamic ] [ vpn-instance vpn-instance-name ]
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【参数】
dynamic:显示通过DHCP等协议动态获得的域名后缀信息。如果未指定本参数,则显示静态配置和动态获得的域名后缀信息。
vpn-instance vpn-instance-name:显示指定VPN实例内的域名后缀信息。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。如果未指定本参数,则显示公网的域名后缀信息。
【举例】
# 显示公网静态配置和动态获得的域名后缀信息。
<Sysname> display dns domain
Type:
D: Dynamic S: Static
No. Type Domain suffix
1 S com
2 D net
表1-1 display dns domain命令显示信息描述表
字段 |
描述 |
No. |
序号 |
Type |
域名后缀类型: · S:表示静态配置的域名后缀 · D:表示通过DHCP等协议动态获得的域名后缀 |
Domain suffix |
域名后缀 |
【相关命令】
· dns domain
display dns host命令用来显示域名解析信息。
【命令】
display dns host [ ip | ipv6 ] [ vpn-instance vpn-instance-name ]
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【参数】
ip:显示A类查询的信息。A类查询用来解析域名对应的IPv4地址。
ipv6:显示AAAA类查询的信息。AAAA类查询用来解析域名对应的IPv6地址。
vpn-instance vpn-instance-name:显示指定VPN实例的域名解析信息。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。如果未指定本参数,则显示公网的域名解析信息。
【使用指导】
如果未指定ip和ipv6参数,则显示所有查询类型的域名解析信息。
【举例】
# 显示所有查询类型的域名解析信息。
<Sysname> display dns host
Type:
D: Dynamic S: Static
Total number: 3
No. Host name Type TTL Query type IP addresses
1 sample.com D 3132 A 192.168.10.1
192.168.10.2
192.168.10.3
2 zig.sample.com S - A 192.168.1.1
3 sample.net S - AAAA FE80::4904:4448
表1-2 display dns host命令显示信息描述表
字段 |
描述 |
No. |
序号 |
Host name |
查询名称 |
Type |
域名解析信息的类型: · S:表示静态配置的域名解析信息,即通过ip host或ipv6 host命令配置的主机名及其对应的主机IPv4/IPv6地址 · D:表示通过动态域名解析获得的域名解析信息 |
TTL |
域名解析信息的剩余有效时间,单位为秒 静态信息的TTL值显示为“-” |
Query type |
查询类型,取值包括A和AAAA |
IP addresses |
主机名对应的IP地址 · 对于A类查询类型,为IPv4地址 · 对于AAAA类查询类型,为IPv6地址 |
【相关命令】
· reset dns host
· ip host
· ipv6 host
display dns server命令用来显示域名服务器的IPv4地址信息。
【命令】
display dns server [ dynamic ] [ vpn-instance vpn-instance-name ]
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【参数】
dynamic:显示通过DHCP等协议动态获得的域名服务器IPv4地址信息。如果未指定本参数,则显示静态配置和动态获得的域名服务器IPv4地址信息。
vpn-instance vpn-instance-name:显示指定VPN实例内的域名服务器IPv4地址信息。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。如果未指定本参数,则显示公网的域名服务器IPv4地址信息。
【举例】
# 显示公网的域名服务器IPv4地址信息。
<Sysname> display dns server
Type:
D: Dynamic S: Static
No. Type IP address
1 S 202.114.0.124
2 S 169.254.65.125
表1-3 display dns server命令显示信息描述表
字段 |
描述 |
No. |
域名服务器的序号 |
Type |
域名服务器类型 · S表示静态指定的域名服务器信息 · D表示通过DHCP等协议动态获得的域名服务器信息 |
IP address |
域名服务器的IPv4地址 |
【相关命令】
· dns server
display dns server health status命令用来显示DNS服务器健康探测状态。
【命令】
display dns server health status
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【举例】
# 查看DNS服务器健康探测状态。
<Sysname> display dns server health status
No. DNS server OutInterface VPN name Status
1 1.1.1.1 - vpn1 Up
2 2::1 - Up
3 FE80::1 - vpn1 Up
表1-4 display dns server health status命令显示信息描述表
字段 |
描述 |
No. |
序号 |
DNS server |
DNS服务器的地址 |
OutInterface |
DNS域名服务器转发报文的出接口 仅当DNS服务器地址为IPv6链路本地地址时,才会显示本字段 |
VPN name |
VPN实例名称。显示为空表示域名匹配规则位于公网 |
Status |
健康探测结果: Up:DNS服务器可用 Down:DNS服务器不可用 |
【相关命令】
· health-check enable
display dns transparent host命令用来显示DNS源地址透明代理已解析的动态表项信息。
【命令】
display dns transparent host [ ip | ipv6 ] [ vpn-instance vpn-instance-name ]
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【参数】
ip:显示A类查询的信息。A类查询用来解析域名对应的IPv4地址。
ipv6:显示AAAA类查询的信息。AAAA类查询用来解析域名对应的IPv6地址。
vpn-instance vpn-instance-name:指定VPN实例,vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。如果未指定本参数,则显示公网中DNS源地址透明代理已解析的动态表项信息。
【使用指导】
如果未指定ip和ipv6参数,则显示所有查询类型的域名解析信息。
【举例】
# 显示DNS源地址透明代理已解析的动态表项信息。
<Sysname> display dns transparent host
Total number: 1
No. Host name Server TTL QType IP addresses
1 sample.com 1.1.1.1 3132 A 192.168.10.1 --
2 sample2.com -- 3000 A 192.168.10.2
表1-5 display dns transparent host命令显示信息描述表
字段 |
描述 |
No. |
序号 |
Host name |
查询名称 |
Server |
DNS服务器IP地址。显示为“--”时表示该表项由DNS重定向功能生成 |
TTL |
域名解析信息的剩余有效时间,单位为秒 |
QType |
查询类型,取值包括A和AAAA |
IP addresses |
主机名对应的IP地址: · 对于A类查询类型,为IPv4地址 · 对于AAAA类查询类型,为IPv6地址 |
【相关命令】
· dns transparent-proxy enable
display ipv6 dns server命令用来显示域名服务器的IPv6地址信息。
【命令】
display ipv6 dns server [ dynamic ] [ vpn-instance vpn-instance-name ]
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【参数】
dynamic:显示通过DHCP等协议动态获得的域名服务器IPv6地址信息。如果未指定本参数,则显示静态配置和动态获得的域名服务器IPv6地址信息。
vpn-instance vpn-instance-name:显示指定VPN实例内的域名服务器IPv6地址信息。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。如果未指定本参数,则显示公网的域名服务器IPv6地址信息。
【举例】
# 显示公网域名服务器的IPv6地址信息。
<Sysname> display ipv6 dns server
Type:
D: Dynamic S: Static
No. Type IPv6 address Outgoing Interface
1 S 2::2
表1-6 display ipv6 dns server命令显示信息描述表
字段 |
描述 |
No. |
域名服务器的序号 |
Type |
域名服务器类型 · S表示静态指定的域名服务器信息 · D表示通过DHCP等协议动态获得的域名服务器信息 |
IPv6 address |
域名服务器的IPv6地址 |
Outgoing Interface |
出接口名 |
【相关命令】
· ipv6 dns server
dns domain命令用来添加域名后缀。
undo dns domain命令用来删除指定的域名后缀。
【命令】
dns domain domain-name [ vpn-instance vpn-instance-name ]
undo dns domain domain-name [ vpn-instance vpn-instance-name ]
【缺省情况】
未配置域名后缀,即只根据用户输入的域名信息进行解析。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
domain-name:域名后缀,由“.”分隔的字符串组成(如aabbcc.com),每个字符串的长度不超过63个字符,包括“.”在内的总长度不超过253个字符。不区分大小写,字符串中可以包含字母、数字、“-”、“_”或“.”。
vpn-instance vpn-instance-name:为指定VPN实例添加域名后缀。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。如果未指定本参数,则表示为公网添加域名后缀。
【使用指导】
设备支持域名后缀列表功能。用户可以预先设置一些域名后缀,在域名解析的时候,用户只需要输入域名的部分字段,系统会自动将输入的域名加上不同的后缀进行解析。例如,用户想查询域名example.com,那么可以先在后缀列表中配置com,然后输入example进行查询,系统会自动将输入的域名与后缀连接成example.com进行查询。
使用域名后缀的时候,根据用户输入域名方式的不同,查询方式分成以下几种情况:
· 如果用户输入的域名中没有“.”,比如example,系统认为这是一个主机名,会首先加上域名后缀进行查询,如果所有加后缀的域名查询都失败,将使用最初输入的域名(如example)进行查询。
· 如果用户输入的域名中间有“.”,比如www.example,系统直接用它进行查询,如果查询失败,再依次加上各个域名后缀进行查询。
· 如果用户输入的域名最后有“.”,比如example.com.,表示不需要进行域名后缀添加,系统直接用输入的域名进行查询,不论成功与否都直接返回结果。就是说,如果用户输入的字符中最后一个字符为“.”,就只根据用户输入的字符进行查找,而不会去匹配用户预先设置的域名后缀,因此最后这个“.”,也被称为查找终止符。带有查询终止符的域名,称为FQDN(Fully Qualified Domain Name,完全合格域名)。
设备仅在查询动态域名解析缓存表时执行上述操作。
设备仅在作为DNS客户端时支持域名后缀列表功能。
本命令配置的域名后缀同时用于IPv4域名解析和IPv6域名解析。
公网或每个VPN实例内最多可以配置16个域名后缀。可同时在公网和VPN实例内配置域名后缀。
【举例】
# 为公网添加一个域名后缀com。
<Sysname> system-view
[Sysname] dns domain com
【相关命令】
· display dns domain
dns domain-name-group命令用来创建域名组并进入域名组视图。如果已经创建了域名组,则直接进入该域名组视图。
undo dns domain-name-group命令用来删除指定的域名组。
【命令】
dns domain-name-group group-name
undo dns domain-name-group group-name
【缺省情况】
存在名称为any的默认域名组。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
group-name:域名组名称,为1~31个字符的字符串,不区分大小写。
【使用指导】
在使用域名匹配规则将收到的域名请求发送给指定的域名服务器的场景中,将域名匹配规则与域名组关联可以简化配置,需要匹配多个不同的域名时,无需多次配置域名匹配规则。
在域名组中通过domain-name命令添加完整域名,或者通过subdomain-name命令添加子域名后,将域名匹配规则与域名组关联能够实现根据域名匹配结果分发域名请求的目的。
域名匹配规则与域名组的关联方式包括如下两种:
· 包含域名组。该方式下,设备使用请求中的域名和域名组中的域名进行匹配,匹配上组中任意域名即为匹配成功。
如果域名匹配规则包含名称为any的域名组,则任意域名均能匹配该规则。
· 排除域名组。该方式下,设备使用请求中的域名和域名组中的域名进行匹配,只有与组中所有域名均不匹配才算通过域名匹配规则的过滤。
如果域名匹配规则包含名称为any的域名组,则所有域名均无法匹配该规则。
不能手工创建或删除默认域名组。
多次执行本命令可以创建多个域名组。
不允许删除被域名匹配规则引用的域名组。
【举例】
# 创建名称为1的域名组并进入域名组视图。
<Sysname> system-view
[Sysname] dns domain-name-group 1
[Sysname-domain-name-group-1]
【相关命令】
· dns domain-rule
· domain-name
· subdomain-name
dns domain-rule命令用来配置域名匹配规则。
undo dns domain-rule命令用来删除已配置的域名匹配规则。
【命令】
dns domain-rule rule-id { domain-name domain-name | [ exclude ] domain-name-group group-name | subdomain-name subdomain-name } [ any-vpn-instance | vpn-instance vpn-instance-name ] server-group group-id
undo dns domain-rule rule-id [ domain-name domain-name | [ exclude ] domain-name-group group-name | subdomain-name subdomain-name ]
【缺省情况】
未配置域名匹配规则。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
rule-id:域名匹配规则ID。rule-id的取值范围为1~16。
domain-name domain-name:完整域名。domain-name由“.”分隔的字符串组成,每个字符串的长度不超过63个字符,包括“.”在内的总长度不超过253个字符。不区分大小写,字符串中可以包含字母、数字、“-”、“_”或“.”,如www.example.com。
exclude:表示与指定域名组中的所有域名均不匹配才算通过域名匹配规则的过滤。如果未指定本参数,则表示匹配方式为包含域名组。
domain-name-group domain-group-name:指定域名匹配规则关联的域名组。domain-group-name表示域名组的名称,为1~31个字符的字符串,不区分大小写。指定的域名组必须已经存在。
subdomain-name subdomain-name:子域名。subdomain-name由“.”分隔的字符串组成,每个字符串的长度不超过63个字符,包括“.”在内的总长度不超过253个字符。不区分大小写,字符串中可以包含字母、数字、“-”、“_”或“.”,如.example.com。
any-vpn-instance:表示任意VPN实例,即域名匹配规则忽略域名请求的DNS客户端所属的VPN。如果未指定本参数,则表示发送域名请求的DNS客户端在公网中。
vpn-instance vpn-instance-name:发送域名请求的DNS客户端所属的VPN。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。如果未指定本参数,则表示发送域名请求的DNS客户端在公网中。
server-group group-id:域名服务器组编号,取值范围为1~16。本参数需要指定已存在的域名服务器的编号。
【使用指导】
某些组网环境中,为了使设备(包括DNS客户端和DNS proxy)在收到域名请求后,能够根据请求的域名向指定的域名服务器发送查询请求,需要在设备上创建域名服务器组和匹配的域名匹配规则。
当DNS客户端收到公网或某个VPN内的用户请求后,如果本地不存在对应的域名缓存,则先查看公网或对应VPN内是否存在匹配的域名匹配规则,或是否存在关联任意VPN实例的域名匹配规则。如果存在匹配的域名匹配规则,则向与该匹配规则绑定的域名服务器组中的域名服务器转发该请求。如果该域名未匹配上任何一条域名匹配规则,则DNS客户端不会向域名服务器组中的服务器转发该请求。
域名匹配规则包括以下匹配方式:
· 完整域名匹配方式,设备使用请求中的域名和domain-name指定的域名进行匹配,只有完全对应才算匹配成功。
· 子域名匹配方式,设备使用请求中的域名和subdomain-name指定的域名进行匹配,只有完全对应subdomain-name字符串,才算匹配成功。指定subdomain-name时,请不要携带“*”。
· 包含域名组。该方式下,设备使用请求中的域名和域名组中的域名进行匹配,匹配上组中任意域名即为匹配成功。关联多个域名组时,匹配上任意组中的任意域名即为匹配成功。
如果域名匹配规则包含名称为any的域名组,则任意域名均能匹配该规则。
· 排除域名组。该方式下,设备使用请求中的域名和域名组中的域名进行匹配,只有与组中所有域名均不匹配才算通过域名匹配规则的过滤。关联多个域名组时,只有与所有组中所有域名均不匹配才算通过域名匹配规则的过滤。
如果域名匹配规则包含名称为any的域名组,则所有域名均无法匹配该规则。
一条规则由一个规则ID和同一个VPN唯一标识。对于同一个规则,有如下使用限制:
· 同一个规则只能绑定一个域名服务器组。
· 如下三种配置互斥。如果需要将一种配置更换为另外两种配置中的一种,则需要删除已经存在的配置。
¡ dns domain-rule命令既不指定vpn-instance参数、也不指定any-vpn-instance参数
¡ dns domain-rule命令指定vpn-instance参数
¡ dns domain-rule命令指定any-vpn-instance参数
· 同一个规则最多可以关联8个域名组,但不能同时配置包含域名组和排除域名组的匹配方式。
· 对于同一个规则,可以通过多次执行本命令,将最多8个域名和子域名与同一个域名服务器组绑定。
· 同一规则关联域名组后,不允许在该规则下配置完整域名和子域名。反之,同一规则下配置完整域名或子域名后,不允许该规则与域名组关联。
· 执行undo dns domain-rule命令时,如果携带domain-name domain-name或subdomain-name subdomain-name参数,则只删除添加的完整域名或子域名;如果携带exclude domain-name-group domain-group-name或domain-name-group domain-group-name参数,则删除域名匹配规则关联的域名组;如果未携带任何域名参数,则删除整条域名匹配规则。
· 一条域名匹配规则只能绑定一个域名服务器组。
某个VPN内或公网内的终端用户发送的请求只能匹配相同VPN或公网内域名匹配规则,或忽略域名请求的DNS客户端所属的VPN的域名匹配规则。
域名匹配规则与匹配的域名服务器组可以不在同一个VPN或公网内。
【举例】
# 配置域名匹配规则1,将子域名“.example.com”和完整域名“www.ddeeff.com”与域名服务器组1绑定。
<Sysname> system-view
[Sysname] dns domain-rule 1 subdomain-name .example.com server-group 1
[Sysname] dns domain-rule 1 domain-name www.ddeeff.com server-group 1
# 配置域名匹配规则1与名称为group1的域名组关联,并与域名服务器组1绑定。
<Sysname> system-view
[Sysname] dns domain-name-group group1
[Sysname-dns-domain-name-group-group1] domain-name www.example.com
[Sysname-dns-domain-name-group-group1] subdomain-name example.com
[Sysname-dns-domain-name-group-group1] quit
[Sysname] dns domain-rule 1 domain-name-group group1 server-group 1
【相关命令】
· dns domain-name-group
· dns server-group
dns dscp命令用来指定DNS客户端或DNS proxy发送DNS报文的DSCP优先级。
undo dns dscp命令用来恢复缺省情况。
【命令】
dns dscp dscp-value
undo dns dscp
【缺省情况】
DNS客户端或DNS proxy发送DNS报文的DSCP优先级为0。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
dscp-value:DNS报文的DSCP优先级,取值范围为0~63。
【使用指导】
DSCP优先级用来体现报文自身的优先等级,决定报文传输的优先程度。配置的DSCP优先级的取值越大,报文的优先级越高。
【举例】
# 配置发送的DNS报文的DSCP优先级为30。
<Sysname> system-view
[Sysname] dns dscp 30
dns fast-reply enable命令用来开启DNS快速应答功能。
undo dns fast-reply enable命令用来关闭DNS快速应答功能。
【命令】
dns fast-reply enable
undo dns fast-reply enable
【缺省情况】
DNS快速应答功能处于关闭状态。
【视图】
系统视图
【缺省用户角色】
network-admin
【使用指导】
本功能每秒钟能够处理的DNS请求报文数量较多,适用于对DNS报文处理性能要求较高的场景。
配置本命令后,设备会侦听过路的DNS请求报文(目前只支持UDP报文),解析出报文中的被请求的域名,然后查找本地的静态域名解析表,根据查询结果的不同决定是否进行DNS快速应答,具体工作机制如下:
· 在本地静态域名解析表中查找到域名和IP地址信息,设备直接应答DNS请求,不会将报文转发给DNS服务器。
· 未在本地静态域名解析表中查找到域名和IP地址信息,设备将DNS请求转发给DNS服务器。
本命令的配置同时用于IPv4和IPv6的DNS快速应答。
本命令对带标签的DNS报文无效。
【举例】
# 开启DNS快速应答功能。
<Sysname> system-view
[Sysname] dns fast-reply enable
dns proxy enable命令用来开启DNS proxy功能。
undo dns proxy enable命令用来关闭DNS proxy功能。
【命令】
dns proxy enable
undo dns proxy enable
【缺省情况】
DNS proxy功能处于关闭状态。
【视图】
系统视图
【缺省用户角色】
network-admin
【使用指导】
本命令的配置同时用于IPv4域名解析和IPv6域名解析。
【举例】
# 开启DNS proxy功能。
<Sysname> system-view
[Sysname] dns proxy enable
dns server命令用来配置域名服务器的IPv4地址。
undo dns server命令用来删除域名服务器的IPv4地址。
【命令】
dns server ip-address [ vpn-instance vpn-instance-name ] [ priority priority-value ]
undo dns server [ ip-address ] [ vpn-instance vpn-instance-name ]
【缺省情况】
未配置域名服务器的IPv4地址。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
ip-address:域名服务器的IPv4地址。
vpn-instance vpn-instance-name:为指定VPN实例配置域名服务器的IPv4地址。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。如果未指定本参数,则表示为公网配置域名服务器的IPv4地址。
priority priority-value:域名服务器的优先级。取值范围为1~255,优先级的值越小,优先级越高。缺省值为100。
【使用指导】
在进行服务器域名解析时,系统按照配置的域名服务器优先级从高到低的顺序,依次向各个域名服务器发送查询请求。优先级相同时,则按照域名服务器IPv4地址从小到大的顺序,依次向各个域名服务器发送查询请求。用户可以通过修改域名服务器的优先级来调整发送查询请求的先后顺序。
公网或单个VPN实例内最多可以配置6个域名服务器的IPv4地址。可同时在公网和VPN实例内配置域名服务器的IPv4地址。
执行undo dns server命令时如果未指定ip-address参数,则删除公网或指定VPN实例中的所有域名服务器IPv4地址。
【举例】
# 配置域名服务器的IPv4地址为172.16.1.1。
<Sysname> system-view
[Sysname] dns server 172.16.1.1
【相关命令】
· display dns server
dns server命令用来在域名服务器组中添加域名服务器。
undo dns server命令用来删除在域名服务器组中添加的域名服务器。
【命令】
dns server ip-address [ priority priority-value ]
undo dns server [ ip-address ]
【缺省情况】
域名服务器组中无域名服务器。
【视图】
域名服务器组视图
【缺省用户角色】
network-admin
【参数】
ip-address:域名服务器的IPv4地址。
priority priority-value:域名服务器的优先级。取值范围为1~255,优先级的值越小,优先级越高。缺省值为100。
【使用指导】
在进行服务器组域名解析时,系统按照优先级从高到低的顺序,依次向各个域名服务器发送查询请求。优先级相同时,则按照在域名服务器组中执行display this命令显示服务器IPv4地址的先后顺序,依次向各个域名服务器发送查询请求。用户可以通过修改域名服务器的优先级来调整发送查询请求的先后顺序。
单个域名服务器组内最多可以配置6个域名服务器的IPv4地址。
执行undo dns server命令时如果未指定ip-address参数,则删除域名服务器组中的所有域名服务器IPv4地址。
【举例】
# 在域名服务器组1中,添加IPv4地址172.16.1.1的域名服务器。
<Sysname> system-view
[Sysname] dns server-group 1
[Sysname-dns-server-group-1] dns server 172.16.1.1
dns server-group命令用来创建域名服务器组并进入域名服务器组视图。如果已经创建了域名服务器组,则直接进入该域名服务器组视图。
undo dns server-group命令用来删除指定的域名服务器组。
【命令】
dns server-group group-id [ vpn-instance vpn-instance-name ]
undo dns server-group group-id
【缺省情况】
不存在域名服务器组。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
group-id:域名服务器组编号,取值范围为1~16。
vpn-instance vpn-instance-name:指定域名服务器组所属的VPN。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。如果未指定本参数,则表示创建的域名服务器组在公网中。
【使用指导】
某些组网环境中,为了使设备(包括DNS客户端和DNS代理)在收到域名请求后可以向指定的域名服务器发送查询请求,需要在设备上创建域名服务器组。设备上收到公网或某个VPN内的用户请求后,如果本地不存在对应的域名缓存,则查看公网或对应VPN内是否存在匹配的域名匹配规则。如果存在匹配规则,则向与该域名绑定的域名服务器组中的域名服务器转发该请求。如果该域名未匹配上任何一条域名服务器组匹配规则,则DNS客户端不会向域名服务器组中的服务器转发该请求。
只有通过定义域名服务器组匹配规则,将域名服务器组和域名绑定后,设备才会向该域名服务器组转发请求。
【举例】
# 创建域名服务器组1。
<Sysname> system-view
[Sysname] dns server-group 1
[Sysname-dns-server-group-1]
【相关命令】
· dns domain-rule
dns source-interface命令用来指定DNS报文的源接口。
undo dns source-interface命令用来恢复缺省情况。
【命令】
dns source-interface interface-type interface-number [ vpn-instance vpn-instance-name ]
undo dns source-interface interface-type interface-number [ vpn-instance vpn-instance-name ]
【缺省情况】
设备根据DNS server的地址,通过路由表查找报文的出接口,并将该出接口的主IP地址作为发送到该服务器的DNS查询报文的源地址。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
interface-type interface-number:源接口的接口类型和接口编号。
vpn-instance vpn-instance-name:为指定VPN实例配置DNS报文的源接口。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。如果未指定本参数,则表示为公网配置DNS报文的源接口。
【使用指导】
通过本命令指定DNS报文的源接口后,系统将选择指定接口的主IPv4地址或根据RFC 3484中定义的规则选择指定接口的某个IPv6地址,作为DNS查询报文的源地址。
本命令的配置同时用于IPv4域名解析和IPv6域名解析。
公网或每个VPN实例内只能配置1个源接口。多次执行本命令,最后一次执行的命令生效。可同时在公网和VPN实例内配置源接口。
无论配置的源接口是否属于指定的VPN实例,该配置都会生效。不建议将不属于VPN实例的接口配置为该VPN实例的源接口。
【举例】
# 指定公网DNS报文的源接口为VLAN接口2。
<Sysname> system-view
[Sysname] dns source-interface vlan-interface 2
dns spoofing命令用来开启DNS spoofing功能,并指定应答的IPv4地址。
undo dns spoofing命令关闭DNS spoofing功能。
【命令】
dns spoofing ip-address [ vpn-instance vpn-instance-name ]
undo dns spoofing ip-address [ vpn-instance vpn-instance-name ]
【缺省情况】
DNS spoofing功能处于关闭状态。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
ip-address:用来欺骗性应答域名解析请求的IPv4地址。
vpn-instance vpn-instance-name:为指定VPN实例配置DNS spoofing功能。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。如果未指定本参数,则表示为公网配置DNS spoofing功能。
【使用指导】
配置DNS spoofing前,需要先开启DNS proxy功能。
开启DNS spoofing功能后,如果设备上未配置域名服务器地址或不存在到达域名服务器的路由,则会利用配置的应答IP地址作为域名解析结果,欺骗性地应答A类域名解析请求。
公网或每个VPN实例内只能配置1个DNS spoofing应答的IPv4地址。多次执行本命令,最后一次执行的命令生效。可同时在公网和VPN实例内配置DNS spoofing功能。
【举例】
# 开启公网的DNS spoofing功能,并指定应答的IPv4地址为1.1.1.1。
<Sysname> system-view
[Sysname] dns proxy enable
[Sysname] dns spoofing 1.1.1.1
【相关命令】
· dns proxy enable
dns transparent-proxy enable命令用来开启DNS源地址透明代理功能。
undo dns transparent-proxy enable命令用来关闭DNS源地址透明代理功能。
【命令】
dns transparent-proxy enable [ authorizing ]
undo dns transparent-proxy enable [ authorizing ]
【缺省情况】
DNS透明代理功能处于关闭状态。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
authorizing:仅为Authorizing授权状态用户的DNS请求报文提供源地址透明代理服务。
【使用指导】
DNS透明代理指的是,DNS客户端感知不到代理服务存在的代理模式。DNS源地址透明代理不仅能够提供代理服务,还会修改DNS请求报文的源地址,从而实现发送DNS请求报文的设备能够接收到相应的DNS响应报文,适用于需要基于域名做策略的场景(如安全策略、带宽策略等)。
与DNS代理功能不同的是,DNS客户端不需要将DNS服务器的地址指定为DNS源地址透明代理设备的地址,简化了客户端的配置。在一些负载均衡场景中,为了保证基于域名的策略能够成功对报文进行控制,建议使用DNS源地址透明代理功能。
开启DNS源地址透明代理功能后,设备开始监听过路的DNS请求报文和DNS应答报文,并记录域名解析信息,以便提供代理功能。具体工作机制如下:
(1) DNS源地址透明代理设备监听所有过路DNS报文,当收到DNS请求报文时,设备根据一定的规则从能够到达DNS服务器的本地IP地址选取一个,并将其作为修改后的DNS请求报文的源IP地址,使得DNS应答报文能够返回本设备。
(2) DNS源地址透明代理设备收到DNS服务器的应答报文后,记录域名解析的结果,并将报文转发给DNS客户端。DNS客户端利用域名解析的结果进行相应的处理。后续DNS透明代理设备收到DNS请求报文后,首先查找DNS透明代理记录的表项,如果存在请求的信息,则DNS透明代理设备直接通过DNS应答报文将域名解析结果返回给DNS client。如果不存在请求的信息,则DNS透明代理设备将报文转发给域名服务器进行解析。
DNS源地址透明代理功能能够对设备上所有类型的DNS请求报文进行源地址透明代理,当设备上接收到的DNS请求报文较多时,设备的性能压力较大。如果仅需要对授权属性中包含ACL、重定向URL的接入用户的DNS请求报文进行源地址透明代理,配置本命令时请指定authorizing参数,以减小设备压力。
DNS源地址透明代理功能和DNS快速应答功能不能同时使用。
DNS源地址透明代理功能不支持跨VPN使用,即设备上DNS报文的出入接口必须属于同一个VPN。
【举例】
# 开启DNS源地址透明代理功能。
<Sysname> system-view
[Sysname] dns transparent-proxy enable
【相关命令】
· display dns transparent host
· dns fast-reply enable
· dns proxy enable
dns trust-interface命令用来指定DNS信任接口。
undo dns trust-interface命令用来删除指定的DNS信任接口。
【命令】
dns trust-interface interface-type interface-number
undo dns trust-interface [ interface-type interface-number ]
【缺省情况】
未指定任何接口为信任接口。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
interface-type interface-number:DNS信任接口的接口类型和接口编号。
【使用指导】
缺省情况下,任意接口通过DHCP等协议动态获得的域名后缀和域名服务器信息都将作为有效信息,用于域名解析。如果网络攻击者通过DHCP服务器为设备分配错误的域名后缀和域名服务器地址,则会导致设备域名解析失败,或解析到错误的结果。通过本配置指定信任接口后,域名解析时只采用信任接口动态获得的域名后缀和域名服务器信息,非信任接口获得的信息不能用于域名解析,从而在一定程度上避免这类攻击。
本命令同时用于IPv4域名解析和IPv6域名解析。
设备最多可以配置128个信任接口。
执行undo dns trust-interface命令时,如果未指定任何接口,则删除所有的DNS信任接口,恢复到缺省情况。
【举例】
# 指定VLAN接口2为DNS信任接口。
<Sysname> system-view
[Sysname] dns trust-interface vlan-interface 2
domain-name命令用来在域名组中添加完整域名。
undo domain-name命令用来添删除域名组中指定的完整域名。
【命令】
domain-name domain-name
undo domain-name domain-name
【缺省情况】
域名组中未配置完整域名。
【视图】
域名组视图
【缺省用户角色】
network-admin
【参数】
domain-name:完整域名,由“.”分隔的字符串组成,每个字符串的长度不超过63个字符,包括“.”在内的总长度不超过253个字符。不区分大小写,字符串中可以包含字母、数字、“-”、“_”或“.”,如www.example.com。
【使用指导】
设备使用请求中的域名和域名组中的完整域名进行匹配时,只有完全对应才算匹配成功。
多次执行本命令可以添加多个完整域名。
【举例】
# 在域名组1中添加完整域名www.example.com。
<Sysname> system-view
[Sysname] dns domain-name-group 1
[Sysname-domain-name-group-1] domain-name www.example.com
【相关命令】
· dns domain-name-group
· subdomain-name
health-check enable命令用来开启DNS服务器健康探测功能。
undo health-check enable命令用来关闭DNS服务器健康探测功能。
【命令】
health-check enable
undo health-check enable
【缺省情况】
DNS服务器健康探测功能处于关闭状态。
【视图】
域名服务器组视图
【缺省用户角色】
network-admin
【使用指导】
DNS服务器健康探测功能用于对域名服务器组中域名服务器的可用性进行探测,避免设备将报文转发给不可用的域名服务器,提高用户访问域名的体验。
当设备收到DNS请求报文时,如果DNS请求报文匹配上域名匹配规则,则设备从域名服务器组中选择一个域名服务器,并将该报文转发给选中的域名服务器。选择服务器的机制如下:
(1) 如果域名服务器配置了优先级,则按照优先级从高到低的顺序依次选择域名服务器。
(2) 如果域名服务器未配置优先级或优先级相同,则按照在域名服务器组中执行display this命令显示服务器地址的先后顺序选择域名服务器。
设备向域名服务器发送请求报文后,若2s内无法收到该选中域名服务器的DNS响应报文,设备会重新选择域名服务器。为了避免设备选中不可用的域名服务器,请使用本功能对域名服务器可用性进行检测。具体机制如下:
(1) 设备周期性进行健康探测,即周期性向域名服务器组中的各个域名服务器分别发送一个DNS请求报文,根据是否能收到DNS响应报文判断域名服务器的可用性。
(2) 如果设备收到DNS响应报文,则认为该DNS服务器可用。
(3) 如果设备连续3次向某DNS服务器发送DNS请求报文后,均未收到DNS响应报文,则认为该DNS服务器不可用。
在获取到域名服务器组中各个域名服务器的健康状态后,设备会自动排除不可用的DNS服务器,然后按照前述选择机制选择一个域名服务器转发报文。
【举例】
# 开启域名服务器组1的DNS服务器健康探测功能。
<Sysname> system-view
[Sysname] dns server-group 1
[Sysname-server-group-1] health-check enable
【相关命令】
· display dns server health status
ip host命令用来配置主机名及其对应的主机IPv4地址。
undo ip host命令用来删除主机名及其对应的主机IPv4地址。
【命令】
ip host host-name ip-address [ vpn-instance vpn-instance-name ]
undo ip host host-name ip-address [ vpn-instance vpn-instance-name ]
【缺省情况】
不存在主机名及IPv4地址的对应关系。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
host-name:主机名,为1~253个字符的字符串,不区分大小写,字符串中只能包含字母、数字、“-”、“_”和“.”,且需满足以下要求:
· 主机名以“.”字符分割成多个字符串,单个字符串的长度不超过63个字符。
· 主机名不能以“.”字符开头或结尾。
· 主机名不能包含两个连续的“.”字符。
ip-address:与主机名对应的IPv4地址。
vpn-instance vpn-instance-name:为指定VPN实例配置主机名和IPv4地址的对应关系。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。如果未指定本参数,则表示为公网配置主机名和IPv4地址的对应关系。
【使用指导】
公网或单个VPN实例内最多可以配置1024个主机名和IPv4地址的对应关系。可同时在公网和VPN实例内配置主机名和IPv4地址的对应关系。
在公网或单个VPN实例内,一个主机名只能对应一个IPv4地址。多次执行本命令,最后一次执行的命令生效。
ip、-a、-c、-f、-h、-i、-m、-n、-p、-q、-r、-s、-t、-tos、-v和-vpn-instance已被系统用作ping命令的参数关键字,在配置主机名时,请避免使用相同的字符串作为主机名。ping命令支持的参数形式,请参考“网络管理和监控”中的“ping”命令。
【举例】
# 配置公网内主机名aaa对应的IPv4地址为10.110.0.1。
<Sysname> system-view
[Sysname] ip host aaa 10.110.0.1
【相关命令】
· display dns host
ipv6 dns dscp命令用来指定IPv6 DNS客户端或IPv6 DNS proxy发出的IPv6 DNS报文的DSCP优先级。
undo ipv6 dns dscp命令用来恢复缺省情况。
【命令】
ipv6 dns dscp dscp-value
undo ipv6 dns dscp
【缺省情况】
IPv6 DNS客户端或IPv6 DNS proxy发出的IPv6 DNS报文的DSCP优先级为0。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
dscp-value:IPv6 DNS报文的DSCP优先级,取值范围为0~63。
【使用指导】
DSCP优先级用来体现报文自身的优先等级,决定报文传输的优先程度。配置的DSCP优先级的取值越大,报文的优先级越高。
【举例】
# 配置发送的IPv6 DNS报文的DSCP优先级为30。
<Sysname> system-view
[Sysname] ipv6 dns dscp 30
ipv6 dns server命令用来配置域名服务器的IPv6地址。
undo ipv6 dns server命令用来删除域名服务器的IPv6地址。
【命令】
ipv6 dns server ipv6-address [ interface-type interface-number ] [ vpn-instance vpn-instance-name ] [ priority priority-value ]
undo ipv6 dns server [ ipv6-address [ interface-type interface-number ] ] [ vpn-instance vpn-instance-name ]
【缺省情况】
未配置域名服务器的IPv6地址。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
ipv6-address:域名服务器的IPv6地址。
interface-type interface-number:指定报文的出接口的接口类型和接口编号。如果未指定本参数,则根据路由表查找报文的出接口。域名服务器的IPv6地址为链路本地地址时,必须指定本参数。域名服务器的IPv6地址为全球单播地址时,无法指定本参数。
vpn-instance vpn-instance-name:为指定VPN实例配置域名服务器的IPv6地址。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。如果未指定本参数,则表示为公网配置域名服务器的IPv6地址。
priority priority-value:域名服务器的优先级。取值范围为1~255,优先级的值越小,优先级越高。缺省值为100。
【使用指导】
在进行服务器域名解析时,系统按照配置的域名服务器优先级从高到低的顺序,依次向各个域名服务器发送查询请求。优先级相同时,则按域名服务器IPv6地址从小到大的顺序,依次向各个域名服务器发送查询请求。用户可以通过修改域名服务器的优先级来调整发送查询请求的先后顺序。
公网或单个VPN实例内最多可以配置6个域名服务器的IPv6地址。可同时在公网和VPN实例内配置域名服务器的IPv6地址。
执行undo ipv6 dns server命令时如果未指定ipv6-address参数,则删除公网或指定VPN实例中的所有域名服务器IPv6地址。
【举例】
# 配置公网内域名服务器的IPv6地址为2002::1。
<Sysname> system-view
[Sysname] ipv6 dns server 2002::1
【相关命令】
· display ipv6 dns server
ipv6 dns server命令用来在域名服务器组中添加域名服务器。
undo ipv6 dns server命令用来在域名服务器组中添加的域名服务器。
【命令】
ipv6 dns server ipv6-address [ interface-type interface-number ] [ priority priority-value ]
undo ipv6 dns server [ ipv6-address [ interface-type interface-number ] ]
【缺省情况】
域名服务器组中无域名服务器。
【视图】
域名服务器组视图
【缺省用户角色】
network-admin
【参数】
ipv6-address:域名服务器的IPv6地址。
interface-type interface-number:指定报文的出接口的接口类型和接口编号。如果未指定本参数,则根据路由表查找报文的出接口。域名服务器的IPv6地址为链路本地地址时,必须指定本参数。域名服务器的IPv6地址为全球单播地址时,无法指定本参数。
priority priority-value:域名服务器的优先级。取值范围为1~255,优先级的值越小,优先级越高。缺省值为100。
【使用指导】
在进行服务器组域名解析时,系统按照优先级从高到低的顺序,依次向各个域名服务器发送查询请求。优先级相同时,则按照在域名服务器组中执行display this命令显示服务器IPv6地址的先后顺序,依次向各个域名服务器发送查询请求。用户可以通过修改域名服务器的优先级来调整发送查询请求的先后顺序。
单个域名服务器组内最多可以配置6个域名服务器的IPv6地址。
执行undo ipv6 dns server命令时如果未指定ipv6-address参数,则删除域名服务器组中的所有域名服务器IPv6地址。
【举例】
# 在域名服务器组1中,添加IPv6地址为2000::1的域名服务器。
<Sysname> system-view
[Sysname] dns server-group 1
[Sysname-server-group-1] ipv6 dns server 2000::1
ipv6 dns spoofing命令用来开启DNS spoofing功能,并指定应答的IPv6地址。
undo ipv6 dns spoofing命令用来关闭DNS spoofing功能。
【命令】
ipv6 dns spoofing ipv6-address [ vpn-instance vpn-instance-name ]
undo ipv6 dns spoofing ipv6-address [ vpn-instance vpn-instance-name ]
【缺省情况】
DNS spoofing功能处于关闭状态。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
ipv6-address:用来欺骗性应答域名解析请求的IPv6地址。
vpn-instance vpn-instance-name:为指定VPN实例配置DNS spoofing功能。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。如果未指定本参数,则表示为公网配置DNS spoofing功能。
【使用指导】
本命令必须和dns proxy enable命令一起使用。
开启DNS spoofing功能后,如果设备上未配置域名服务器地址或不存在到达域名服务器的路由,则会利用配置的应答IPv6地址作为域名解析结果,欺骗性地应答AAAA类域名解析请求。
公网或每个VPN实例内只能配置1个DNS spoofing应答的IPv6地址。多次执行本命令,最后一次执行的命令生效。可同时在公网和VPN实例内配置DNS spoofing功能。
【举例】
# 为公网开启DNS spoofing功能,并指定应答的IPv6地址为2001::1。
<Sysname> system-view
[Sysname] dns proxy enable
[Sysname] ipv6 dns spoofing 2001::1
【相关命令】
· dns proxy enable
ipv6 host命令用来配置主机名及其对应的主机IPv6地址。
undo ipv6 host命令用来删除主机名及其对应的主机IPv6地址。
【命令】
ipv6 host host-name ipv6-address [ vpn-instance vpn-instance-name ]
undo ipv6 host host-name ipv6-address [ vpn-instance vpn-instance-name ]
【缺省情况】
不存在主机名及IPv6地址的对应关系。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
host-name:主机名,为1~253个字符的字符串,不区分大小写,字符串中只能包含字母、数字、“-”、“_”和“.”,且需满足以下要求:
· 主机名以“.”字符分割成多个字符串,单个字符串的长度不超过63个字符。
· 主机名不能以“.”字符开头或结尾。
· 主机名不能包含两个连续的“.”字符。
ipv6-address:与主机名对应的IPv6地址。
vpn-instance vpn-instance-name:为指定VPN实例配置主机名和IPv6地址的对应关系。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。如果未指定本参数,则表示为公网配置主机名和IPv6地址的对应关系。
【使用指导】
公网或每个VPN实例内最多可以配置1024个主机名和IPv6地址的对应关系。可同时在公网和VPN实例内配置主机名和IPv6地址的对应关系。
在公网或同一个VPN实例内,一个主机名只能对应一个IPv6地址。多次执行本命令,最后一次执行的命令生效。
-a、-c、-i、-m、-q、-s、-t、-tc、-v和-vpn-instance已被系统用作ping ipv6命令的参数关键字,在配置主机名时,请避免使用相同的字符串作为主机名。ping ipv6命令支持的参数形式,请参考“网络管理和监控”中的“ping ipv6”命令。
【举例】
# 配置公网内主机名aaa对应的IPv6地址为2001::1。
<Sysname> system-view
[Sysname] ipv6 host aaa 2001::1
【相关命令】
· ip host
reset dns host命令用来清除动态域名解析缓存信息。
【命令】
reset dns host [ ip | ipv6 ] [ vpn-instance vpn-instance-name ]
【视图】
用户视图
【缺省用户角色】
network-admin
【参数】
ip:清除A类查询的动态缓存信息。A类查询用来解析域名对应的IPv4地址。
ipv6:清除AAAA类查询的动态缓存信息。AAAA类查询用来解析域名对应的IPv6地址。
vpn-instance vpn-instance-name:清除指定VPN实例的动态域名解析缓存信息。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。如果未指定本参数,则清除公网的动态域名解析缓存信息。
【使用指导】
如果未指定ip和ipv6参数,则清除所有查询类型的动态域名解析缓存信息。
使用本命令能够清除如下缓存信息:
· DNS客户端上的动态域名解析缓存信息。
· 开启DNS源地址透明代理的设备上的动态域名解析缓存信息。
【举例】
# 清除公网所有查询类型的动态域名解析缓存信息。
<Sysname> reset dns host
【相关命令】
· display dns host
subdomain-name命令用来在域名组中添加子域名。
undo subdomain-name命令用来删除域名组中指定的子域名。
【命令】
subdomain-name subdomain-name
undo subdomain-name subdomain-name
【缺省情况】
域名组中未配置子域名。
【视图】
域名组视图
【缺省用户角色】
network-admin
【参数】
subdomain-name:子域名,由“.”分隔的字符串组成,每个字符串的长度不超过63个字符,包括“.”在内的总长度不超过253个字符。不区分大小写,字符串中可以包含字母、数字、“-”、“_”或“.”,如.example.com。字符串中不可包含“*”。
【使用指导】
设备使用请求中的域名和域名组中的子域名进行匹配时,只有包含subdomain-name字符串,才算匹配成功。例如,example.net包含两个子域名a.example.net和b.example.net,subdomain-name设置为不同值时,能够匹配的域名不同:
· subdomain-name设置为.example.net时,仅a.example.net和b.example.net能够与设置的子域名匹配。
· subdomain-name设置为example.net时,example.net、a.example.net和b.example.net均能够与设置的子域名匹配。
多次执行本命令可以添加多个子域名。
【举例】
# 在域名组1中添加子域名com。
<Sysname> system-view
[Sysname] dns domain-name-group 1
[Sysname-domain-name-group-1] subdomain-name com
【相关命令】
· dns domain-name-group
· domain-name
ddns apply policy命令用来在接口上应用指定的DDNS策略来更新指定的FQDN与接口主IP地址的对应关系,并启动DDNS更新。
undo ddns apply policy命令用来在接口上取消应用DDNS策略,停止DDNS更新。
【命令】
ddns apply policy policy-name [ fqdn domain-name ]
undo ddns apply policy policy-name
【缺省情况】
没有为接口指定任何DDNS策略和需要更新的FQDN,且未启动DDNS更新。
【视图】
接口视图
【缺省用户角色】
network-admin
【参数】
policy-name:DDNS策略名称,为1~32个字符的字符串,不区分大小写。
fqdn domain-name:指定需要更新该FQDN与IP地址的对应关系,用于替换DDNS更新请求URL中的<h>。domain-name为主机名,主机名,为1~253个字符的字符串,不区分大小写,字符串中可以包含字母、数字、“-”、“_”和“.”。
【使用指导】
一个接口上最多可以应用4个DDNS策略。
重复应用名称相同的DDNS策略,并指定不同的FQDN时,最后一次执行的命令生效,同时发起一次DDNS更新。
【举例】
# 在VLAN接口2下指定应用DDNS策略steven_policy来更新合格域名www.example.com与IP地址的对应关系,并启动DDNS更新功能。
<Sysname> system-view
[Sysname] interface vlan-interface 2
[Sysname-Vlan-interface2] ddns apply policy steven_policy fqdn www.example.com
【相关命令】
· ddns policy
· display ddns policy
ddns dscp命令用来配置发送DDNS报文的DSCP优先级。
undo ddns dscp命令用来恢复缺省情况。
【命令】
ddns dscp dscp-value
undo ddns dscp
【缺省情况】
配置发送DDNS报文的DSCP优先级为0。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
dscp-value:DDNS报文的DSCP优先级,取值范围为0~63。
【使用指导】
DSCP优先级用来体现报文自身的优先等级,决定报文传输的优先程度。配置的DSCP优先级的取值越大,报文的优先级越高。
【举例】
# 配置发送的DDNS报文的DSCP优先级为30。
<Sysname> system-view
[Sysname] ddns dscp 30
ddns policy命令用来创建DDNS策略,并进入DDNS策略视图。如果指定的DDNS策略视图已存在,则直接进入DDNS策略视图。
undo ddns policy命令用来删除DDNS策略。
【命令】
ddns policy policy-name
undo ddns policy policy-name
【缺省情况】
设备上不存在DDNS策略。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
policy-name:DDNS策略名称,为1~32个字符的字符串,不区分大小写。
【使用指导】
设备上最多可以创建16个DDNS策略。
【举例】
# 创建名称为steven_policy的DDNS策略,并进入DDNS策略视图。
<Sysname> system-view
[Sysname] ddns policy steven_policy
【相关命令】
· display ddns policy
· ddns apply policy
display ddns policy命令用来显示DDNS策略的信息。
【命令】
display ddns policy [ policy-name ]
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【参数】
policy-name:DDNS策略名称,为1~32个字符的字符串,不区分大小写。如果未指定本参数,则显示所有DDNS策略的信息。
【举例】
# 显示名称为steven_policy的DDNS策略的信息。
<Sysname> display ddns policy steven_policy
DDNS policy: steven_policy
URL : http://members.3322.org/dyndns/update?
system=dyndns&hostname=<h>&myip=<a>
Username : steven
Password : ******
Method : GET
SSL client policy:
Interval : 1 days 0 hours 1 minutes
# 显示所有DDNS策略的信息。
<Sysname> display ddns policy
DDNS policy: steven_policy
URL : http://members.3322.org/dyndns/update?system=
dyndns&hostname=<h>&myip=<a>
Username : steven
Password : ******
Method : GET
SSL client policy:
Interval : 0 days 0 hours 30 minutes
DDNS policy: tom-policy
URL : http://members.3322.org/dyndns/update?system=
dyndns&hostname=<h>&myip=<a>
Username :
Password :
Method : GET
SSL client policy:
Interval : 0 days 0 hours 15 minutes
DDNS policy: u-policy
URL : oray://phddns60.oray.net
Username : username
Password :
Method : -
SSL client policy:
Interval : 0 days 0 hours 15 minutes
表2-1 display ddns policy命令显示信息描述表
字段 |
描述 |
DDNS policy |
DDNS策略名称 |
URL |
DDNS更新请求的URL地址。未配置时显示为空 |
Username |
登录DDNS服务器的用户名。未配置时显示为空 |
Password |
登录DDNS服务器的密码。未配置时显示为空,有配置时显示为“******” |
Method |
采用HTTP或HTTPS报文发送DDNS更新请求时,使用的参数传输方式 取值包括: · GET:表示参数传输方式为GET方式 · POST:表示参数传输方式为POST方式 |
SSL client policy |
关联的SSL客户端策略名称。未配置时显示为空 |
Interval |
定时发起DDNS更新请求的时间间隔 |
【相关命令】
· ddns policy
interval命令用来指定定时发起更新请求的时间间隔。
undo interval命令用来恢复缺省情况。
【命令】
interval days [ hours [ minutes ] ]
undo interval
【缺省情况】
定时发起DDNS更新请求的时间间隔是1小时。
【视图】
DDNS策略视图
【缺省用户角色】
network-admin
【参数】
days:天,取值范围为0~365。
hours:小时,取值范围为0~23。
minutes:分钟,取值范围为0~59。
【使用指导】
不论是否到达定时发起更新请求的时间,只要对应接口的主IP地址发生改变或接口的链路状态由down变为up,都会立即发起更新请求。
如果配置时间间隔为0,则不会定时发起更新,除非对应接口的IP地址发生改变或接口的链路状态由down变为up。
多处执行本命令,最后一次执行的命令生效。如果DDNS策略已经应用到接口上,则立即触发一次DDNS更新,并以最后一次配置的时间间隔为更新周期。
【举例】
# 为DDNS策略steven_policy指定定时发起更新请求的时间间隔为1天零1分。
<Sysname> system-view
[Sysname] ddns policy steven_policy
[Sysname-ddns-policy-steven_policy] interval 1 0 1
【相关命令】
· display ddns policy
· ddns policy
method命令用来配置采用HTTP或HTTPS报文发送DDNS更新请求时使用的参数传输方式。
undo method命令用来恢复缺省情况。
【命令】
method { http-get | http-post }
undo method
【缺省情况】
采用HTTP或HTTPS报文发送DDNS更新请求时使用的参数的传输方式为http-get。
【视图】
DDNS策略视图
【缺省用户角色】
network-admin
【参数】
http-get:参数的传输方式为http-get。
http-post:参数的传输方式为http-post。
【使用指导】
采用HTTP或HTTPS报文发送DDNS更新请求时,不同的DDNS服务器要求使用的参数传输方式可能不同。例如DHS服务器,需要使用http-post参数传输方式。通过本配置可以修改参数传输方式,以满足DDNS服务器的要求。
本命令仅在基于HTTP或HTTPS与DDNS服务器通信时生效。基于其他协议与DDNS服务器通信时,本命令不生效。
通过本命令修改DDNS策略的参数传输方式时,如果该DDNS策略已经应用到接口上,则立即触发一次DDNS更新。
【举例】
# 配置DDNS策略steven_policy采用HTTP或HTTPS报文发送DDNS更新请求时使用的参数传输方式为http-post方式。
<Sysname> system-view
[Sysname] ddns policy steven_policy
[Sysname-ddns-policy-steven_policy] method http-post
【相关命令】
· display ddns policy
· ddns policy
password命令用来指定登录DDNS服务器的密码。
undo password命令用来恢复缺省情况。
【命令】
password { cipher | simple } string
undo password
【缺省情况】
未指定登录DDNS服务器的密码。
【视图】
DDNS策略视图
【缺省用户角色】
network-admin
【参数】
cipher:表示以密文方式设置密码。
simple:表示以明文方式设置密码,该密码将以密文形式存储。
string:密码字符串,区分大小写。明文密码为1~32个字符的字符串,密文密码为1~73个字符的字符串。
【举例】
# 为DDNS策略steven_policy指定登录DDNS服务器的密码为nevets。
<Sysname> system-view
[Sysname] ddns policy steven_policy
[Sysname-ddns-policy-steven_policy] password simple nevets
【相关命令】
· display ddns policy
· ddns policy
· url
· username
ssl-client-policy命令用来指定与DDNS策略关联的SSL客户端策略。
undo ssl-client-policy命令用来恢复缺省情况。
【命令】
ssl-client-policy policy-name
undo ssl-client-policy
【缺省情况】
未指定与DDNS策略关联的SSL客户端策略。
【视图】
DDNS策略视图
【缺省用户角色】
network-admin
【参数】
policy-name:SSL客户端策略名称,为1~31个字符的字符串,不区分大小写。
【使用指导】
SSL客户端策略只对URL为HTTPS地址的DDNS更新请求有效。
多次执行本命令,为同一个DDNS策略关联不同的SSL客户端策略时,DDNS策略将只与最后配置的SSL客户端策略关联。
【举例】
# 将SSL客户端策略ssl_policy与DDNS策略steven_policy关联。
<Sysname> system-view
[Sysname] ddns policy steven_policy
[Sysname-ddns-policy-steven_policy] ssl-client-policy ssl_policy
【相关命令】
· ddns policy
· display ddns policy
· ssl-client-policy(安全命令参考/SSL)
url命令用来指定DDNS更新请求的URL地址。
undo url命令用来恢复缺省情况。
【命令】
url request-url
undo url
【缺省情况】
未指定DDNS更新请求的URL地址。
【视图】
DDNS策略视图
【缺省用户角色】
network-admin
【参数】
request-url:DDNS更新请求的URL地址,为1~240个字符的字符串,区分大小写。
【使用指导】
不同DDNS服务器的请求更新URL地址有所不同。常见的DDNS服务器URL地址格式如表2-2所示。
表2-2 常见的DDNS更新请求URL地址格式列表
DDNS服务器 |
DDNS更新请求的URL地址格式 |
www.3322.org |
http://members.3322.org/dyndns/update?system=dyndns&hostname=<h>&myip=<a> |
DYNDNS |
http://members.dyndns.org/nic/update?system=dyndns&hostname=<h>&myip=<a> |
DYNS |
http://www.dyns.cx/postscript.php?host=<h>&ip=<a> |
ZONEEDIT |
http://dynamic.zoneedit.com/auth/dynamic.html?host=<h>&dnsto=<a> |
TZO |
http://cgi.tzo.com/webclient/signedon.html?TZOName=<h>IPAddress=<a> |
EASYDNS |
http://members.easydns.com/dyn/ez-ipupdate.php?action=edit&myip=<a>&host_id=<h> |
HEIPV6TB |
http://dyn.dns.he.net/nic/update?hostname=<h>&myip=<a> |
CHANGE-IP |
http://nic.changeip.com/nic/update?hostname=<h>&offline=1 |
NO-IP |
http://dynupdate.no-ip.com/nic/update?hostname=<h>&myip=<a> |
DHS |
http://members.dhs.org/nic/hosts?domain=dyn.dhs.org&hostname=<h>&hostscmd=edit&hostscmdstage=2&type=1&ip=<a> |
HP |
https://server-name/nic/update?group=group-name&myip=<a> |
ODS |
ods://update.ods.org |
GNUDIP |
gnudip://server-name |
花生壳 |
根据实际情况选择: · oray://phddns60.oray.net · oray://phservice2.oray.net |
URL地址中不支持携带用户名和密码,配置用户名和密码请配合username和password命令使用,请根据实际情况修改。
HP和GNUDIP是通用的DDNS更新协议,server-name是使用对应DDNS更新协议的服务提供商的服务器域名或地址。
DDNS更新请求的URL地址可以以“http://”开头,表示基于HTTP与DDNS服务器通信;以“https://”开头,表示基于HTTPS与DDNS服务器通信;以“ods://”开头,表示基于TCP与ODS服务器通信;以“gnudip://”开头,表示基于TCP与GNUDIP服务器通信;以“oray://”开头,表示基于TCP与花生壳DDNS服务器通信。
members.3322.org和phddns60.oray.net是服务提供商提供DDNS服务的域名。花生壳提供DDNS服务的域名是phddns60.oray.net和phservice2.oray.net,phservice2.oray.net对应的是花生壳老版的服务器公网地址,phddns60.oray.net对应的是当前新版本的服务器公网地址。花生壳基本不再维护老版本的服务器公网地址,所以部分服务器有时会登录不上,需要重复多试几次。在花生壳上申请的新账号应使用新版本的服务器公网地址。请根据实际情况修改域名。
URL地址中的端口号是可选项,如果不包含端口号则使用缺省端口号:HTTP是80,HTTPS是443,花生壳DDNS服务器是6060。
<h>由系统根据接口上应用DDNS策略时指定的FQDN自动填写,<a>由系统根据应用DDNS策略的接口的主IP地址自动填写,用户可以不更改URL中的<h>和<a>。用户也可以手工输入需要更新的FQDN和IP地址,代替URL中的<h>和<a>,此时,应用DDNS策略时指定的FQDN将不会生效。为了避免配置错误,建议用户不要修改URL中的<h>和<a>。
花生壳DDNS服务器的URL地址中不能指定用于更新的FQDN和IP地址。用户可在接口上应用DDNS策略时指定FQDN;用于更新的IP地址是应用DDNS策略的接口的主IP地址。
为避免歧义,请尽量不要在DDNS服务器上申请含有“:”、“@”或“?”字符的用户名和密码。
多次执行本命令,最后一次执行的命令生效。
【举例】
# 为DDNS策略steven_policy指定DDNS更新请求的URL地址。DDNS服务提供商为www.3322.org。
<Sysname> system-view
[Sysname] ddns policy steven_policy
[Sysname-ddns-policy-steven_policy] url http:// members.3322.org/dyndns/update?system=dyndns&hostname=<h>&myip=<a>
【相关命令】
· display ddns policy
· ddns policy
· password
· username
username命令用来指定登录DDNS服务器的用户名。
undo username命令用来恢复缺省情况。
【命令】
username username
undo username
【缺省情况】
未指定登录DDNS服务器的用户名。
【视图】
DDNS策略视图
【缺省用户角色】
network-admin
【参数】
username:登录DDNS服务器的用户名,为1~32个字符的字符串,区分大小写。
【举例】
# 为DDNS策略steven_policy指定登录DDNS服务器的用户名为steven。
<Sysname> system-view
[Sysname] ddns policy steven_policy
[Sysname-ddns-policy-steven_policy] username steven
【相关命令】
· display ddns policy
· ddns policy
· password
· url
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!