dns

package
v0.0.0-...-94a4ce8 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 28, 2024 License: Apache-2.0 Imports: 0 Imported by: 5

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Dnsaaaarec

type Dnsaaaarec struct {
	/**
	* Domain name.
	 */
	Hostname string `json:"hostname,omitempty"`
	/**
	* One or more IPv6 addresses to assign to the domain name.
	 */
	Ipv6address string `json:"ipv6address,omitempty"`
	/**
	* Time to Live (TTL), in seconds, for the record. TTL is the time for which the record must be cached by DNS proxies. The specified TTL is applied to all the resource records that are of the same record type and belong to the specified domain name. For example, if you add an address record, with a TTL of 36000, to the domain name example.com, the TTLs of all the address records of example.com are changed to 36000. If the TTL is not specified, the Citrix ADC uses either the DNS zone's minimum TTL or, if the SOA record is not available on the appliance, the default value of 3600.
	 */
	Ttl int `json:"ttl,omitempty"`
	/**
	* Subnet for which the cached records need to be removed.
	 */
	Ecssubnet string `json:"ecssubnet,omitempty"`
	/**
	* Type of records to display. Available settings function as follows:
		* ADNS - Display all authoritative address records.
		* PROXY - Display all proxy address records.
		* ALL - Display all address records.
	*/
	Type string `json:"type,omitempty"`
	/**
	* Unique number that identifies the cluster node.
	 */
	Nodeid int `json:"nodeid,omitempty"`

	Vservername string `json:"vservername,omitempty"`
	Authtype    string `json:"authtype,omitempty"`
}

* * Configuration for IPv6 address type record resource.

type Dnsaction

type Dnsaction struct {
	/**
	* Name of the dns action.
	 */
	Actionname string `json:"actionname,omitempty"`
	/**
	* The type of DNS action that is being configured.
	 */
	Actiontype string `json:"actiontype,omitempty"`
	/**
	* List of IP address to be returned in case of rewrite_response actiontype. They can be of IPV4 or IPV6 type.
		In case of set command We will remove all the IP address previously present in the action and will add new once given in set dns action command.
	*/
	Ipaddress []string `json:"ipaddress,omitempty"`
	/**
	* Time to live, in seconds.
	 */
	Ttl int `json:"ttl,omitempty"`
	/**
	* The view name that must be used for the given action.
	 */
	Viewname string `json:"viewname,omitempty"`
	/**
	* The location list in priority order used for the given action.
	 */
	Preferredloclist []string `json:"preferredloclist,omitempty"`
	/**
	* Name of the DNS profile to be associated with the transaction for which the action is chosen
	 */
	Dnsprofilename string `json:"dnsprofilename,omitempty"`

	Drop        string `json:"drop,omitempty"`
	Cachebypass string `json:"cachebypass,omitempty"`
	Builtin     string `json:"builtin,omitempty"`
	Feature     string `json:"feature,omitempty"`
}

* * Configuration for DNS action resource.

type Dnsaction64

type Dnsaction64 struct {
	/**
	* Name of the dns64 action.
	 */
	Actionname string `json:"actionname,omitempty"`
	/**
	* The dns64 prefix to be used if the after evaluating the rules
	 */
	Prefix string `json:"prefix,omitempty"`
	/**
	* The expression to select the criteria for ipv4 addresses to be used for synthesis.
		Only if the mappedrule is evaluated to true the corresponding ipv4 address is used for synthesis using respective prefix,
		otherwise the A RR is discarded
	*/
	Mappedrule string `json:"mappedrule,omitempty"`
	/**
	* The expression to select the criteria for eliminating the corresponding ipv6 addresses from the response.
	 */
	Excluderule string `json:"excluderule,omitempty"`

	Builtin string `json:"builtin,omitempty"`
	Feature string `json:"feature,omitempty"`
}

* * Configuration for dns64 action resource.

type Dnsaddrec

type Dnsaddrec struct {
	/**
	* Domain name.
	 */
	Hostname string `json:"hostname,omitempty"`
	/**
	* One or more IPv4 addresses to assign to the domain name.
	 */
	Ipaddress string `json:"ipaddress,omitempty"`
	/**
	* Time to Live (TTL), in seconds, for the record. TTL is the time for which the record must be cached by DNS proxies. The specified TTL is applied to all the resource records that are of the same record type and belong to the specified domain name. For example, if you add an address record, with a TTL of 36000, to the domain name example.com, the TTLs of all the address records of example.com are changed to 36000. If the TTL is not specified, the Citrix ADC uses either the DNS zone's minimum TTL or, if the SOA record is not available on the appliance, the default value of 3600.
	 */
	Ttl int `json:"ttl,omitempty"`
	/**
	* Subnet for which the cached address records need to be removed.
	 */
	Ecssubnet string `json:"ecssubnet,omitempty"`
	/**
	* The address record type. The type can take 3 values:
		ADNS -  If this is specified, all of the authoritative address records will be displayed.
		PROXY - If this is specified, all of the proxy address records will be displayed.
		ALL  -  If this is specified, all of the address records will be displayed.
	*/
	Type string `json:"type,omitempty"`
	/**
	* Unique number that identifies the cluster node.
	 */
	Nodeid int `json:"nodeid,omitempty"`

	Vservername string `json:"vservername,omitempty"`
	Authtype    string `json:"authtype,omitempty"`
}

* * Configuration for address type record resource.

type Dnscnamerec

type Dnscnamerec struct {
	/**
	* Alias for the canonical domain name.
	 */
	Aliasname string `json:"aliasname,omitempty"`
	/**
	* Canonical domain name.
	 */
	Canonicalname string `json:"canonicalname,omitempty"`
	/**
	* Time to Live (TTL), in seconds, for the record. TTL is the time for which the record must be cached by DNS proxies. The specified TTL is applied to all the resource records that are of the same record type and belong to the specified domain name. For example, if you add an address record, with a TTL of 36000, to the domain name example.com, the TTLs of all the address records of example.com are changed to 36000. If the TTL is not specified, the Citrix ADC uses either the DNS zone's minimum TTL or, if the SOA record is not available on the appliance, the default value of 3600.
	 */
	Ttl int `json:"ttl,omitempty"`
	/**
	* Subnet for which the cached CNAME record need to be removed.
	 */
	Ecssubnet string `json:"ecssubnet,omitempty"`
	/**
	* Type of records to display. Available settings function as follows:
		* ADNS - Display all authoritative address records.
		* PROXY - Display all proxy address records.
		* ALL - Display all address records.
	*/
	Type string `json:"type,omitempty"`
	/**
	* Unique number that identifies the cluster node.
	 */
	Nodeid int `json:"nodeid,omitempty"`

	Vservername string `json:"vservername,omitempty"`
	Authtype    string `json:"authtype,omitempty"`
}

* * Configuration for CNAME record resource.

type Dnsglobalbinding

type Dnsglobalbinding struct {
}

* * Binding object which returns the resources bound to dnsglobal_binding.

type Dnsglobaldnspolicybinding

