slb template doh

DNS over HTTP(s) template

doh Specification

Parameter Value
Type Collection
Object Key(s) name
Collection Name doh-list
Collection URI /axapi/v3/slb/template/doh
Element Name doh
Element URI /axapi/v3/slb/template/doh/{name}
Element Attributes doh_attributes
Partition Visibility shared
Schema doh schema

Operations Allowed:

OperationMethodURIPayload

Create Object

POST

/axapi/v3/slb/template/doh

doh attributes

Create List

POST

/axapi/v3/slb/template/doh

doh attributes

Get Object

GET

/axapi/v3/slb/template/doh/{name}

doh attributes

Get List

GET

/axapi/v3/slb/template/doh

doh-list

Modify Object

POST

/axapi/v3/slb/template/doh/{name}

doh attributes

Replace Object

PUT

/axapi/v3/slb/template/doh/{name}

doh attributes

Replace List

PUT

/axapi/v3/slb/template/doh

doh-list

Delete Object

DELETE

/axapi/v3/slb/template/doh/{name}

doh attributes

doh-list

doh-list is JSON List of doh attributes

doh-list : [

]

doh attributes

conn-reuse

Description ‘enable’: Enable Connection Reuse; ‘disable’: Disable Connection-Reuse (Default);

Type: string

Supported Values: enable, disable

Default: disable

dns

Description DNS Template Name

Type: string

Format: string-rlx

Maximum Length: 127 characters

Maximum Length: 1 characters

Default: default

Mutual Exclusion: dns and shared-partition-dns-template are mutually exclusive

Reference Object: /axapi/v3/slb/template/dns

dns-retry

Description: dns-retry is a JSON Block. Please see below for dns-retry

Type: Object

Reference Object: /axapi/v3/slb/template/doh/{name}/dns-retry

forwarder

Description: forwarder is a JSON Block. Please see below for forwarder

Type: Object

Reference Object: /axapi/v3/slb/template/doh/{name}/forwarder

name

Description DNS over HTTP(s) Template Name

Type: string

Format: string-rlx

Maximum Length: 127 characters

Maximum Length: 1 characters

non-dns-request

Description ‘allow’: Forward Non-DoH request to http server bound to vport; ‘reject’: Reject Non-DoH requests with HTTP 400 Bad Request (Default);

Type: string

Supported Values: allow, reject

Default: reject

reject-status-code

Description ‘400’: Status Code 400 BAD Request (Default); ‘500’: Status Code 500 Internal Server Error; ‘501’: Status Code 501 Not Implemented;

Type: string

Supported Values: 400, 500, 501

Default: 400

shared-partition-dns-template

Description Reference a DNS template from shared partition

Type: boolean

Supported Values: true, false, 1, 0

Default: 0

Mutual Exclusion: shared-partition-dns-template and dns are mutually exclusive

shared-partition-tcp-proxy-template

Description Reference a TCP Proxy template from shared partition

Type: boolean

Supported Values: true, false, 1, 0

Default: 0

Mutual Exclusion: shared-partition-tcp-proxy-template and tcp-proxy are mutually exclusive

snat-pool

Description Source NAT pool or pool group

Type: string

Format: string-rlx

Maximum Length: 63 characters

Maximum Length: 1 characters

Reference Object: /axapi/v3/ip/nat/pool

source-nat

Description ‘auto’: Perform Source NAT Auto for service-group(Default) (Not supported with forwarding-ip); ‘disable’: Don’t perform source-nat for server side DNS queries; ‘pool’: Perform Source NAT with specific pool;

Type: string

Supported Values: auto, disable, pool

Default: auto

tcp-proxy

Description TCP Proxy Template Name

Type: string

Format: string-rlx

Maximum Length: 127 characters

Maximum Length: 1 characters

Default: default

Mutual Exclusion: tcp-proxy and shared-partition-tcp-proxy-template are mutually exclusive

Reference Object: /axapi/v3/slb/template/tcp-proxy

template-dns-shared

Description DNS Template name

Type: string

Format: string-rlx

Maximum Length: 127 characters

Maximum Length: 1 characters

Reference Object: /axapi/v3/slb/template/dns

template-tcp-proxy-shared

