KeyDNS

From TLDinfo
Jump to: navigation, search


KeyDNS Reference Manual

Our KeyDNS Reference Manual will give you an extensive overview of the commands which can be submitted to the system. Please read the KeyDNS Reference manual carefully in order to avoid any mistakes. If there are any errors or missing topics, please do not hesitate to contact us.

Contents

About KeyDNS

Whether for your own or your clients' domain names, DNS stability and reliability is crucial for success in the domain (DNS) hosting area. Take advantage of our long-time experience in DNS management and monitoring and use our powerful KeyDNS services. Furthermore, DNS zone management for external domains is integrated into our RRPproxy reseller model. Consequently, the hosted DNS service for external domains may be provided to subresellers and invoiced accordingly.

In general, using KeyDNS Unicast for your domains managed in your RRPproxy account is free of charge. We only charge for Anycast usage, and when you're managing a DNS zone for a domain outside our management.

KeyDNS is designed to serve as your solution for DNS zone file management and also integrates as Slave NS setup for your Master NS.

Command reference

Zones

DNS Zones are the central objects in KeyDNS. You can add a zone by calling AddDNSZone. By specifying all needed resource records and SOA details, you can add a complete zone in one step. Later on you can use ModifyDNSZone to change the set of resource records or modify SOA details. When a zone is not needed anymore, it can be deleted by DeleteDNSZone.

QueryDNSZoneList lists all your zones, while QueryDNSZoneRRList lists all resource records for a specific zone. As usual it's possible to filter the results and use paging.

ImportDNSZone and ExportDNSZone allows you to work with BIND zone files.


AddDNSZone

[COMMAND]
(required)                 
COMMAND          = AddDNSZone
DNSZONE          = [TEXT]
RR#              = [TEXT]
SOAEXPIRE        = [INT]
SOAMINTTL        = [INT]
SOAMNAME         = [TEXT]
SOAREFRESH       = [INT]
SOARETRY         = [INT]
SOARNAME         = [TEXT]
PREMIUMDNSSET    = NULL (DEFAULT) | ANYCAST1 (OPTIONAL)
MASTERIPADDRESS# = [IP]
CLTRID           = [TEXT]
                 
EOF


  • DNSZONE: Name of the new zone
  • RR#: Resource Records (optional)
  • SOAEXPIRE: A 32 bit time value that specifies the upper limit on the time interval that can elapse before the zone is no longer authoritative. (optional)
  • SOAMINTTL: The unsigned 32 bit minimum TTL field that should be exported with any RR from this zone. (optional)
  • SOAMNAME: The <domain-name> of the name server that was the original or primary source of data for this zone. (optional)
  • SOAREFRESH: A 32 bit time interval before the zone should be refreshed. (optional)
  • SOARETRY: A 32 bit time interval that should elapse before a failed refresh should be retried. (optional)
  • SOARNAME: A <domain-name> which specifies the mailbox of the person responsible for this zone. (optional)
  • PREMIUMDNSSET To use Anycast (ANYCAST1). Defaults to Unicast (NULL). (optional)
  • MASTERIPADDRESS# Up to 8 IP Addresses of the Master NS. This parameter can only be used with DNSZONE and PREMIUMDNSSET. (optional)
  • CLTRID: Unique identifier for this request, must be changed with every request, the default is autogenerated (optional)


[COMMAND]
(required)                    
code                = [INT]
description         = [TEXT]
property[CLTRID][0] = [TEXT]
property[SVTRID][0] = [TEXT]
                    
EOF


  • CLTRID: The transaction - ID given in the request where this response is the answer for; Will only be returned if a CLTRID was given in the request
  • SVTRID: A unique ID for this request generated by the server; Will only be returned if a CLTRID was given in the request


DeleteDNSZone

[COMMAND]
(required)        
COMMAND = DeleteDNSZone
DNSZONE = [TEXT]
CLTRID  = [TEXT]
        
EOF


  • DNSZONE: Name of the zone to delete
  • CLTRID: Unique identifier for this request, must be changed with every request, the default is auto-generated (optional)


[COMMAND]
(required)                    
code                = [INT]
description         = [TEXT]
property[CLTRID][0] = [TEXT]
property[SVTRID][0] = [TEXT]
                    
EOF


  • CLTRID: The transaction - ID given in the request where this response is the answer for; Will only be returned if a CLTRID was given in the request
  • SVTRID: A unique ID for this request generated by the server; Will only be returned if a CLTRID was given in the request


ModifyDNSZone

[COMMAND]
(required)                    
COMMAND             = ModifyDNSZone
DNSZONE             = [TEXT]
SOAEXPIRE           = [INT]
SOAMINTTL           = [INT]
SOAMNAME            = [TEXT]
SOAREFRESH          = [INT]
SOARETRY            = [INT]
SOARNAME            = [TEXT]
ADDRR#              = [TEXT]
DELRR#              = [TEXT]
RR#                 = [TEXT]
PREMIUMDNSSET       = NULL (DEFAULT) | ANYCAST1 (OPTIONAL)
MASTERIPADDRESS#    = [IP]
- or -              = 
DELMASTERIPADDRESS# = [IP]
ADDMASTERIPADDRESS# = [IP]
CLTRID              = [TEXT]
                    