type Dnsglobaldnspolicybinding struct {
	/**
	* Name of the dns policy.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Type of global bind point for which to show bound policies.
	 */
	Type string `json:"type,omitempty"`
	/**
	* Specifies the priority of the policy with which it is bound. Maximum allowed priority should be less than 65535
	 */
	Priority int `json:"priority,omitempty"`
	/**
	* Expression or other value specifying the next policy to be evaluated if the current policy evaluates to TRUE.  Specify one of the following values:
		* NEXT - Evaluate the policy with the next higher priority number.
		* END - End policy evaluation.
		* USE_INVOCATION_RESULT - Applicable if this policy invokes another policy label. If the final goto in the invoked policy label has a value of END, the evaluation stops. If the final goto is anything other than END, the current policy label performs a NEXT.
		* An expression that evaluates to a number.
		If you specify an expression, the number to which it evaluates determines the next policy to evaluate, as follows:
		* If the expression evaluates to a higher numbered priority, the policy with that priority is evaluated next.
		* If the expression evaluates to the priority of the current policy, the policy with the next higher numbered priority is evaluated next.
		* If the expression evaluates to a priority number that is numerically higher than the highest numbered priority, policy evaluation ends.
		An UNDEF event is triggered if:
		* The expression is invalid.
		* The expression evaluates to a priority number that is numerically lower than the current policy's priority.
		* The expression evaluates to a priority number that is between the current policy's priority number (say, 30) and the highest priority number (say, 100), but does not match any configured priority number (for example, the expression evaluates to the number 85). This example assumes that the priority number increments by 10 for every successive policy, and therefore a priority number of 85 does not exist in the policy label.
	*/
	Gotopriorityexpression string `json:"gotopriorityexpression,omitempty"`
	/**
	* Invoke flag.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* Type of policy label invocation.
	 */
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the label to invoke if the current policy rule evaluates to TRUE.
	 */
	Labelname string `json:"labelname,omitempty"`
	/**
	* The number of policies bound to the bindpoint.
	 */
	Numpol int `json:"numpol,omitempty"`
	/**
	* flowtype of the bound rewrite policy.
	 */
	Flowtype       int    `json:"flowtype,omitempty"`
	Globalbindtype string `json:"globalbindtype,omitempty"`
}

* * Binding class showing the dnspolicy that can be bound to dnsglobal.

type Dnsglobalpolicybinding

type Dnsglobalpolicybinding struct {
	/**
	* Name of the dns policy.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Type of global bind point for which to show bound policies.
	 */
	Type string `json:"type,omitempty"`
	/**
	* Specifies the priority of the policy with which it is bound. Maximum allowed priority should be less than 65535
	 */
	Priority uint32 `json:"priority,omitempty"`
	/**
	* Expression or other value specifying the next policy to be evaluated if the current policy evaluates to TRUE.  Specify one of the following values:
		* NEXT - Evaluate the policy with the next higher priority number.
		* END - End policy evaluation.
		* USE_INVOCATION_RESULT - Applicable if this policy invokes another policy label. If the final goto in the invoked policy label has a value of END, the evaluation stops. If the final goto is anything other than END, the current policy label performs a NEXT.
		* An expression that evaluates to a number.
		If you specify an expression, the number to which it evaluates determines the next policy to evaluate, as follows:
		* If the expression evaluates to a higher numbered priority, the policy with that priority is evaluated next.
		* If the expression evaluates to the priority of the current policy, the policy with the next higher numbered priority is evaluated next.
		* If the expression evaluates to a priority number that is numerically higher than the highest numbered priority, policy evaluation ends.
		An UNDEF event is triggered if:
		* The expression is invalid.
		* The expression evaluates to a priority number that is numerically lower than the current policy's priority.
		* The expression evaluates to a priority number that is between the current policy's priority number (say, 30) and the highest priority number (say, 100), but does not match any configured priority number (for example, the expression evaluates to the number 85). This example assumes that the priority number increments by 10 for every successive policy, and therefore a priority number of 85 does not exist in the policy label.
	*/
	Gotopriorityexpression string `json:"gotopriorityexpression,omitempty"`
	/**
	* Invoke flag.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* Type of policy label invocation.
	 */
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the label to invoke if the current policy rule evaluates to TRUE.
	 */
	Labelname string `json:"labelname,omitempty"`
	/**
	* The number of policies bound to the bindpoint.
	 */
	Numpol uint32 `json:"numpol,omitempty"`
	/**
	* flowtype of the bound rewrite policy.
	 */
	Flowtype       uint32 `json:"flowtype,omitempty"`
	Globalbindtype string `json:"globalbindtype,omitempty"`
}

* * Binding class showing the policy that can be bound to dnsglobal.

type Dnskey

type Dnskey struct {
	/**
	* Name of the public-private key pair to publish in the zone.
	 */
	Keyname string `json:"keyname,omitempty"`
	/**
	* File name of the public key.
	 */
	Publickey string `json:"publickey,omitempty"`
	/**
	* File name of the private key.
	 */
	Privatekey string `json:"privatekey,omitempty"`
	/**
	* Time period for which to consider the key valid, after the key is used to sign a zone.
	 */
	Expires int `json:"expires,omitempty"`
	/**
	* Units for the expiry period.
	 */
	Units1 string `json:"units1,omitempty"`
	/**
	* Time at which to generate notification of key expiration, specified as number of days, hours, or minutes before expiry. Must be less than the expiry period. The notification is an SNMP trap sent to an SNMP manager. To enable the appliance to send the trap, enable the DNSKEY-EXPIRY SNMP alarm.
	 */
	Notificationperiod int `json:"notificationperiod,omitempty"`
	/**
	* Units for the notification period.
	 */
	Units2 string `json:"units2,omitempty"`
	/**
	* Time to Live (TTL), in seconds, for the DNSKEY resource record created in the zone. TTL is the time for which the record must be cached by the DNS proxies. If the TTL is not specified, either the DNS zone's minimum TTL or the default value of 3600 is used.
	 */
	Ttl int `json:"ttl,omitempty"`
	/**
	* Passphrase for reading the encrypted public/private DNS keys
	 */
	Password string `json:"password,omitempty"`
	/**
	* Name of the zone for which to create a key.
	 */
	Zonename string `json:"zonename,omitempty"`
	/**
	* Type of key to create.
	 */
	Keytype string `json:"keytype,omitempty"`
	/**
	* Algorithm to generate for zone signing.
	 */
	Algorithm string `json:"algorithm,omitempty"`
	/**
	* Size of the key, in bits.
	 */
	Keysize int `json:"keysize,omitempty"`
	/**
	* Common prefix for the names of the generated public and private key files and the Delegation Signer (DS) resource record. During key generation, the .key, .private, and .ds suffixes are appended automatically to the file name prefix to produce the names of the public key, the private key, and the DS record, respectively.
	 */
	Filenameprefix string `json:"filenameprefix,omitempty"`
	/**
	* URL (protocol, host, path, and file name) from where the DNS key file will be imported. NOTE: The import fails if the object to be imported is on an HTTPS server that requires client certificate authentication for access. This is a mandatory argument
	 */
	Src string `json:"src,omitempty"`
}

* * Configuration for dns key resource.

type Dnsmxrec

type Dnsmxrec struct {
	/**
	* Domain name for which to add the MX record.
	 */
	Domain string `json:"domain,omitempty"`
	/**
	* Host name of the mail exchange server.
	 */
	Mx string `json:"mx,omitempty"`
	/**
	* Priority number to assign to the mail exchange server. A domain name can have multiple mail servers, with a priority number assigned to each server. The lower the priority number, the higher the mail server's priority. When other mail servers have to deliver mail to the specified domain, they begin with the mail server with the lowest priority number, and use other configured mail servers, in priority order, as backups.
	 */
	Pref int `json:"pref,omitempty"`
	/**
	* Time to Live (TTL), in seconds, for the record. TTL is the time for which the record must be cached by DNS proxies. The specified TTL is applied to all the resource records that are of the same record type and belong to the specified domain name. For example, if you add an address record, with a TTL of 36000, to the domain name example.com, the TTLs of all the address records of example.com are changed to 36000. If the TTL is not specified, the Citrix ADC uses either the DNS zone's minimum TTL or, if the SOA record is not available on the appliance, the default value of 3600.
	 */
	Ttl int `json:"ttl,omitempty"`
	/**
	* Subnet for which the cached MX record need to be removed.
	 */
	Ecssubnet string `json:"ecssubnet,omitempty"`
	/**
	* Type of records to display. Available settings function as follows:
		* ADNS - Display all authoritative address records.
		* PROXY - Display all proxy address records.
		* ALL - Display all address records.
	*/
	Type string `json:"type,omitempty"`
	/**
	* Unique number that identifies the cluster node.
	 */
	Nodeid int `json:"nodeid,omitempty"`

	Authtype string `json:"authtype,omitempty"`
}