Description TCP Proxy Template name

Type: string

Format: string-rlx

Maximum Length: 127 characters

Maximum Length: 1 characters

Reference Object: /axapi/v3/slb/template/tcp-proxy

user-tag

Description Customized tag

Type: string

Format: string-rlx

Maximum Length: 127 characters

Maximum Length: 1 characters

uuid

Description uuid of the object

Type: string

Maximum Length: 64 characters

Maximum Length: 1 characters

forwarder

Specification Value
Type object

bypass-doh

Description Forward valid DoH HTTP request as is, no DNS packet extraction (Bypass DoH)

Type: boolean

Supported Values: true, false, 1, 0

Default: 0

Mutual Exclusion: bypass-doh,forwarding-ipv4, forwarding-ipv6, tcp-service-group, and udp-service-group are mutually exclusive

forwarding-ipv4

Description SLB VIP IPv4 address to forward DOH query (IP address)

Type: string

Format: ipv4-address

Mutual Exclusion: forwarding-ipv4,forwarding-ipv6, tcp-service-group, udp-service-group, and bypass-doh are mutually exclusive

forwarding-ipv6

Description SLB VIP IPv6 address to forward DOH query (IP address)

Type: string

Format: ipv6-address

Mutual Exclusion: forwarding-ipv6,forwarding-ipv4, tcp-service-group, udp-service-group, and bypass-doh are mutually exclusive

tcp-service-group

Description Bind a TCP Service Group to the template (Service Group Name)

Type: string

Format: string-rlx

Maximum Length: 127 characters

Maximum Length: 1 characters

Mutual Exclusion: tcp-service-group,forwarding-ipv4, forwarding-ipv6, and bypass-doh are mutually exclusive

Reference Object: /axapi/v3/slb/service-group

udp-service-group

Description Bind a UDP Service Group to the template (Service Group Name)

Type: string

Format: string-rlx

Maximum Length: 127 characters

Maximum Length: 1 characters

Mutual Exclusion: udp-service-group,forwarding-ipv4, forwarding-ipv6, and bypass-doh are mutually exclusive

Reference Object: /axapi/v3/slb/service-group

uuid

Description uuid of the object

Type: string

Maximum Length: 64 characters

Maximum Length: 1 characters

v4-internal

Description Try to find this IP as a VIP in this L3v Partition and forward it internally to the VIP

Type: boolean

Supported Values: true, false, 1, 0

Default: 0

v4-l4-proto

Description ‘tcp’: Use TCP only when forwarding DNS traffic; ‘udp’: Use UDP only when forwarding DNS traffic; ‘both’: Use UDP 1st and if unreachable, retry with TCP when forwarding DNS traffic;

Type: string

Supported Values: tcp, udp, both

Default: both

v4-port

Description Forwarding port number, Default is 53

Type: number

Range: 1-65534

Default: 53

v6-internal

Description Try to find this IP as a VIP in this L3v Partition and forward it internally to the VIP

Type: boolean

Supported Values: true, false, 1, 0

Default: 0

v6-l4-proto

Description ‘tcp’: Use TCP only when forwarding DNS traffic; ‘udp’: Use UDP only when forwarding DNS traffic; ‘both’: Use UDP 1st and if unreachable, retry with TCP when forwarding DNS traffic;

Type: string

Supported Values: tcp, udp, both

Default: both

v6-port

Description Forwarding port number, Default is 53

Type: number

Range: 1-65534

Default: 53

dns-retry

Specification Value
Type object

after-timeout

Description ‘close’: Close client side connection; ‘retry-with-tcp’: Retry DNS query to server using TCP (If UDP was tried initially. Close after.);

Type: string

Supported Values: close, retry-with-tcp

Default: close

max-trials

Description Total number of times to try DNS query to server before closing client connection, default 3

Type: number

Range: 1-5

Default: 3

retry-interval

Description DNS Retry Interval value 1 - 400 in units of 100ms, default is 10 (default is 1000ms) (1 - 400 in units of 100ms, default is 10 (1000ms/1sec))

Type: number

Range: 1-400

Default: 10

uuid

Description uuid of the object

Type: string

Maximum Length: 64 characters

Maximum Length: 1 characters