EOF


  • DNSZONE: Name of the zone to modify
  • SOAEXPIRE: A 32 bit time value that specifies the upper limit on the time interval that can elapse before the zone is no longer authoritative. (optional)
  • SOAMINTTL: The unsigned 32 bit minimum TTL field that should be exported with any RR from this zone. (optional)
  • SOAMNAME: The <domain-name> of the name server that was the original or primary source of data for this zone. (optional)
  • SOAREFRESH: A 32 bit time interval before the zone should be refreshed. (optional)
  • SOARETRY: A 32 bit time interval that should elapse before a failed refresh should be retried. (optional)
  • SOARNAME: A <domain-name> which specifies the mailbox of the person responsible for this zone. (optional)
  • ADDRR#: Set of new resource records (optional)
  • DELRR#: Set of resource records to delete from zone (optional)
  • RR#: Set of resource records to exchange (optional)
  • PREMIUMDNSSET To use Anycast (ANYCAST1). Defaults to Unicast (NULL). (optional)
  • MASTERIPADDRESS# Up to 8 IP Addresses of the Master NS. This parameter can only be used with DNSZONE and PREMIUMDNSSET. (optional)
  • ADDMASTERIPADDRESS# Add IP Address of the Master NS. This parameter can only be used with DNSZONE and PREMIUMDNSSET. (optional)
  • DELMASTERIPADDRESS# Remove IP Address of the Master NS. This parameter can only be used with DNSZONE and PREMIUMDNSSET. (optional)
  • CLTRID: Unique identifier for this request, must be changed with every request, the default is auto-generated (optional)

Parameters MASTERIPADDRESS#, DELMASTERIPADDRESS# and ADDMASTERIPADDRESS# will work only for Slave NS configurations. Removing all master servers is not allowed.

[COMMAND]
(required)                    
code                = [INT]
description         = [TEXT]
property[CLTRID][0] = [TEXT]
property[SVTRID][0] = [TEXT]
                    
EOF


  • CLTRID: The transaction - ID given in the request where this response is the answer for; Will only be returned if a CLTRID was given in the request
  • SVTRID: A unique ID for this request generated by the server; Will only be returned if a CLTRID was given in the request

StatusDNSZone

[COMMAND]
(required)        
COMMAND = StatusDNSZone
DNSZONE = [TEXT]
CLTRID  = [TEXT]
        
EOF


  • DNSZONE: Name of the zone
  • CLTRID: Unique identifier for this request, must be changed with every request, the default is auto-generated (optional)


[COMMAND]
(required)                             
code                         = [INT]
description                  = [TEXT]
property[DNSZONE][0]         = [TEXT]
property[SOAEXPIRE][0]       = [TEXT]
property[SOAMINTTL][0]       = [TEXT]
property[SOAMNAME][0]        = [TEXT]
property[SOAREFRESH][0]      = [TEXT]
property[SOARETRY][0]        = [TEXT]
property[SOARNAME][0]        = [TEXT]
property[SOASERIAL][0]       = [TEXT]
property[DNSSEC][0]          = 0|1
property[PREMIUMDNSSET][0]   = 0|1
property[ZONETYPE][0]        = [TEXT]
property[MASTERIPADDRESS][0] = [TEXT]
property[CLTRID][0]          = [TEXT]
property[SVTRID][0]          = [TEXT]
                             
EOF


  • DNSZONE: DNSZONE
  • SOAEXPIRE: SOA Expire
  • SOAMINTTL: SOA Minttl
  • SOAMNAME: SOA Mname
  • SOAREFRESH: SOA Refresh
  • SOARETRY: SOA Retry
  • SOARNAME: SOA Rname
  • SOASERIAL: SOA Serial
  • DNSSEC: DNSSEC
  • PREMIUMDNSSET: Unicast (0)|Anycast (1)
  • ZONETYPE: Master|Slave
  • MASTERIPADDRESS: IP Address of Master NS
  • CLTRID: The transaction - ID given in the request where this response is the answer for; Will only be returned if a CLTRID was given in the request
  • SVTRID: A unique ID for this request generated by the server; Will only be returned if a CLTRID was given in the request


QueryDNSZoneList

[COMMAND]
(required)        
COMMAND = QueryDNSZoneList
DNSZONE = [TEXT]
FIRST   = [INT]
LIMIT   = [INT]
ORDER   = ASC | DESC
WIDE    = [INT]
CLTRID  = [TEXT]
        
EOF


  • DNSZONE: Filter by dnszone (optional)
  • FIRST: First result to display (optional)
  • LIMIT: Limits the number of results to given number (optional)
  • ORDER: Optional
    • ASC ascending
    • DESC descending
  • WIDE: Optional
  • CLTRID: Unique identifier for this request, must be changed with every request, the default is autogenerated (optional)