* * Configuration for MX record resource.

type Dnsnameserver

type Dnsnameserver struct {
	/**
	* IP address of an external name server or, if the Local parameter is set, IP address of a local DNS server (LDNS).
	 */
	Ip string `json:"ip,omitempty"`
	/**
	* Name of a DNS virtual server. Overrides any IP address-based name servers configured on the Citrix ADC.
	 */
	Dnsvservername string `json:"dnsvservername,omitempty"`
	/**
	* Mark the IP address as one that belongs to a local recursive DNS server on the Citrix ADC. The appliance recursively resolves queries received on an IP address that is marked as being local. For recursive resolution to work, the global DNS parameter, Recursion, must also be set.
		If no name server is marked as being local, the appliance functions as a stub resolver and load balances the name servers.
	*/
	Local bool `json:"local,omitempty"`
	/**
	* Administrative state of the name server.
	 */
	State string `json:"state,omitempty"`
	/**
	* Protocol used by the name server. UDP_TCP is not valid if the name server is a DNS virtual server configured on the appliance.
	 */
	Type string `json:"type,omitempty"`
	/**
	* Name of the DNS profile to be associated with the name server
	 */
	Dnsprofilename string `json:"dnsprofilename,omitempty"`

	Servicename     string `json:"servicename,omitempty"`
	Port            string `json:"port,omitempty"`
	Nameserverstate string `json:"nameserverstate,omitempty"`
	Clmonowner      string `json:"clmonowner,omitempty"`
	Clmonview       string `json:"clmonview,omitempty"`
}

* * Configuration for name server resource.

type Dnsnaptrrec

type Dnsnaptrrec struct {
	/**
	* Name of the domain for the NAPTR record.
	 */
	Domain string `json:"domain,omitempty"`
	/**
	* An integer specifying the order in which the NAPTR records MUST be processed in order to accurately represent the ordered list of Rules. The ordering is from lowest to highest
	 */
	Order int `json:"order,omitempty"`
	/**
	* An integer specifying the preference of this NAPTR among NAPTR records having same order. lower the number, higher the preference.
	 */
	Preference int `json:"preference,omitempty"`
	/**
	* flags for this NAPTR.
	 */
	Flags string `json:"flags,omitempty"`
	/**
	* Service Parameters applicable to this delegation path.
	 */
	Services string `json:"services,omitempty"`
	/**
	* The regular expression, that specifies the substitution expression for this NAPTR
	 */
	Regexp string `json:"regexp,omitempty"`
	/**
	* The replacement domain name for this NAPTR.
	 */
	Replacement string `json:"replacement,omitempty"`
	/**
	* Time to Live (TTL), in seconds, for the record. TTL is the time for which the record must be cached by DNS proxies. The specified TTL is applied to all the resource records that are of the same record type and belong to the specified domain name. For example, if you add an address record, with a TTL of 36000, to the domain name example.com, the TTLs of all the address records of example.com are changed to 36000. If the TTL is not specified, the Citrix ADC uses either the DNS zone's minimum TTL or, if the SOA record is not available on the appliance, the default value of 3600.
	 */
	Ttl int `json:"ttl,omitempty"`
	/**
	* Unique, internally generated record ID. View the details of the naptr record to obtain its record ID. Records can be removed by either specifying the domain name and record id OR by specifying
		domain name and all other naptr record attributes as was supplied during the add command.
	*/
	Recordid int `json:"recordid,omitempty"`
	/**
	* Subnet for which the cached NAPTR record need to be removed.
	 */
	Ecssubnet string `json:"ecssubnet,omitempty"`
	/**
	* Type of records to display. Available settings function as follows:
		* ADNS - Display all authoritative address records.
		* PROXY - Display all proxy address records.
		* ALL - Display all address records.
	*/
	Type string `json:"type,omitempty"`
	/**
	* Unique number that identifies the cluster node.
	 */
	Nodeid int `json:"nodeid,omitempty"`

	Authtype    string `json:"authtype,omitempty"`
	Vservername string `json:"vservername,omitempty"`
}

* * Configuration for NAPTR record resource.

type Dnsnsecrec

type Dnsnsecrec struct {
	/**
	* Name of the domain.
	 */
	Hostname string `json:"hostname,omitempty"`
	/**
	* Type of records to display. Available settings function as follows:
		* ADNS - Display all authoritative address records.
		* PROXY - Display all proxy address records.
		* ALL - Display all address records.
	*/
	Type string `json:"type,omitempty"`

	Nextnsec  string `json:"nextnsec,omitempty"`
	Nextrecs  string `json:"nextrecs,omitempty"`
	Ttl       string `json:"ttl,omitempty"`
	Ecssubnet string `json:"ecssubnet,omitempty"`
}

type Dnsnsrec

type Dnsnsrec struct {
	/**
	* Domain name.
	 */
	Domain string `json:"domain,omitempty"`
	/**
	* Host name of the name server to add to the domain.
	 */
	Nameserver string `json:"nameserver,omitempty"`
	/**
	* Time to Live (TTL), in seconds, for the record. TTL is the time for which the record must be cached by DNS proxies. The specified TTL is applied to all the resource records that are of the same record type and belong to the specified domain name. For example, if you add an address record, with a TTL of 36000, to the domain name example.com, the TTLs of all the address records of example.com are changed to 36000. If the TTL is not specified, the Citrix ADC uses either the DNS zone's minimum TTL or, if the SOA record is not available on the appliance, the default value of 3600.
	 */
	Ttl int `json:"ttl,omitempty"`
	/**
	* Subnet for which the cached name server record need to be removed.
	 */
	Ecssubnet string `json:"ecssubnet,omitempty"`
	/**
	* Type of records to display. Available settings function as follows:
		* ADNS - Display all authoritative address records.
		* PROXY - Display all proxy address records.
		* ALL - Display all address records.
	*/
	Type string `json:"type,omitempty"`
	/**
	* Unique number that identifies the cluster node.
	 */
	Nodeid int `json:"nodeid,omitempty"`

	Authtype string `json:"authtype,omitempty"`
}

* * Configuration for name server record resource.

type Dnsparameter

