Update DNS domain and server configurations
PATCH /name-services/dns/{svm.uuid}
Introduced In: 9.6
Updates DNS domain and server configurations of an SVM.
Important notes
-
Both DNS domains and servers can be modified.
-
The domains and servers fields cannot be empty.
-
IPv6 must be enabled if IPv6 family addresses are specified for the
servers
field. -
The DNS server specified using the
servers
field is validated during this operation.
The validation fails in the following scenarios:
-
The server is not a DNS server.
-
The server does not exist.
-
The server is unreachable.
-
The DNS server validation can be skipped by setting the property "skip_config_validation" to "true".
-
Dynamic DNS configuration can be modified.
-
If both DNS and Dynamic DNS parameters are modified, DNS parameters are updated first followed by Dynamic DNS parameters. If updating Dynamic DNS fails, then the updated DNS configuration is not reverted.
-
The following parameters are optional:
-
timeout
-
attempts
-
source_address_match
-
packet_query_match
-
tld_query_enabled
-
skip_config_validation
-
dynamic_dns.enabled
-
dynamic_dns.use_secure
-
dynamic_dns.time_to_live
Related ONTAP commands
-
vserver services name-service dns modify
-
vserver services name-service dns dynamic-update modify
Learn more
Parameters
Name | Type | In | Required | Description |
---|---|---|---|---|
svm.uuid |
string |
path |
True |
UUID of the SVM to which this object belongs. |
Request Body
Name | Type | Description |
---|---|---|
_links |
||
attempts |
integer |
Number of attempts allowed when querying the DNS name servers. |
domains |
array[string] |
A list of DNS domains. Domain names have the following requirements:
|
dynamic_dns |
||
packet_query_match |
boolean |
Indicates whether or not the query section of the reply packet is equal to that of the query packet. |
scope |
string |
Set to "svm" for DNS owned by an SVM, otherwise set to "cluster". |
servers |
array[string] |
The list of IP addresses of the DNS servers. Addresses can be either IPv4 or IPv6 addresses. |
skip_config_validation |
boolean |
Indicates whether or not the validation for the specified DNS configuration is disabled. |
source_address_match |
boolean |
Indicates whether or not the DNS responses are from a different IP address to the IP address the request was sent to. |
status |
array[status] |
Status of all the DNS name servers configured for the specified SVM. |
svm |
||
timeout |
integer |
Timeout values for queries to the name servers, in seconds. |
tld_query_enabled |
boolean |
Enable or disable top-level domain (TLD) queries. |
Example request
{
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"domains": [
"example.com",
"example2.example3.com"
],
"dynamic_dns": {
"fqdn": "example.com",
"time_to_live": "P2D"
},
"scope": "string",
"servers": [
"10.224.65.20",
"2001:db08:a0b:12f0::1"
],
"status": [
{
"code": "6684732",
"message": "string",
"name_server": "10.10.10.10",
"state": "up"
}
],
"svm": {
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"name": "svm1",
"uuid": "02c9e252-41be-11e9-81d5-00a0986138f7"
}
}
Response
Status: 200, Ok
Error
Status: Default
ONTAP Error Response Codes
Error Code | Description |
---|---|
8847360 |
Only admin or data SVMs allowed |
8847361 |
Exceeded the maximum number of domains allowed. Maximum of six domains only |
8847362 |
Exceeded the maximum number of name servers allowed. Maximum of three name servers only |
8847376 |
FQDN is mandatory if dynamic DNS update is being enabled. |
8847380 |
Secure updates can be enabled only after a CIFS server or an Active Directory account has been created for the SVM. |
8847381 |
A unique FQDN must be specified for each SVM. |
8847383 |
The specified TTL exceeds the maximum supported value of 720 hours. |
8847392 |
Domain name cannot be an IP address |
8847393 |
Top level domain name is invalid |
8847394 |
FQDN name voilated the limitations |
8847399 |
One or more of the specified DNS servers do not exist or cannot be reached |
8847404 |
Dynamic DNS is applicable only for data SVMs |
8847405 |
DNS parameters updated successfully; however the update of Dynamic DNS-related parameters has failed. |
9240587 |
FQDN name cannot be empty |
9240588 |
FQDN name is too long. Maximum supported length: 255 characters |
9240590 |
FQDN name is reserved. Following names are reserved: "all", "local" and "localhost" |
9240607 |
One of the FQDN labels is too long. Maximum supported length is 63 characters |
9240608 |
FQDN does not contain a ".". At least one "." is mandatory for an FQDN. |
9240607 |
A label of the FQDN is too long (73 characters). Maximum supported length for each label is 63 characters. |
23724130 |
Cannot use an IPv6 name server address because there are no IPv6 LIFs |
Name | Type | Description |
---|---|---|
error |
Example error
{
"error": {
"arguments": [
{
"code": "string",
"message": "string"
}
],
"code": "4",
"message": "entry doesn't exist",
"target": "uuid"
}
}
Definitions
See Definitions
href
Name | Type | Description |
---|---|---|
href |
string |
_links
Name | Type | Description |
---|---|---|
self |
dynamic_dns
Name | Type | Description |
---|---|---|
enabled |
boolean |
Enable or disable Dynamic DNS (DDNS) updates for the specified SVM. |
fqdn |
string |
Fully Qualified Domain Name (FQDN) to be used for dynamic DNS updates. |
skip_fqdn_validation |
boolean |
Enable or disable FQDN validation. |
time_to_live |
string |
Time to live value for the dynamic DNS updates, in an ISO-8601 duration formatted string. Maximum Time To Live is 720 hours(P30D in ISO-8601 format) and the default is 24 hours(P1D in ISO-8601 format). |
use_secure |
boolean |
Enable or disable secure dynamic DNS updates for the specified SVM. |
status
Status of each of the DNS name server configured for the specified SVM.
Name | Type | Description |
---|---|---|
code |
integer |
Code corresponding to the status message. Code is 0 when the state is 'up'. |
message |
string |
Detailed description of the validation state if the state is 'down' or the response time of the DNS server if the state is 'up'. |
name_server |
string |
The IP address of the DNS server. The address can be either an IPv4 or an IPv6 address. |
state |
string |
The validation status of the DNS server. |
svm
Name | Type | Description |
---|---|---|
_links |
||
name |
string |
The name of the SVM. |
uuid |
string |
The unique identifier of the SVM. |
dns
Name | Type | Description |
---|---|---|
_links |
||
attempts |
integer |
Number of attempts allowed when querying the DNS name servers. |
domains |
array[string] |
A list of DNS domains. Domain names have the following requirements:
|
dynamic_dns |
||
packet_query_match |
boolean |
Indicates whether or not the query section of the reply packet is equal to that of the query packet. |
scope |
string |
Set to "svm" for DNS owned by an SVM, otherwise set to "cluster". |
servers |
array[string] |
The list of IP addresses of the DNS servers. Addresses can be either IPv4 or IPv6 addresses. |
skip_config_validation |
boolean |
Indicates whether or not the validation for the specified DNS configuration is disabled. |
source_address_match |
boolean |
Indicates whether or not the DNS responses are from a different IP address to the IP address the request was sent to. |
status |
array[status] |
Status of all the DNS name servers configured for the specified SVM. |
svm |
||
timeout |
integer |
Timeout values for queries to the name servers, in seconds. |
tld_query_enabled |
boolean |
Enable or disable top-level domain (TLD) queries. |
error_arguments
Name | Type | Description |
---|---|---|
code |
string |
Argument code |
message |
string |
Message argument |
error
Name | Type | Description |
---|---|---|
arguments |
array[error_arguments] |
Message arguments |
code |
string |
Error code |
message |
string |
Error message |
target |
string |
The target parameter that caused the error. |