Reference For: administrators, users, tenants

Reverse DNS errors

Causes and remedies for the error codes of reverse DNS names, requests and DNS providers.

error.rdns.nothing_pending

Text in the console
No reverse DNS request is waiting for {address}.
Meaning for API clients
No PTR request is waiting for this address.
Code
FAILED_PRECONDITION, HTTP 412
ArgumentWhat it holds
addressthe address that has no request.

Cause. The request to mark a reverse DNS name as applied or rejected found no request for the address. No name was requested for it, or the request was applied or rejected already. Requests wait only for pools in manual mode.

Remedy.

  1. Check the address and the pool: kyvernon ip-pools allocations <pool> lists the addresses and the state of their names.
  2. Mark a request only when a name is waiting. A name is waiting when the state shows requested.

See the page Reverse DNS.

error.rdns.reason_required

Text in the console
Give a reason for the rejection.
Meaning for API clients
A rejected PTR request needs a reason.
Code
FAILED_PRECONDITION, HTTP 412
ArgumentWhat it holds
fieldthe request field that is missing, here reason.

Cause. A request for a reverse DNS name was rejected without a reason. The tenant sees the reason, so it is required.

Remedy.

  1. Give a reason: kyvernon ip-pools ptr-rejected <pool> <address> --reason "<text>". In the console, use Reject.

error.rdns.provider_failed

Text in the console
The DNS server did not accept the change. Try again later. If it keeps failing, the task details name the cause.
Meaning for API clients
The DNS provider did not accept the change; retry later. http_status is the provider's answer when it gave one; the cause is in the message.
Code
UNAVAILABLE, HTTP 503
ArgumentWhat it holds
http_statusthe HTTP status of the answer of the DNS server. It is absent when the server did not answer.

Cause. The DNS provider, a PowerDNS server, did not accept the change or did not answer. The name is not applied. The message of the response and the details of the task name the cause. When the server answered, http_status holds its HTTP status.

Remedy.

  1. Read the cause: open the details of the task, or the message in the API response.
  2. Try again later.
  3. When it repeats, an administrator checks that the PowerDNS server runs, that its API address and key in the [cloud_net.dns] section of the controller configuration are right, and that the controller can reach it. The controller log holds the full cause. Pass on the message id and the time.

error.rdns.no_zone

Text in the console
No reverse zone on the DNS server holds {name}.
Meaning for API clients
No reverse zone on the DNS server holds the address.
Code
FAILED_PRECONDITION, HTTP 412
ArgumentWhat it holds
namethe reverse name (in-addr.arpa or ip6.arpa) that no zone holds.

Cause. The DNS server has no reverse zone that contains the address, so the name cannot be written.

Remedy.

  1. An administrator creates the reverse zone for the address range on the DNS server, for example the zone of the /24 or /64 that holds the address.
  2. Set the name again: kyvernon ip-pools ptr <pool> <address> --name <name>.

error.rdns.not_forward_confirmed

Text in the console
{name} does not resolve to {address}. Create the A or AAAA record first.
Meaning for API clients
The PTR name does not resolve back to the address.
Code
FAILED_PRECONDITION, HTTP 412
ArgumentWhat it holds
namethe host name that does not resolve.
addressthe address that it must resolve to.

Cause. The controller checks that a reverse name resolves back to the address (forward-confirmed reverse DNS, forward_confirm = true in [cloud_net.dns]). The name has no A or AAAA record with that address.

Remedy.

  1. Create the A record, or the AAAA record for an IPv6 address, for the name with the address. Wait until it resolves.
  2. Set the reverse name again: kyvernon addresses ptr <vm> <address> --name <name>.

error.rdns.invalid_name

Text in the console
This is not a valid host name.
Meaning for API clients
The PTR name is not a valid host name.
Code
INVALID_ARGUMENT, HTTP 400
ArgumentWhat it holds
fieldthe request field that holds the rejected name, here ptr.

Cause. The name is not a valid host name. A host name has at least two labels, each of 1 to 63 characters of letters, digits and hyphens, and at most 253 characters in total.

Remedy.

  1. Use a fully qualified host name such as mail.example.com.
  2. Remove spaces, underscores and other characters that are not allowed, then set the name again.

Version 0.1. Last changed: 2026-11-13