type Dnsparameter struct {
	/**
	* Maximum number of retry attempts when no response is received for a query sent to a name server. Applies to end resolver and forwarder configurations.
	 */
	Retries int `json:"retries,omitempty"`
	/**
	* Minimum permissible time to live (TTL) for all records cached in the DNS cache by DNS proxy, end resolver, and forwarder configurations. If the TTL of a record that is to be cached is lower than the value configured for minTTL, the TTL of the record is set to the value of minTTL before caching. When you modify this setting, the new value is applied only to those records that are cached after the modification. The TTL values of existing records are not changed.
	 */
	Minttl int `json:"minttl"` // Zero is a valid value
	/**
	* Maximum time to live (TTL) for all records cached in the DNS cache by DNS proxy, end resolver, and forwarder configurations. If the TTL of a record that is to be cached is higher than the value configured for maxTTL, the TTL of the record is set to the value of maxTTL before caching. When you modify this setting, the new value is applied only to those records that are cached after the modification. The TTL values of existing records are not changed.
	 */
	Maxttl int `json:"maxttl,omitempty"`
	/**
	* Cache resource records in the DNS cache. Applies to resource records obtained through proxy configurations only. End resolver and forwarder configurations always cache records in the DNS cache, and you cannot disable this behavior. When you disable record caching, the appliance stops caching server responses. However, cached records are not flushed. The appliance does not serve requests from the cache until record caching is enabled again.
	 */
	Cacherecords string `json:"cacherecords,omitempty"`
	/**
	* Type of lookup (DNS or WINS) to attempt first. If the first-priority lookup fails, the second-priority lookup is attempted. Used only by the SSL VPN feature.
	 */
	Namelookuppriority string `json:"namelookuppriority,omitempty"`
	/**
	* Function as an end resolver and recursively resolve queries for domains that are not hosted on the Citrix ADC. Also resolve queries recursively when the external name servers configured on the appliance (for a forwarder configuration) are unavailable. When external name servers are unavailable, the appliance queries a root server and resolves the request recursively, as it does for an end resolver configuration.
	 */
	Recursion string `json:"recursion,omitempty"`
	/**
	* Type of DNS queries (A, AAAA, or both) to generate during the routine functioning of certain Citrix ADC features, such as SSL VPN, cache redirection, and the integrated cache. The queries are sent to the external name servers that are configured for the forwarder function. If you specify both query types, you can also specify the order. Available settings function as follows:
		* OnlyAQuery. Send queries for IPv4 address records (A records) only.
		* OnlyAAAAQuery. Send queries for IPv6 address records (AAAA records) instead of queries for IPv4 address records (A records).
		* AThenAAAAQuery. Send a query for an A record, and then send a query for an AAAA record if the query for the A record results in a NODATA response from the name server.
		* AAAAThenAQuery. Send a query for an AAAA record, and then send a query for an A record if the query for the AAAA record results in a NODATA response from the name server.
	*/
	Resolutionorder string `json:"resolutionorder,omitempty"`
	/**
	* Enable or disable the Domain Name System Security Extensions (DNSSEC) feature on the appliance. Note: Even when the DNSSEC feature is enabled, forwarder configurations (used by internal Citrix ADC features such as SSL VPN and Cache Redirection for name resolution) do not support the DNSSEC OK (DO) bit in the EDNS0 OPT header.
	 */
	Dnssec string `json:"dnssec,omitempty"`
	/**
	* Maximum number of concurrent DNS requests to allow on a single client connection, which is identified by the <clientip:port>-<vserver ip:port> tuple. A value of 0 (zero) applies no limit to the number of concurrent DNS requests allowed on a single client connection.
	 */
	Maxpipeline int `json:"maxpipeline,omitempty"`
	/**
	* Send a root referral if a client queries a domain name that is unrelated to the domains configured/cached on the Citrix ADC. If the setting is disabled, the appliance sends a blank response instead of a root referral. Applicable to domains for which the appliance is authoritative. Disable the parameter when the appliance is under attack from a client that is sending a flood of queries for unrelated domains.
	 */
	Dnsrootreferral string `json:"dnsrootreferral,omitempty"`
	/**
	* While doing DNS64 resolution, this parameter specifies the time to wait before sending an A query if no response is received from backend DNS server for AAAA query.
	 */
	Dns64timeout int `json:"dns64timeout"` // Zero is a valid value
	/**
	* Maximum number of subnets that can be cached corresponding to a single domain. Subnet caching will occur for responses with EDNS Client Subnet (ECS) option. Caching of such responses can be disabled using DNS profile settings. A value of zero indicates that the number of subnets cached is limited only by existing memory constraints. The default value is zero.
	 */
	Ecsmaxsubnets int `json:"ecsmaxsubnets"` // Zero is a valid value
	/**
	* Maximum time to live (TTL) for all negative records ( NXDONAIN and NODATA ) cached in the DNS cache by DNS proxy, end resolver, and forwarder configurations. If the TTL of a record that is to be cached is higher than the value configured for maxnegcacheTTL, the TTL of the record is set to the value of maxnegcacheTTL before caching. When you modify this setting, the new value is applied only to those records that are cached after the modification. The TTL values of existing records are not changed.
	 */
	Maxnegcachettl int `json:"maxnegcachettl,omitempty"`
	/**
	* This parameter is applicable only in proxy mode and if this parameter is enabled  we will forward all the client requests to the backend DNS server and the response served will be cached on Citrix ADC
	 */
	Cachehitbypass string `json:"cachehitbypass,omitempty"`
	/**
	* Maximum memory, in megabytes, that can be used for dns caching per Packet Engine.
	 */
	Maxcachesize int `json:"maxcachesize"` // Zero is a valid value
	/**
	* Maximum memory, in megabytes, that can be used for caching of negative DNS responses per packet engine.
	 */
	Maxnegativecachesize int `json:"maxnegativecachesize"` // Zero is a valid value
	/**
	* If this flag is set to YES, the existing entries in cache do not age out. On reaching the max limit the cache records are frozen
	 */
	Cachenoexpire string `json:"cachenoexpire,omitempty"`
	/**
	* Processing requests split across multiple packets
	 */
	Splitpktqueryprocessing string `json:"splitpktqueryprocessing,omitempty"`
	/**
	* Cache ECS responses with a Scope Prefix length of zero. Such a cached response will be used for all queries with this domain name and any subnet. When disabled, ECS responses with Scope Prefix length of zero will be cached, but not tied to any subnet. This option has no effect if caching of ECS responses is disabled in the corresponding DNS profile.
	 */
	Cacheecszeroprefix string `json:"cacheecszeroprefix,omitempty"`
	/**
	* Maximum UDP packet size that can be handled by Citrix ADC. This is the value advertised by Citrix ADC when responding as an authoritative server and it is also used when Citrix ADC queries other name servers as a forwarder. When acting as a proxy, requests from clients are limited by this parameter - if a request contains a size greater than this value in the OPT record, it will be replaced.
	 */
	Maxudppacketsize int `json:"maxudppacketsize,omitempty"`
	/**
	* Rate limit threshold for Non-Existant domain (NXDOMAIN) responses generated from Citrix ADC. Once the threshold is breached , DNS queries leading to NXDOMAIN response will be dropped. This threshold will not be applied for NXDOMAIN responses got from the backend. The threshold will be applied per packet engine and per second.
	 */
	Nxdomainratelimitthreshold int `json:"nxdomainratelimitthreshold"` // Zero is a valid value

	Builtin                  string `json:"builtin,omitempty"`
	Feature                  string `json:"feature,omitempty"`
	Nxdomainthresholdcrossed string `json:"nxdomainthresholdcrossed,omitempty"`
}

* * Configuration for DNS parameter resource.

type Dnspolicy

