{ "id":"/axapi/v3/slb/template/dns/{name}/recursive-dns-resolution", "type":"object", "node-type":"scalar", "title":"recursive-dns-resolution", "partition-visibility":"shared", "description":"Recursive DNS resolver configuration", "properties":{ "host-list-cfg":{ "type":"array", "minItems":1, "items":{ "type":"object" }, "uniqueItems":true, "array":[ { "properties":{ "hostnames":{ "type":"string", "format":"string-rlx", "minLength":1, "maxLength":63, "partition-visibility":"shared", "$ref":"/axapi/v3/class-list", "description":"Hostnames class-list name (ac type), perform resolution while query name matched" } } } ] }, "csubnet-retry":{ "type":"number", "format":"flag", "default":0, "partition-visibility":"shared", "description":"retry when server REFUSED AX inserted EDNS(0) subnet, works only when insert-client-subnet is configured", "optional":true }, "ipv4-nat-pool":{ "type":"string", "format":"string-rlx", "minLength":1, "maxLength":63, "partition-visibility":"shared", "$ref":"/axapi/v3/ip/nat/pool", "description":"IPv4 Source NAT pool or pool group", "optional":true }, "ipv6-nat-pool":{ "type":"string", "format":"string-rlx", "minLength":1, "maxLength":63, "partition-visibility":"shared", "$ref":"/axapi/v3/ipv6/nat/pool", "description":"IPv6 Source NAT pool or pool group", "optional":true }, "retries-per-level":{ "type":"number", "format":"number", "minimum":1, "maximum":6, "default":6, "partition-visibility":"shared", "description":"Number of DNS query retries at each server level before closing client connection, default 6", "optional":true }, "minimal-response":{ "type":"number", "format":"flag", "default":0, "partition-visibility":"shared", "description":"Remove authority and additional records when applicable", "optional":true }, "max-trials":{ "type":"number", "format":"number", "minimum":1, "maximum":62, "default":30, "partition-visibility":"shared", "description":"Total number of times to try DNS query to server before closing client connection, default 30", "optional":true }, "default-recursive":{ "type":"number", "format":"flag", "default":0, "partition-visibility":"shared", "description":"Default recurisve mode, forward query to bound service-group if hostnames matched", "optional":true }, "uuid":{ "type":"string", "format":"string", "minLength":1, "maxLength":64, "partition-visibility":"shared", "modify-not-allowed":1, "description":"uuid of the object", "optional":true }, "lookup-order":{ "type":"object", "$ref":"/axapi/v3/slb/template/dns/{name}/recursive-dns-resolution/lookup-order", "properties":{ "query-type":{ "type":"array", "minItems":1, "items":{ "type":"object" }, "uniqueItems":true, "array":[ { "properties":{ "str-query-type":{ "type":"string", "format":"enum", "partition-visibility":"shared", "description":"'A': Address record; 'AAAA': IPv6 Address record; 'CNAME': Canonical name record; 'MX': Mail exchange record; 'NS': Name server record; 'SRV': Service locator; 'PTR': PTR resource record; 'SOA': Start of authority record; 'TXT': Text record; 'ANY': All cached record; ", "enum":[ "A", "AAAA", "CNAME", "MX", "NS", "SRV", "PTR", "SOA", "TXT", "ANY" ] }, "num-query-type":{ "type":"number", "format":"number", "minimum":1, "maximum":65535, "partition-visibility":"shared", "description":"Other query type value" }, "order":{ "type":"string", "format":"enum", "partition-visibility":"shared", "description":"'ipv4-precede-ipv6': Recursive lookup via IPv4 then IPv6; 'ipv6-precede-ipv4': Recursive lookup via IPv6 then IPv4; ", "enum":[ "ipv4-precede-ipv6", "ipv6-precede-ipv4" ] } } } ] }, "uuid":{ "type":"string", "format":"string", "minLength":1, "maxLength":64, "partition-visibility":"shared", "modify-not-allowed":1, "description":"uuid of the object" } } } } }