[COMMAND]
(required)                          
code                      = [INT]
description               = [TEXT]
property[DNSZONE#][0]     = [TEXT]
property[UPDATED DATE][0] = [TEXT]
property[COUNT][0]        = [INT]
property[FIRST][0]        = [INT]
property[LAST][0]         = [INT]
property[LIMIT][0]        = [INT]
property[TOTAL][0]        = [INT]
property[CLTRID][0]       = [TEXT]
property[SVTRID][0]       = [TEXT]
                          
EOF


  • DNSZONE#: Zones
  • UPDATED DATE: Last Update; Will only be returned if WIDE=1
  • COUNT: Total number of zones shown
  • FIRST: Pointer to the first shown ID
  • LAST: Pointer to the last shown ID
  • LIMIT: The limit given in the command
  • TOTAL: Total number of existing zones
  • CLTRID: The transaction - ID given in the request where this response is the answer for; Will only be returned if a CLTRID was given in the request
  • SVTRID: A unique ID for this request generated by the server; Will only be returned if a CLTRID was given in the request


QueryDNSZoneRRList

[COMMAND]
(required)        
COMMAND = QueryDNSZoneRRList
DNSZONE = [TEXT]
CONTENT = [TEXT]
NAME    = [TEXT]
PRIO    = [INT]
TTL     = [INT]
TYPE    = [TEXT]
FIRST   = [INT]
LIMIT   = [INT]
ORDER   = ASC|DESC
ORDERBY = name | type | content | prio | ttl | changed_date
WIDE    = [INT]
CLTRID  = [TEXT]
        
EOF


  • DNSZONE: Name of the zone
  • CONTENT: Filter by resource data (content, optional)
  • NAME: Filter by name (optional)
  • PRIO: Filter by MX Prio (optional)
  • TTL: Filter by TTL (optional)
  • TYPE: Filter records by type (optional)
  • FIRST: First result to display (optional)
  • LIMIT: Limits the number of results to given number (optional)
  • ORDER: Optional
    • ASC ascending
    • DESC descending
  • ORDERBY: Order resulting list by this column (optional)
  • WIDE: Optional
  • CLTRID: Unique identifier for this request, must be changed with every request, the default is auto-generated (optional)


[COMMAND]
(required)                          
code                      = [INT]
description               = [TEXT]
property[RR#][0]          = [TEXT]
property[CONTENT][0]      = [TEXT]
property[LOCKED][0]       = [TEXT]
property[NAME][0]         = [TEXT]
property[TTL][0]          = [TEXT]
property[TYPE][0]         = [TEXT]
property[UPDATED DATE][0] = [TEXT]
property[COUNT][0]        = [INT]
property[FIRST][0]        = [INT]
property[LAST][0]         = [INT]
property[LIMIT][0]        = [INT]
property[TOTAL][0]        = [INT]
property[CLTRID][0]       = [TEXT]
property[SVTRID][0]       = [TEXT]
                          
EOF


  • RR#: Resource Records
  • CONTENT: RR Content; Will only be returned if WIDE=1
  • LOCKED: RR Locked; Will only be returned if WIDE=1
  • NAME: RR Name; Will only be returned if WIDE=1
  • TTL: RR TTL; Will only be returned if WIDE=1
  • TYPE: RR Type; Will only be returned if WIDE=1
  • UPDATED DATE: RR Updated date; Will only be returned if WIDE=1
  • COUNT: Total number of records shown
  • FIRST: Pointer to the first shown ID
  • LAST: Pointer to the last shown ID
  • LIMIT: The limit given in the command
  • TOTAL: Total number of existing resource records
  • CLTRID: The transaction - ID given in the request where this response is the answer for; Will only be returned if a CLTRID was given in the request
  • SVTRID: A unique ID for this request generated by the server; Will only be returned if a CLTRID was given in the request


QueryDNSZoneSubdomainList

Special command to list all Subdomains of a DNS zone. Each Subdomain is listed only once.

[COMMAND]
(required)          
[COMMAND] = 
command   = QueryDNSZoneSubdomainList
dnszone   = test23.com
name      = [TEXT]
first     = [INT]
limit     = [INT]
order     = ASC|DESC
cltrid    = [TEXT]
          
EOF
  • DNSZONE: Name of the zone.
  • NAME: Filtering for NAME. (optional)
  • FIRST: First result to display (optional)
  • LIMIT: Limits the number of results to given number (optional)
  • ORDER: Optional
    • ASC ascending
    • DESC descending
  • CLTRID: Unique identifier for this request, must be changed with every request, the default is auto-generated (optional)


[COMMAND]
(required)                       
code                   = 200
description            = Command completed successfully
property[count][0]     = [INT]
property[first][0]     = 0
property[last][0]      = [INT]
property[limit][0]     = [INT]
property[subdomain][0] = www.domain.com
...                    
property[total][0]     = [INT]
queuetime              = 0
runtime                = 0.075
EOF                    = 
                       
EOF
  • SUBDOMAIN: Subdomain of the DNS zone.
  • COUNT: Total number of records shown
  • FIRST: Pointer to the first shown ID
  • LAST: Pointer to the last shown ID
  • LIMIT: The limit given in the command
  • TOTAL: Total number of existing resource records
  • CLTRID: The transaction - ID given in the request where this response is the answer for; Will only be returned if a CLTRID was given in the request
  • SVTRID: A unique ID for this request generated by the server; Will only be returned if a CLTRID was given in the request

ImportDNSZone

[COMMAND]
(required)        
COMMAND = ImportDNSZone
DNSZONE = [TEXT]
LINE#   = [TEXT]
CLTRID  = [TEXT]
        
EOF


  • DNSZONE: Name of the zone
  • LINE#: BIND Zone File
  • CLTRID: Unique identifier for this request, must be changed with every request, the default is auto-generated (optional)


[COMMAND]
(required)                    
code                = [INT]
description         = [TEXT]
property[CLTRID][0] = [TEXT]
property[SVTRID][0] = [TEXT]
                    
EOF


  • CLTRID: The transaction - ID given in the request where this response is the answer for; Will only be returned if a CLTRID was given in the request
  • SVTRID: A unique ID for this request generated by the server; Will only be returned if a CLTRID was given in the request


ExportDNSZone

[COMMAND]
(required)        
COMMAND = ExportDNSZone
DNSZONE = [TEXT]
CLTRID  = [TEXT]
        
EOF


  • DNSZONE: Name of the zone
  • CLTRID: Unique identifier for this request, must be changed with every request, the default is auto-generated (optional)


[COMMAND]
(required)                    
code                = [INT]
description         = [TEXT]
property[LINE#][0]  = [TEXT]
property[CLTRID][0] = [TEXT]
property[SVTRID][0] = [TEXT]
                    
EOF


  • LINE#: BIND Zone File
  • CLTRID: The transaction - ID given in the request where this response is the answer for; Will only be returned if a CLTRID was given in the request
  • SVTRID: A unique ID for this request generated by the server; Will only be returned if a CLTRID was given in the request


CheckDNSZone

[COMMAND]
(required)        
COMMAND = CheckDNSZone
DNSZONE = [TEXT]
CLTRID  = [TEXT]
        
EOF


  • DNSZONE: DNSZone to be checked for availability
  • CLTRID: Unique identifier for this request, must be changed with every request, the default is auto-generated (optional)


[COMMAND]
(required)                    
code                = [INT]
description         = [TEXT]
property[CLTRID][0] = [TEXT]
property[SVTRID][0] = [TEXT]
                    
EOF


  • CLTRID: The transaction - ID given in the request where this response is the answer for; Will only be returned if a CLTRID was given in the request
  • SVTRID: A unique ID for this request generated by the server; Will only be returned if a CLTRID was given in the request


GetDNSZone

[COMMAND]
(required)        
COMMAND = GetDNSZone
DOMAIN  = [TEXT]
CLTRID  = [TEXT]
        
EOF


  • DOMAIN: Optional
  • CLTRID: Unique identifier for this request, must be changed with every request, the default is auto-generated (optional)


[COMMAND]
(required)                     
code                 = [INT]
description          = [TEXT]
property[DNSZONE][0] = [TEXT]
property[CLTRID][0]  = [TEXT]
property[SVTRID][0]  = [TEXT]
                     
EOF


  • DNSZONE: DNSZONE
  • CLTRID: The transaction - ID given in the request where this response is the answer for; Will only be returned if a CLTRID was given in the request
  • SVTRID: A unique ID for this request generated by the server; Will only be returned if a CLTRID was given in the request


Forwarding

Mail Forwarding

AddMailFwd

Forward emails from one address to another. You need to use the Key-Systems nameservers for the domain specified with the parameter "FROM":

  • ns[1-3].rrpproxy.net - standard Unicast set
  • ns[1-3].dnsres.net - whitelabelled standard Unicast set
  • anycast[1-2].dnsres.net - Anycast set
[COMMAND]
(required)        
COMMAND = AddMailFwd
FROM    = [TEXT]
TO      = [TEXT]
CLTRID  = [TEXT]
        
EOF


  • FROM: Email address to be forwarded
  • TO: Target email address
  • CLTRID: Unique identifier for this request, must be changed with every request, the default is auto-generated (optional)


[COMMAND]
(required)                    
code                = [INT]
description         = [TEXT]
property[CLTRID][0] = [TEXT]
property[SVTRID][0] = [TEXT]
                    
EOF


  • CLTRID: The transaction - ID given in the request where this response is the answer for; Will only be returned if a CLTRID was given in the request
  • SVTRID: A unique ID for this request generated by the server; Will only be returned if a CLTRID was given in the request

DeleteMailFwd

[COMMAND]
(required)        
COMMAND = DeleteMailFwd
FROM    = [TEXT]
TO      = [TEXT]
CLTRID  = [TEXT]
        
EOF


  • FROM: Email address - forwarding to be deleted
  • TO: Target email address (optional)
  • CLTRID: Unique identifier for this request, must be changed with every request, the default is auto-generated (optional)


[COMMAND]
(required)                    
code                = [INT]
description         = [TEXT]
property[CLTRID][0] = [TEXT]
property[SVTRID][0] = [TEXT]
                    
EOF


  • CLTRID: The transaction - ID given in the request where this response is the answer for; Will only be returned if a CLTRID was given in the request
  • SVTRID: A unique ID for this request generated by the server; Will only be returned if a CLTRID was given in the request


QueryMailFwdList

[COMMAND]
(required)        
WIDE    = [TEXT]
COMMAND = QueryMailFwdList
DNSZONE = [TEXT]
FROM    = [TEXT]
SOURCE  = [TEXT]
TARGET  = [TEXT]
TO      = [TEXT]
FIRST   = [TEXT]
LIMIT   = [TEXT]
ORDER   = ASC | DESC
ORDERBY = dnszone
CLTRID  = [TEXT]
        
EOF


  • WIDE: Optional
  • DNSZONE: Filter by DNSZONE (optional)
  • FROM: Filter by FROM (optional)
  • SOURCE: Filter by SOURCE (optional)
  • TARGET: Filter by TARGET (optional)
  • TO: Filter by TO (optional)
  • FIRST: Optional
  • LIMIT: Optional
  • ORDER: Optional
    • ASC ascending
    • DESC descending
  • ORDERBY: Order resulting list by this column (optional)
  • CLTRID: Unique identifier for this request, must be changed with every request, the default is auto-generated (optional)


[COMMAND]
(required)                     
code                 = [INT]
description          = [TEXT]
property[DNSZONE][0] = [TEXT]
property[FROM][0]    = [TEXT]
property[TO][0]      = [TEXT]
property[TO#][0]     = [TEXT]
property[COUNT][0]   = [INT]
property[FIRST][0]   = [INT]
property[LAST][0]    = [INT]
property[LIMIT][0]   = [INT]
property[TOTAL][0]   = [INT]
property[CLTRID][0]  = [TEXT]
property[SVTRID][0]  = [TEXT]
                     
EOF


  • DNSZONE: Associated zone; Will only be returned if WIDE=1
  • FROM: Forwarding from; Will only be returned if WIDE=1
  • TO: Comma separated list of recipients; Will only be returned if WIDE=1
  • TO#: Recipient; Will only be returned if WIDE=1
  • COUNT: Total number of forwardings shown
  • FIRST: Pointer to the first shown ID
  • LAST: Pointer to the last shown ID
  • LIMIT: The limit given in the command
  • TOTAL: Total number of existing forwardings
  • CLTRID: The transaction - ID given in the request where this response is the answer for; Will only be returned if a CLTRID was given in the request
  • SVTRID: A unique ID for this request generated by the server; Will only be returned if a CLTRID was given in the request

Web Forwarding

AddWebFwd

Forwards from one domain to another domain or URL. RD 301 (delivers HTTP 301 code) or MRD frame (uses a frame, original URL stays in browser bar) redirect can be used.

[COMMAND]
(required)        
COMMAND = AddWebFwd
SOURCE  = [TEXT]
TARGET  = [TEXT]
TYPE    = RD | MRD
CLTRID  = [TEXT]
        
EOF


  • SOURCE: Zone to be forwarded
  • TARGET: Target of the forwarding
  • TYPE: Type of forward (optional)
    • RD 301 redirect
    • MRD frame redirect
  • CLTRID: Unique identifier for this request, must be changed with every request, the default is auto-generated (optional)


[COMMAND]
(required)                    
[RESPONSE]          = 
code                = [INT]
description         = [TEXT]
property[CLTRID][0] = [TEXT]
property[SVTRID][0] = [TEXT]
                    
EOF


CLTRID: The transaction - ID given in the request where this response is the answer for; Will only be returned if a CLTRID was given in the request SVTRID: A unique ID for this request generated by the server; Will only be returned if a CLTRID was given in the request

DeleteWebFwd

[COMMAND]
(required)        
COMMAND = DeleteWebFwd
FROM    = [TEXT]
SOURCE  = [TEXT]
CLTRID  = [TEXT]
        
EOF


  • FROM: Redirected zone to be deleted (optional)
  • SOURCE: Redirected zone to be deleted (optional)
  • CLTRID: Unique identifier for this request, must be changed with every request, the default is auto-generated (optional)


[COMMAND]
(required)                    
code                = [INT]
description         = [TEXT]
property[CLTRID][0] = [TEXT]
property[SVTRID][0] = [TEXT]
                    
EOF


  • CLTRID: The transaction - ID given in the request where this response is the answer for; Will only be returned if a CLTRID was given in the request
  • SVTRID: A unique ID for this request generated by the server; Will only be returned if a CLTRID was given in the request


QueryWebFwdList

[COMMAND]
(required)        
COMMAND = QueryWebFwdList
WIDE    = [TEXT]
SOURCE  = [TEXT]
TARGET  = [TEXT]
TYPE    = [TEXT]
FIRST   = [INT]
LIMIT   = [INT]
ORDER   = ASC | DESC
ORDERBY = source | target | type
CLTRID  = [TEXT]
        
EOF


  • WIDE: 0|1 (optional)
  • SOURCE: Filter by SOURCE (optional)
  • TARGET: Filter by TARGET (optional)
  • TYPE: Filter by TYPE (optional)
  • FIRST: Start the output of results from this item (optional)
  • LIMIT: Show only this many items in the response (optional)
  • ORDER: Optional
    • ASC ascending
    • DESC descending
  • ORDERBY: Order resulting list by this column (optional)
  • CLTRID: Unique identifier for this request, must be changed with every request, the default is auto-generated (optional)


[COMMAND]
(required)                    
code                = [INT]
description         = [TEXT]
property[WEBFWD][n] = [TEXT]
property[SOURCE][n] = [TEXT]
property[TARGET][n] = [TEXT]
property[TYPE][n]   = RD | MRD
property[COUNT][0]  = [INT]
property[FIRST][0]  = [INT]
property[LAST][0]   = [INT]
property[LIMIT][0]  = [INT]
property[TOTAL][0]  = [INT]
property[CLTRID][0] = [TEXT]
property[SVTRID][0] = [TEXT]
                    
EOF


  • WEBFWD: Forwarding
  • SOURCE: Zone to be forwarded; Will only be returned if WIDE=1
  • TARGET: Target of the forwarding (i.e. http://www.example.org); Will only be returned if WIDE=1
  • TYPE: Type of redirection used; Will only be returned if WIDE=1
    • RD 301 redirect
    • MRD Frame redirect
  • COUNT: Total number of forwardings shown
  • FIRST: Pointer to the first shown ID
  • LAST: Pointer to the last shown ID
  • LIMIT: The limit given in the command
  • TOTAL: Total number of existing forwardings
  • CLTRID: The transaction - ID given in the request where this response is the answer for; Will only be returned if a CLTRID was given in the request
  • SVTRID: A unique ID for this request generated by the server; Will only be returned if a CLTRID was given in the request

DNSSEC

Enable KeyDNS DNSSEC for your zones:
a) Zone is not existing in KeyDNS: Add the DNS zone to KeyDNS with the command AddDNSZone. To enable DNSSEC support, add the parameter 'signed=1' to the AddDNSZone command.

b) Zone is already existing in KeyDNS: Use the command ModifyDNSZone with the additional parameter 'signed=1' to enable DNS support for your existing DNS zone. You can set signed=0 to disable DNSSEC support of a DNSSEC enabled zone. Please ensure in this case, that the delegation signer in the parent zone is not present anymore.

Command examples can be found in this section.

Key rollover:
KeyDNS DNSSEC supports two kinds of key rollovers:

Zone signing key (ZSK) rollover

  • Can be manually initiated with the ModifyDNSZone command parameter: rollover=ZSK.
  • The ZSK rollover is finished automatically.
  • The ZSK being rolled automatically every month.

Key signing key (KSK) rollover

  • Needs interaction with the parent zone.
  • Can be manually initiated with the ModifyDNSZone command parameter: rollover=KSK.
  • Can be finished (after parent zone update) with the parameter:finishkskrollover=<keytag>. The <keytag> defines the dnssec key whose rollover should be finished. The relevant keytag is returned by the command StatusDNSZone as the first part of the 'keydsdata sha1/256' parameter (where keydata flag: 257, keystatus: ready).
  • The first KSK rollover of a newly added DNSSEC zone can be initiated after the KSK key status has changed to 'active'.
  • The KSK is not being rolled automatically.

Only one ZSK and one KSK rollover can be active at the same time. To update the domain name with the relevant keydata or DS (delegation signer) data, please follow the RRPproxy manual as defined here. Please use always the KSK (flag: 257) and not the ZSK for updating the parent zone.

DNSSEC policy: Signatures:

  • Refresh: 4-daily
  • Validity: 14 days

Denial of non existence:

  • NSEC3

Keys:

  • KSK: Algorithm 7, Length: 2048
  • ZSK: Algorithm 7, Length: 1024

DNSSEC capable name servers: Please use the following name servers:

  • ns1.rrpproxy.net
  • ns2.rrpproxy.net
  • ns3.rrpproxy.net

  • ns1.dnsres.net
  • ns2.dnsres.net
  • ns3.dnsres.net

DNSSEC Step-by-step:
1) Sign the zone:

[COMMAND]
(required)        
command = ModifyDNSZone
dnszone = mydnsseczone.com
signed  = 1
        
EOF

2) After DNS changes have been propagated, update the parent zone. The information can be obtained e.g by StatusDNSZone. Please use always the KSK (flag: 257) to update the parent zone:

[COMMAND]
(required)        
command = ModifyDomain
domain  = mydnsseczone.com
dnssec0 = 257 3 7 AwEAAZx3U49y0YtUqi3GP...
        
EOF



This command overwrites all existing DNSSEC settings.


RRPProxy commands


AddDNSZone

[COMMAND]
(required)                     
command              = AddDNSZone
dnszone              = test23.com
rr0                  = @ IN A 1.2.3.4
signed               = 0 (DEFAULT) | 1 (OPTIONAL)
                     
[RESPONSE]           = 
code                 = 200
description          = Command completed successfully
property[dnszone][0] = test23.com
property[signed][0]  = 1
queuetime            = 0
runtime              = 0.004
                     
EOF

Note: The DNSSEC keys are returned in the command response, if they are already present while the AddDNSZone command is still running. If the signing system is busy at the command runtime, the command finishes with 'code = 200' without returning the keys. In this case, the keys can be obtained by running a StatusDNSZone command for the relevant zone


ModifyDNSZone

[COMMAND]
(required)                              
command                       = ModifyDNSZone
dnszone                       = test23.com
signed                        = 0 (DEFAULT) | 1 (OPTIONAL)
rollover                      = ZSK|KSK (OPTIONAL)
finishkskrollover             =  (OPTIONAL)
                              
[RESPONSE]                    = 
code                          = 200
description                   = Command completed successfully
property[dnszone][0]          = test23.com
property[signed][0]           = 1
property[keydata][0]          = 256 3 7 AwEAAbx0urqypm7uybErzrtR70kq7qssn3ymHiFm9BZU60XS...
property[keydata][1]          = 257 3 7 AwEAAZx3U49y0YtUqi3GPY1uJEutzc+OGTvokyuazuaszgtQ...
property[keydsdata sha1][0]   = 10323 7 1 807D794BB5D11A01400C52A71427A9D5EBD0723...
property[keydsdata sha1][1]   = 58374 7 1 DE121E8497B4A41F86FE0D4051277E05BE95D86...
property[keydsdata sha256][0] = 10323 7 2 6270424DAE90A229F07846C803726D3A39941...
property[keydsdata sha256][1] = 58374 7 2 89B4292C6989809BDFBA71E746AA65D27F3C5...
property[status][0]           = active
property[status][1]           = ready
property[type][0]             = ZSK
property[type][1]             = KSK
queuetime                     = 0
runtime                       = 0.004
                              
EOF



StatusDNSZone

[COMMAND]
(required)                              
command                       = statusdnszone
dnszone                       = test23.com
                              
                              
[RESPONSE]                    = 
code                          = 200
description                   = Command completed successfully
property[dnszone][0]          = test23.com
property[soamname][0]         = ns1.dnsres.net
property[soarname][0]         = tech.dnsres.net
property[soaserial][0]        = 2009081701
property[soattl][0]           = 28800
property[signed][0]           = 1
property[keydata][0]          = 256 3 7 AwEAAbx0urqypm7uybErzrtR70kq7qssn3ymHiFm9BZU60XSWC22...
property[keydata][1]          = 257 3 7 AwEAAZx3U49y0YtUqi3GPY1uJEutzc+OGTvokyuazuaszgtQ7bYz...
property[keydsdata sha1][0]   = 10323 7 1 807D794BB5D11A01400C52A71427A9D5EBD07236gt6...
property[keydsdata sha1][1]   = 58374 7 1 DE121E8497B4A41F86FE0D4051277E05BE95D866ju9...
property[keydsdata sha256][0] = 10323 7 2 6270424DAE90A229F07846C803726D3A399415gr3...
property[keydsdata sha256][1] = 58374 7 2 89B4292C6989809BDFBA71E746AA65D27F3C539hg...
property[status][0]           = active
property[status][1]           = ready
property[type][0]             = ZSK
property[type][1]             = KSK
queuetime                     = 0
runtime                       = 0.004
                              
EOF

Usage Scenarios

You have no own Nameserver

If you have no Nameserver, you can use our infrastructure.

KeyDNS Unicast

KeyDNS Unicast is free of charge, as long as the respective domains is under our management.

KeyDNS Anycast

Upgrade to KeyDNS Anycast and benefit from the powerful DNS network of our partner DYN.

Using PREMIUMDNSSET=ANYCAST1 activates Anycast for your DNS zone and automatically duplicates and publishes your resource records across the global network of our partner Dyn.com.

In this scenario our KeyDNS infrastructure serves as hidden Master server and the Dyn.com network as Anycast secondary name server set. The feature is optional and can be configured during adding or modifying a DNS zone.

Please keep in mind: Using Anycast is not free of charge. You can find your pricing in your RRPproxy web interface at "Account" -> "Zones & prices".

Workflow
  • Add or Modify a DNS zone with anycast
  • Apply the anycast nameserver set to the respective domain(s)
AddDNSZone with Anycast

AddDNSZone: Adding a new DNSzone with Anycast in KeyDNS:

[COMMAND]
(required)                     
[COMMAND]            = 
command              = AddDNSZone
dnszone              = test23.com
rr0                  = @ IN A 1.2.3.4
premiumdnsset        = NULL (DEFAULT) | ANYCAST1 (OPTIONAL)
                     
[RESPONSE]           = 
code                 = 200
description          = Command completed successfully
property[dnszone][0] = test23.com
queuetime            = 0
runtime              = 0.004
                     
EOF
ModifyDNSZone to activate Anycast

ModifyDNSZone: Activating Anycast for a DNSzone in KeyDNS:

[COMMAND]
(required)                     
[COMMAND]            = 
command              = ModifyDNSZone
dnszone              = test23.com
premiumdnsset        = NULL (OPTIONAL) | ANYCAST1 (OPTIONAL)
                     
[RESPONSE]           = 
code                 = 200
description          = Command completed successfully
property[dnszone][0] = test23.com
queuetime            = 0
runtime              = 0.004
                     
EOF
StatusDNSZone example with Anycast

StatusDNSZone: Checking the status of a DNSzone in KeyDNS:

[COMMAND]
(required)                           
[COMMAND]                  = 
command                    = StatusDNSZone
dnszone                    = test23.com
                           
[RESPONSE]                 = 
code                       = 200
description                = Command completed successfully
property[dnszone][0]       = test23.com
property[soamname][0]      = ns1.dnsres.net
property[soarname][0]      = tech.dnsres.net
property[soaserial][0]     = 2009081701
property[soattl][0]        = 28800
property[dnssec][0]        = 0
property[premiumdnsset][0] = NULL | ANYCAST1
queuetime                  = 0
runtime                    = 0.004
                           
EOF
Applying Anycast to a Domain

Please use the following name server set with your domains in order to use the Anycast set after activation by AddDNSZone/ModifyDNSZone:

  • anycast1.dnsres.net
  • anycast2.dnsres.net

Command examples:

AddDomain

[COMMAND]
(required)            
[COMMAND]   = 
command     = AddDomain
domain      = domain.com
nameserver0 = anycast1.dnsres.net
nameserver1 = anycast2.dnsres.net
            
EOF

ModifyDomain

[COMMAND]
(required)            
[COMMAND]   = 
command     = ModifyDomain
domain      = domain.com
nameserver0 = anycast1.dnsres.net
nameserver1 = anycast2.dnsres.net
            
EOF


You have your own Master NS

If you have your own Nameserver, you can use our infrastructure as Slave Nameserver set with different configurations. Our Nameserver set is also DNSSEC capable, if the Master NS is delivering proper DNSSEC data.

You can state up to 8 Master NS IP addresses. Please make sure, that your Master Nameservers are in sync when using our KeyDNS als Slave NS.

Important: The following features are not working in combination with SLAVE zones:

  • SOA Updates
  • Parameters rr# addrr# delrr#
  • Commands QueryDNSZoneRRList and QueryDNSZoneSubdomainList
  • Web/Mailforwardings
  • DNSSEC
  • Import/ExportDNSZone

The following IP addresses are used to send notifies to and to allow transfer requests from:

  • ns1-eu: 37.187.251.136 / 2001:41d0:c:388:37:187:251:136
  • ns2-eu: 37.187.168.234 / 2001:41d0:d:7ea:37:187:168:234

KeyDNS Unicast SlaveNS set for your Master NS

Command example to add a DNS zone with Unicast in KeyDNS for your Master NS. Note that the name service of your Master NS must be accessible regarding the relevant zones by our Slave NS.

[COMMAND]
(required)                 
COMMAND          = AddDNSZone
MASTERIPADDRESS# = [IP]
                 
EOF

KeyDNS Unicast SlaveNS set for your hidden Master NS

Command example to add a DNS zone with Unicast in KeyDNS for your hidden Master NS. Note that the name service of your Master NS must be accessible regarding the relevant zones by our Slave NS.

[COMMAND]
(required)                 
COMMAND          = AddDNSZone
MASTERIPADDRESS# = [IP]
                 
EOF

KeyDNS Anycast SlaveNS set for your Master NS

Command example to add a DNS zone with Anycast in KeyDNS for your Master NS. Note that the name service of your Master NS must be accessible regarding the relevant zones by our Slave NS.

[COMMAND]
(required)                 
COMMAND          = AddDNSZone
MASTERIPADDRESS# = [IP]
PREMIUMDNSSET    = ANYCAST1
                 
EOF

KeyDNS Anycast SlaveNS set for your hidden Master NS

Command example to add a DNS zone with Anycast in KeyDNS for your hidden Master NS. Note that the name service of your Master NS must be accessible regarding the relevant zones by our Slave NS.

[COMMAND]
(required)                 
COMMAND          = AddDNSZone
MASTERIPADDRESS# = [IP]
PREMIUMDNSSET    = ANYCAST1
                 
EOF

Glossary

Resource Records

A

  • 32-bit IPv4 address, used to map hostnames to an IP address of the host.
    • test.example.com. 28800 IN A 192.0.2.1


AAAA

  • 128-bit IPv6 address, used to map hostnames to an IP address of the host.
    • test.example.com. 28800 IN AAAA 2001:0db8:85a3:0000:0000:8a2e:0370:7334


NS

  • Delegates a DNS zone to use the given authoritative name servers.
    • ns1.example.com. 28800 NS nameserver.example.org.


MX

  • Mail exchange record, maps a domain name to a mailserver for that domain. Composed of priority, a 16 bit integer, and the hostname of the mailserver.
    • example.com. 28800 IN MX 10 mail.example.com.


CNAME

  • Alias of the domain name, the DNS lookup will continue by retrying the lookup with the new name.
    • foo.example.com. 28800 IN CNAME bar.example.com.


TXT

  • Free definable, descriptive text.
    • test.example.com. 28800 IN TXT "Free T-Shirts for all!"


SRV

  • Service location record, used for newer protocols instead of creating protocol-specific records such as MX. The SRV record is composed of a priority, a weight, which serves as second level priority between services with identical priority, a port, the TCP or UDP port where the service can be found, and the target, the name of the service providing host.
    • _jabber._tcp.example.com. 28800 IN SRV 0 5 5060 jabber.example.com


NAPTR

  • Naming Authority Pointer, allows regular expression based rewriting of domain names which can then be used as URIs, further domain names to lookups, etc. NAPTR records are composed of a priority, a preference, which helps to order records with identical priority, similar to the SRV records weight, a flag for the returned record type, a service name, which is offered by the server, a regular expression rule and a replacement.
    • srv.ex.com. 28800 IN NAPTR 100 10 "A" "" "!^.*$!prodsrv.ex.com!"


X-HTTP

  • X-HTTP records are pseudo resource records in our system representing webforwardings. The resource data is composed of redirection type (REDIRECT or FRAME) and the target. Note that pseudo records will neither appear in the records list nor in the exported BIND file. The creation of a X-HTTP pseudo record will also add an A record though, which can not be deleted as long as the forwarding exists.


X-SMTP

  • X-SMTP records are pseudo resource records in our system representing mailforwardings. Note that pseudo records will neither appear in the records list nor in the exported BIND file. The first creation of a X-SMTP pseudo record will also add a MX record though, which can not be deleted as long as any mailforwarding exists.

The example shows a forwarding from 'itsame@mario.example.org' to 'mariobros@example.com'.

    • mario.example.org. 28800 IN X-SMTP itsame@ MAILFORWARD mariobros@example.com
Personal tools
Namespaces

Variants
Actions
Resources
new gTLDs
Products
New Users
General
Tools