type Dnspolicy struct {
	/**
	* Name for the DNS policy.
	 */
	Name string `json:"name,omitempty"`
	/**
	* Expression against which DNS traffic is evaluated.
		Note:
		* On the command line interface, if the expression includes blank spaces, the entire expression must be enclosed in double quotation marks.
		* If the expression itself includes double quotation marks, you must escape the quotations by using the  character.
		* Alternatively, you can use single quotation marks to enclose the rule, in which case you do not have to escape the double quotation marks.
		Example: CLIENT.UDP.DNS.DOMAIN.EQ("domainname")
	*/
	Rule string `json:"rule,omitempty"`
	/**
	* The view name that must be used for the given policy.
	 */
	Viewname string `json:"viewname,omitempty"`
	/**
	* The location used for the given policy. This is deprecated attribute. Please use -prefLocList
	 */
	Preferredlocation string `json:"preferredlocation,omitempty"`
	/**
	* The location list in priority order used for the given policy.
	 */
	Preferredloclist []string `json:"preferredloclist,omitempty"`
	/**
	* The dns packet must be dropped.
	 */
	Drop string `json:"drop,omitempty"`
	/**
	* By pass dns cache for this.
	 */
	Cachebypass string `json:"cachebypass,omitempty"`
	/**
	* Name of the DNS action to perform when the rule evaluates to TRUE. The built in actions function as follows:
		* dns_default_act_Drop. Drop the DNS request.
		* dns_default_act_Cachebypass. Bypass the DNS cache and forward the request to the name server.
		You can create custom actions by using the add dns action command in the CLI or the DNS > Actions > Create DNS Action dialog box in the Citrix ADC configuration utility.
	*/
	Actionname string `json:"actionname,omitempty"`
	/**
	* Name of the messagelog action to use for requests that match this policy.
	 */
	Logaction string `json:"logaction,omitempty"`

	Hits        string `json:"hits,omitempty"`
	Undefhits   string `json:"undefhits,omitempty"`
	Description string `json:"description,omitempty"`
	Builtin     string `json:"builtin,omitempty"`
	Feature     string `json:"feature,omitempty"`
}

* * Configuration for DNS policy resource.

type Dnspolicy64

type Dnspolicy64 struct {
	/**
	* Name for the DNS64 policy.
	 */
	Name string `json:"name,omitempty"`
	/**
	* Expression against which DNS traffic is evaluated.
		Note:
		* On the command line interface, if the expression includes blank spaces, the entire expression must be enclosed in double quotation marks.
		* If the expression itself includes double quotation marks, you must escape the quotations by using the  character.
		* Alternatively, you can use single quotation marks to enclose the rule, in which case you do not have to escape the double quotation marks.
		Example: CLIENT.IP.SRC.IN_SUBENT(23.34.0.0/16)
	*/
	Rule string `json:"rule,omitempty"`
	/**
	* Name of the DNS64 action to perform when the rule evaluates to TRUE. The built in actions function as follows:
		* A default dns64 action with prefix <default prefix> and mapped and exclude are any
		You can create custom actions by using the add dns action command in the CLI or the DNS64 > Actions > Create DNS64 Action dialog box in the Citrix ADC configuration utility.
	*/
	Action string `json:"action,omitempty"`

	Hits        string `json:"hits,omitempty"`
	Labeltype   string `json:"labeltype,omitempty"`
	Labelname   string `json:"labelname,omitempty"`
	Undefhits   string `json:"undefhits,omitempty"`
	Description string `json:"description,omitempty"`
}

* * Configuration for dns64 policy resource.

type Dnspolicy64binding

type Dnspolicy64binding struct {
	/**
	* Name of the DNS64 policy.
	 */
	Name string `json:"name,omitempty"`
}

* * Binding object which returns the resources bound to dnspolicy64_binding.

type Dnspolicy64lbvserverbinding

type Dnspolicy64lbvserverbinding struct {
	/**
	* Location where policy is bound
	 */
	Boundto string `json:"boundto,omitempty"`
	/**
	* Specifies the priority of the policy.
	 */
	Priority int `json:"priority,omitempty"`
	/**
	* Expression specifying the priority of the next policy which will get evaluated if the current policy rule evaluates to TRUE.
	 */
	Gotopriorityexpression string `json:"gotopriorityexpression,omitempty"`
	/**
	* Name of the DNS64 policy.
	 */
	Name string `json:"name,omitempty"`
}

* * Binding class showing the lbvserver that can be bound to dnspolicy64.

type Dnspolicy64vserverbinding

type Dnspolicy64vserverbinding struct {
	/**
	* Location where policy is bound
	 */
	Boundto string `json:"boundto,omitempty"`
	/**
	* Specifies the priority of the policy.
	 */
	Priority uint32 `json:"priority,omitempty"`
	/**
	* Expression specifying the priority of the next policy which will get evaluated if the current policy rule evaluates to TRUE.
	 */
	Gotopriorityexpression string `json:"gotopriorityexpression,omitempty"`
	/**
	* Name of the DNS64 policy.
	 */
	Name string `json:"name,omitempty"`
}

* * Binding class showing the vserver that can be bound to dnspolicy64.

type Dnspolicybinding

type Dnspolicybinding struct {
	/**
	* Name of the DNS policy.
	 */
	Name string `json:"name,omitempty"`
}

* * Binding object which returns the resources bound to dnspolicy_binding.

type Dnspolicydnsglobalbinding

type Dnspolicydnsglobalbinding struct {
	/**
	* Location where policy is bound
	 */
	Boundto string `json:"boundto,omitempty"`
	/**
	* Specifies the priority of the policy.
	 */
	Priority int `json:"priority,omitempty"`
	/**
	* Indicates whether policy is bound or not.
	 */
	Activepolicy int `json:"activepolicy,omitempty"`
	/**
	* Expression specifying the priority of the next policy which will get evaluated if the current policy rule evaluates to TRUE.
	 */
	Gotopriorityexpression string `json:"gotopriorityexpression,omitempty"`
	/**
	* Type of policy label invocation.
	 */
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the label to invoke if the current policy rule evaluates to TRUE.
	 */
	Labelname string `json:"labelname,omitempty"`
	/**
	* Name of the DNS policy.
	 */
	Name string `json:"name,omitempty"`
}

* * Binding class showing the dnsglobal that can be bound to dnspolicy.

type Dnspolicydnspolicylabelbinding

type Dnspolicydnspolicylabelbinding struct {
	/**
	* Location where policy is bound
	 */
	Boundto string `json:"boundto,omitempty"`
	/**
	* Specifies the priority of the policy.
	 */
	Priority int `json:"priority,omitempty"`
	/**
	* Indicates whether policy is bound or not.
	 */
	Activepolicy int `json:"activepolicy,omitempty"`
	/**
	* Expression specifying the priority of the next policy which will get evaluated if the current policy rule evaluates to TRUE.
	 */
	Gotopriorityexpression string `json:"gotopriorityexpression,omitempty"`
	/**
	* Type of policy label invocation.
	 */
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the label to invoke if the current policy rule evaluates to TRUE.
	 */
	Labelname string `json:"labelname,omitempty"`
	/**
	* Name of the DNS policy.
	 */
	Name string `json:"name,omitempty"`
}

* * Binding class showing the dnspolicylabel that can be bound to dnspolicy.

type Dnspolicyglobalbinding

type Dnspolicyglobalbinding struct {
	/**
	* Location where policy is bound
	 */
	Boundto string `json:"boundto,omitempty"`
	/**
	* Specifies the priority of the policy.
	 */
	Priority uint32 `json:"priority,omitempty"`
	/**
	* Indicates whether policy is bound or not.
	 */
	Activepolicy int32 `json:"activepolicy,omitempty"`
	/**
	* Expression specifying the priority of the next policy which will get evaluated if the current policy rule evaluates to TRUE.
	 */
	Gotopriorityexpression string `json:"gotopriorityexpression,omitempty"`
	/**
	* Type of policy label invocation.
	 */
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the label to invoke if the current policy rule evaluates to TRUE.
	 */
	Labelname string `json:"labelname,omitempty"`
	/**
	* Name of the DNS policy.
	 */
	Name string `json:"name,omitempty"`
}

* * Binding class showing the global that can be bound to dnspolicy.

type Dnspolicylabel

type Dnspolicylabel struct {
	/**
	* Name of the dns policy label.
	 */
	Labelname string `json:"labelname,omitempty"`
	/**
	* The type of transformations allowed by the policies bound to the label.
	 */
	Transform string `json:"transform,omitempty"`
	/**
	* The new name of the dns policylabel.
	 */
	Newname string `json:"newname,omitempty"`

	Numpol                 string `json:"numpol,omitempty"`
	Hits                   string `json:"hits,omitempty"`
	Priority               string `json:"priority,omitempty"`
	Gotopriorityexpression string `json:"gotopriorityexpression,omitempty"`
	Labeltype              string `json:"labeltype,omitempty"`
	Invokelabelname        string `json:"invoke_labelname,omitempty"`
	Flowtype               string `json:"flowtype,omitempty"`
	Description            string `json:"description,omitempty"`
	Isdefault              string `json:"isdefault,omitempty"`
}

* * Configuration for dns policy label resource.

type Dnspolicylabelbinding

type Dnspolicylabelbinding struct {
	/**
	* Name of the dns policy label.
	 */
	Labelname string `json:"labelname,omitempty"`
}

* * Binding object which returns the resources bound to dnspolicylabel_binding.

type Dnspolicylabeldnspolicybinding

type Dnspolicylabeldnspolicybinding struct {
	/**
	* The dns policy name.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Specifies the priority of the policy.
	 */
	Priority int `json:"priority,omitempty"`
	/**
	* Expression specifying the priority of the next policy which will get evaluated if the current policy rule evaluates to TRUE.
	 */
	Gotopriorityexpression string `json:"gotopriorityexpression,omitempty"`
	/**
	* Invoke flag.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* Type of policy label invocation.
	 */
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the label to invoke if the current policy rule evaluates to TRUE.
	 */
	Invokelabelname string `json:"invoke_labelname,omitempty"`
	/**
	* Name of the dns policy label.
	 */
	Labelname string `json:"labelname,omitempty"`
}

* * Binding class showing the dnspolicy that can be bound to dnspolicylabel.

type Dnspolicylabelpolicybinding

type Dnspolicylabelpolicybinding struct {
	/**
	* The dns policy name.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Specifies the priority of the policy.
	 */
	Priority uint32 `json:"priority,omitempty"`
	/**
	* Expression specifying the priority of the next policy which will get evaluated if the current policy rule evaluates to TRUE.
	 */
	Gotopriorityexpression string `json:"gotopriorityexpression,omitempty"`
	/**
	* Invoke flag.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* Type of policy label invocation.
	 */
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the label to invoke if the current policy rule evaluates to TRUE.
	 */
	Invokelabelname string `json:"invoke_labelname,omitempty"`
	/**
	* Name of the dns policy label.
	 */
	Labelname string `json:"labelname,omitempty"`
}

* * Binding class showing the policy that can be bound to dnspolicylabel.

type Dnspolicylabelpolicybindingbinding

type Dnspolicylabelpolicybindingbinding struct {
	/**
	* The dns policy name.
	 */
	Policyname string `json:"policyname,omitempty"`
	/**
	* Specifies the priority of the policy.
	 */
	Priority int `json:"priority,omitempty"`
	/**
	* Expression specifying the priority of the next policy which will get evaluated if the current policy rule evaluates to TRUE.
	 */
	Gotopriorityexpression string `json:"gotopriorityexpression,omitempty"`
	/**
	* Invoke flag.
	 */
	Invoke bool `json:"invoke,omitempty"`
	/**
	* Type of policy label invocation.
	 */
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the label to invoke if the current policy rule evaluates to TRUE.
	 */
	Invokelabelname string `json:"invoke_labelname,omitempty"`
	/**
	* Name of the dns policy label.
	 */
	Labelname string `json:"labelname,omitempty"`
}

* * Binding class showing the policybinding that can be bound to dnspolicylabel.

type Dnspolicypolicylabelbinding

type Dnspolicypolicylabelbinding struct {
	/**
	* Location where policy is bound
	 */
	Boundto string `json:"boundto,omitempty"`
	/**
	* Specifies the priority of the policy.
	 */
	Priority uint32 `json:"priority,omitempty"`
	/**
	* Indicates whether policy is bound or not.
	 */
	Activepolicy int32 `json:"activepolicy,omitempty"`
	/**
	* Expression specifying the priority of the next policy which will get evaluated if the current policy rule evaluates to TRUE.
	 */
	Gotopriorityexpression string `json:"gotopriorityexpression,omitempty"`
	/**
	* Type of policy label invocation.
	 */
	Labeltype string `json:"labeltype,omitempty"`
	/**
	* Name of the label to invoke if the current policy rule evaluates to TRUE.
	 */
	Labelname string `json:"labelname,omitempty"`
	/**
	* Name of the DNS policy.
	 */
	Name string `json:"name,omitempty"`
}

* * Binding class showing the policylabel that can be bound to dnspolicy.

type Dnsprofile

type Dnsprofile struct {
	/**
	* Name of the DNS profile
	 */
	Dnsprofilename string `json:"dnsprofilename,omitempty"`
	/**
	* DNS query logging; if enabled, DNS query information such as DNS query id, DNS query flags , DNS domain name and DNS query type will be logged
	 */
	Dnsquerylogging string `json:"dnsquerylogging,omitempty"`
	/**
	* DNS answer section; if enabled, answer section in the response will be logged.
	 */
	Dnsanswerseclogging string `json:"dnsanswerseclogging,omitempty"`
	/**
	* DNS extended logging; if enabled, authority and additional section in the response will be logged.
	 */
	Dnsextendedlogging string `json:"dnsextendedlogging,omitempty"`
	/**
	* DNS error logging; if enabled, whenever error is encountered in DNS module reason for the error will be logged.
	 */
	Dnserrorlogging string `json:"dnserrorlogging,omitempty"`
	/**
	* Cache resource records in the DNS cache. Applies to resource records obtained through proxy configurations only. End resolver and forwarder configurations always cache records in the DNS cache, and you cannot disable this behavior. When you disable record caching, the appliance stops caching server responses. However, cached records are not flushed. The appliance does not serve requests from the cache until record caching is enabled again.
	 */
	Cacherecords string `json:"cacherecords,omitempty"`
	/**
	* Cache negative responses in the DNS cache. When disabled, the appliance stops caching negative responses except referral records. This applies to all configurations - proxy, end resolver, and forwarder. However, cached responses are not flushed. The appliance does not serve negative responses from the cache until this parameter is enabled again.
	 */
	Cachenegativeresponses string `json:"cachenegativeresponses,omitempty"`
	/**
	* Drop the DNS requests containing multiple queries. When enabled, DNS requests containing multiple queries will be dropped. In case of proxy configuration by default the DNS request containing multiple queries is forwarded to the backend and in case of ADNS and Resolver configuration NOCODE error response will be sent to the client.
	 */
	Dropmultiqueryrequest string `json:"dropmultiqueryrequest,omitempty"`
	/**
	* Cache DNS responses with EDNS Client Subnet(ECS) option in the DNS cache. When disabled, the appliance stops caching responses with ECS option. This is relevant to proxy configuration. Enabling/disabling support of ECS option when Citrix ADC is authoritative for a GSLB domain is supported using a knob in GSLB vserver. In all other modes, ECS option is ignored.
	 */
	Cacheecsresponses string `json:"cacheecsresponses,omitempty"`

	Referencecount string `json:"referencecount,omitempty"`
}

* * Configuration for DNS profile resource.

type Dnsproxyrecords

type Dnsproxyrecords struct {
	/**
	* Filter the DNS records to be flushed.e.g flush dns proxyRecords -type A   will flush only the A records from the cache.
	 */
	Type string `json:"type,omitempty"`
	/**
	* Filter the Negative DNS records i.e NXDOMAIN and NODATA entries to be flushed. e.g flush dns proxyRecords NXDOMAIN will flush only the NXDOMAIN entries from the cache
	 */
	Negrectype string `json:"negrectype,omitempty"`
}

* * Configuration for proxy record resource.

type Dnsptrrec

type Dnsptrrec struct {
	/**
	* Reversed domain name representation of the IPv4 or IPv6 address for which to create the PTR record. Use the "in-addr.arpa." suffix for IPv4 addresses and the "ip6.arpa." suffix for IPv6 addresses.
	 */
	Reversedomain string `json:"reversedomain,omitempty"`
	/**
	* Domain name for which to configure reverse mapping.
	 */
	Domain string `json:"domain,omitempty"`
	/**
	* Time to Live (TTL), in seconds, for the record. TTL is the time for which the record must be cached by DNS proxies. The specified TTL is applied to all the resource records that are of the same record type and belong to the specified domain name. For example, if you add an address record, with a TTL of 36000, to the domain name example.com, the TTLs of all the address records of example.com are changed to 36000. If the TTL is not specified, the Citrix ADC uses either the DNS zone's minimum TTL or, if the SOA record is not available on the appliance, the default value of 3600.
	 */
	Ttl int `json:"ttl,omitempty"`
	/**
	* Subnet for which the cached PTR record need to be removed.
	 */
	Ecssubnet string `json:"ecssubnet,omitempty"`
	/**
	* Type of records to display. Available settings function as follows:
		* ADNS - Display all authoritative address records.
		* PROXY - Display all proxy address records.
		* ALL - Display all address records.
	*/
	Type string `json:"type,omitempty"`
	/**
	* Unique number that identifies the cluster node.
	 */
	Nodeid int `json:"nodeid,omitempty"`

	Authtype string `json:"authtype,omitempty"`
}

* * Configuration for PTR record resource.

type Dnssoarec

type Dnssoarec struct {
	/**
	* Domain name for which to add the SOA record.
	 */
	Domain string `json:"domain,omitempty"`
	/**
	* Domain name of the name server that responds authoritatively for the domain.
	 */
	Originserver string `json:"originserver,omitempty"`
	/**
	* Email address of the contact to whom domain issues can be addressed. In the email address, replace the @ sign with a period (.). For example, enter domainadmin.example.com instead of domainadmin@example.com.
	 */
	Contact string `json:"contact,omitempty"`
	/**
	* The secondary server uses this parameter to determine whether it requires a zone transfer from the primary server.
	 */
	Serial int `json:"serial,omitempty"`
	/**
	* Time, in seconds, for which a secondary server must wait between successive checks on the value of the serial number.
	 */
	Refresh int `json:"refresh,omitempty"`
	/**
	* Time, in seconds, between retries if a secondary server's attempt to contact the primary server for a zone refresh fails.
	 */
	Retry int `json:"retry,omitempty"`
	/**
	* Time, in seconds, after which the zone data on a secondary name server can no longer be considered authoritative because all refresh and retry attempts made during the period have failed. After the expiry period, the secondary server stops serving the zone. Typically one week. Not used by the primary server.
	 */
	Expire int `json:"expire,omitempty"`
	/**
	* Default time to live (TTL) for all records in the zone. Can be overridden for individual records.
	 */
	Minimum int `json:"minimum,omitempty"`
	/**
	* Time to Live (TTL), in seconds, for the record. TTL is the time for which the record must be cached by DNS proxies. The specified TTL is applied to all the resource records that are of the same record type and belong to the specified domain name. For example, if you add an address record, with a TTL of 36000, to the domain name example.com, the TTLs of all the address records of example.com are changed to 36000. If the TTL is not specified, the Citrix ADC uses either the DNS zone's minimum TTL or, if the SOA record is not available on the appliance, the default value of 3600.
	 */
	Ttl int `json:"ttl,omitempty"`
	/**
	* Subnet for which the cached SOA record need to be removed.
	 */
	Ecssubnet string `json:"ecssubnet,omitempty"`
	/**
	* Type of records to display. Available settings function as follows:
		* ADNS - Display all authoritative address records.
		* PROXY - Display all proxy address records.
		* ALL - Display all address records.
	*/
	Type string `json:"type,omitempty"`
	/**
	* Unique number that identifies the cluster node.
	 */
	Nodeid int `json:"nodeid,omitempty"`

	Authtype string `json:"authtype,omitempty"`
}

* * Configuration for SOA record resource.

type Dnssrvrec

type Dnssrvrec struct {
	/**
	* Domain name, which, by convention, is prefixed by the symbolic name of the desired service and the symbolic name of the desired protocol, each with an underscore (_) prepended. For example, if an SRV-aware client wants to discover a SIP service that is provided over UDP, in the domain example.com, the client performs a lookup for _sip._udp.example.com.
	 */
	Domain string `json:"domain,omitempty"`
	/**
	* Target host for the specified service.
	 */
	Target string `json:"target,omitempty"`
	/**
	* Integer specifying the priority of the target host. The lower the number, the higher the priority. If multiple target hosts have the same priority, selection is based on the Weight parameter.
	 */
	Priority int `json:"priority,omitempty"`
	/**
	* Weight for the target host. Aids host selection when two or more hosts have the same priority. A larger number indicates greater weight.
	 */
	Weight int `json:"weight,omitempty"`
	/**
	* Port on which the target host listens for client requests.
	 */
	Port int `json:"port,omitempty"`
	/**
	* Time to Live (TTL), in seconds, for the record. TTL is the time for which the record must be cached by DNS proxies. The specified TTL is applied to all the resource records that are of the same record type and belong to the specified domain name. For example, if you add an address record, with a TTL of 36000, to the domain name example.com, the TTLs of all the address records of example.com are changed to 36000. If the TTL is not specified, the Citrix ADC uses either the DNS zone's minimum TTL or, if the SOA record is not available on the appliance, the default value of 3600.
	 */
	Ttl int `json:"ttl,omitempty"`
	/**
	* Subnet for which the cached SRV record need to be removed.
	 */
	Ecssubnet string `json:"ecssubnet,omitempty"`
	/**
	* Type of records to display. Available settings function as follows:
		* ADNS - Display all authoritative address records.
		* PROXY - Display all proxy address records.
		* ALL - Display all address records.
	*/
	Type string `json:"type,omitempty"`
	/**
	* Unique number that identifies the cluster node.
	 */
	Nodeid int `json:"nodeid,omitempty"`

	Authtype string `json:"authtype,omitempty"`
}

* * Configuration for server record resource.

type Dnssubnetcache

type Dnssubnetcache struct {
	/**
	* ECS Subnet.
	 */
	Ecssubnet string `json:"ecssubnet,omitempty"`
	/**
	* Flush all the ECS subnets from the DNS cache.
	 */
	All bool `json:"all,omitempty"`
	/**
	* Unique number that identifies the cluster node.
	 */
	Nodeid int `json:"nodeid,omitempty"`

	Hostname string `json:"hostname,omitempty"`
	Nextrecs string `json:"nextrecs,omitempty"`
}

* * Configuration for subnet cache resource.

type Dnssuffix

type Dnssuffix struct {
	/**
	* Suffix to be appended when resolving domain names that are not fully qualified.
	 */
	Dnssuffix string `json:"Dnssuffix,omitempty"`
}

* * Configuration for DNS suffix resource.

type Dnstxtrec

type Dnstxtrec struct {
	/**
	* Name of the domain for the TXT record.
	 */
	Domain string `json:"domain,omitempty"`
	/**
	* Information to store in the TXT resource record. Enclose the string in single or double quotation marks. A TXT resource record can contain up to six strings, each of which can contain up to 255 characters. If you want to add a string of more than 255 characters, evaluate whether splitting it into two or more smaller strings, subject to the six-string limit, works for you.
	 */
	String []string `json:"String,omitempty"`
	/**
	* Time to Live (TTL), in seconds, for the record. TTL is the time for which the record must be cached by DNS proxies. The specified TTL is applied to all the resource records that are of the same record type and belong to the specified domain name. For example, if you add an address record, with a TTL of 36000, to the domain name example.com, the TTLs of all the address records of example.com are changed to 36000. If the TTL is not specified, the Citrix ADC uses either the DNS zone's minimum TTL or, if the SOA record is not available on the appliance, the default value of 3600.
	 */
	Ttl int `json:"ttl,omitempty"`
	/**
	* Unique, internally generated record ID. View the details of the TXT record to obtain its record ID. Mutually exclusive with the string parameter.
	 */
	Recordid int `json:"recordid,omitempty"`
	/**
	* Subnet for which the cached TXT record need to be removed.
	 */
	Ecssubnet string `json:"ecssubnet,omitempty"`
	/**
	* Type of records to display. Available settings function as follows:
		* ADNS - Display all authoritative address records.
		* PROXY - Display all proxy address records.
		* ALL - Display all address records.
	*/
	Type string `json:"type,omitempty"`
	/**
	* Unique number that identifies the cluster node.
	 */
	Nodeid int `json:"nodeid,omitempty"`

	Authtype string `json:"authtype,omitempty"`
}

* * Configuration for TXT record resource.

type Dnsview

type Dnsview struct {
	/**
	* Name for the DNS view.
	 */
	Viewname string `json:"viewname,omitempty"`

	Flags string `json:"flags,omitempty"`
}

* * Configuration for DNS view resource.

type Dnsviewbinding

type Dnsviewbinding struct {
	/**
	* Name of the view to display.<br/>Minimum value =
	 */
	Viewname string `json:"viewname,omitempty"`
}

* * Binding object which returns the resources bound to dnsview_binding.

type Dnsviewdnspolicybinding

type Dnsviewdnspolicybinding struct {
	/**
	* dnspolicy name of this view.
	 */
	Dnspolicyname string `json:"dnspolicyname,omitempty"`
	/**
	* Name of the view to display.
	 */
	Viewname string `json:"viewname,omitempty"`
}

* * Binding class showing the dnspolicy that can be bound to dnsview.

type Dnsviewgslbservicebinding

type Dnsviewgslbservicebinding struct {
	/**
	* Service name of the service using this view.
	 */
	Gslbservicename string `json:"gslbservicename,omitempty"`
	/**
	* IP of the service corresponding to the given view.
	 */
	Ipaddress string `json:"ipaddress,omitempty"`
	/**
	* Name of the view to display.
	 */
	Viewname string `json:"viewname,omitempty"`
}

* * Binding class showing the gslbservice that can be bound to dnsview.

type Dnsviewpolicybinding

type Dnsviewpolicybinding struct {
	/**
	* dnspolicy name of this view.
	 */
	Dnspolicyname string `json:"dnspolicyname,omitempty"`
	/**
	* Name of the view to display.
	 */
	Viewname string `json:"viewname,omitempty"`
}

* * Binding class showing the policy that can be bound to dnsview.

type Dnsviewservicebinding

type Dnsviewservicebinding struct {
	/**
	* Service name of the service using this view.
	 */
	Gslbservicename string `json:"gslbservicename,omitempty"`
	/**
	* IP of the service corresponding to the given view.
	 */
	Ipaddress string `json:"ipaddress,omitempty"`
	/**
	* Name of the view to display.
	 */
	Viewname string `json:"viewname,omitempty"`
}

* * Binding class showing the service that can be bound to dnsview.

type Dnszone

type Dnszone struct {
	/**
	* Name of the zone to create.
	 */
	Zonename string `json:"zonename,omitempty"`
	/**
	* Deploy the zone in proxy mode. Enable in the following scenarios:
		* The load balanced DNS servers are authoritative for the zone and all resource records that are part of the zone.
		* The load balanced DNS servers are authoritative for the zone, but the Citrix ADC owns a subset of the resource records that belong to the zone (partial zone ownership configuration). Typically seen in global server load balancing (GSLB) configurations, in which the appliance responds authoritatively to queries for GSLB domain names but forwards queries for other domain names in the zone to the load balanced servers.
		In either scenario, do not create the zone's Start of Authority (SOA) and name server (NS) resource records on the appliance.
		Disable if the appliance is authoritative for the zone, but make sure that you have created the SOA and NS records on the appliance before you create the zone.
	*/
	Proxymode string `json:"proxymode,omitempty"`
	/**
	* Enable dnssec offload for this zone.
	 */
	Dnssecoffload string `json:"dnssecoffload,omitempty"`
	/**
	* Enable nsec generation for dnssec offload.
	 */
	Nsec string `json:"nsec,omitempty"`
	/**
	* Name of the public/private DNS key pair with which to sign the zone. You can sign a zone with up to four keys.
	 */
	Keyname []string `json:"keyname,omitempty"`
	/**
	* Type of zone to display. Mutually exclusive with the DNS Zone (zoneName) parameter. Available settings function as follows:
		* ADNS - Display all the zones for which the Citrix ADC is authoritative.
		* PROXY - Display all the zones for which the Citrix ADC is functioning as a proxy server.
		* ALL - Display all the zones configured on the appliance.
	*/
	Type string `json:"type,omitempty"`

	Flags string `json:"flags,omitempty"`
}

* * Configuration for DNS zone resource.

type Dnszonebinding

type Dnszonebinding struct {
	/**
	* Name of the zone. Mutually exclusive with the type parameter.<br/>Minimum value =
	 */
	Zonename string `json:"zonename,omitempty"`
}

* * Binding object which returns the resources bound to dnszone_binding.

type Dnszonednskeybinding

type Dnszonednskeybinding struct {
	/**
	* Name of the public/private DNS key pair with which to sign the zone. You can sign a zone with up to four keys.
	 */
	Keyname []string `json:"keyname,omitempty"`
	/**
	* The time when sign was done with this key.
	 */
	Siginceptiontime []int `json:"siginceptiontime,omitempty"`
	/**
	* Integer which denote status of keys.
	 */
	Signed int `json:"signed,omitempty"`
	/**
	* Time period for which to consider the key valid, after the key is used to sign a zone.
	 */
	Expires int `json:"expires,omitempty"`
	/**
	* Name of the zone. Mutually exclusive with the type parameter.
	 */
	Zonename string `json:"zonename,omitempty"`
}

* * Binding class showing the dnskey that can be bound to dnszone.

type Dnszonedomainbinding

type Dnszonedomainbinding struct {
	/**
	* Domain name that belongs to the given zone
	 */
	Domain string `json:"domain,omitempty"`
	/**
	* An array of record types associated with the nsec record.
	 */
	Nextrecs []string `json:"nextrecs,omitempty"`
	/**
	* Name of the zone. Mutually exclusive with the type parameter.
	 */
	Zonename string `json:"zonename,omitempty"`
}

* * Binding class showing the domain that can be bound to dnszone.

type Dnszonekeybinding

type Dnszonekeybinding struct {
	/**
	* Name of the public/private DNS key pair with which to sign the zone. You can sign a zone with up to four keys.
	 */
	Keyname []string `json:"keyname,omitempty"`
	/**
	* The time when sign was done with this key.
	 */
	Siginceptiontime []uint32 `json:"siginceptiontime,omitempty"`
	/**
	* Integer which denote status of keys.
	 */
	Signed uint32 `json:"signed,omitempty"`
	/**
	* Time period for which to consider the key valid, after the key is used to sign a zone.
	 */
	Expires uint32 `json:"expires,omitempty"`
	/**
	* Name of the zone. Mutually exclusive with the type parameter.
	 */
	Zonename string `json:"zonename,omitempty"`
}

* * Binding class showing the key that can be bound to dnszone.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL