Files
coredns/plugin/https3/README.md
ump45nose eff4aa54c1 plugin/https3: the limits accept zero, not only positive integers (#8659)
The syntax block advertised POSITIVE_INTEGER for both options, but plugin/https3/setup.go:50 and :66 reject only val < 0, the parser errors say "must be a non-negative integer", plugin/https3/setup_test.go:36-43 accepts "max_streams 0" with shouldErr false, and README.md:22-23 itself tells the reader to "Set to 0". plugin/https/README.md:17-18 already uses NON_NEGATIVE_INTEGER for the same pair.

Signed-off-by: yuwk <1729065730@qq.com>
2026-10-20 18:11:28 -07:00

50 lines
1.3 KiB
Markdown

# https3
## Name
*https3* - configures DNS-over-HTTPS/3 (DoH3) server options.
## Description
The *https3* plugin allows you to configure parameters for the DNS-over-HTTPS/3 (DoH3) server to fine-tune the security posture and performance of the server. HTTPS/3 uses QUIC as the underlying transport.
This plugin can only be used once per HTTPS3 listener block.
## Syntax
```txt
https3 {
max_streams NON_NEGATIVE_INTEGER
max_connections NON_NEGATIVE_INTEGER
}
```
* `max_streams` limits the number of concurrent QUIC streams per connection. This helps prevent unbounded streams on a single connection, exhausting server resources. The default value is 256 if not specified. Set to 0 to use underlying QUIC transport default.
* `max_connections` limits the number of concurrent HTTPS/3 connections accepted by the server. The default value is 200 if not specified. Connections above the configured limit are rejected. Set to 0 to disable the CoreDNS connection limit.
## Examples
Set custom limits for maximum streams:
```
https3://.:443 {
tls cert.pem key.pem
https3 {
max_streams 50
}
whoami
}
```
Set values to 0 for QUIC transport default, matching CoreDNS behaviour before v1.14.0:
```
https3://.:443 {
tls cert.pem key.pem
https3 {
max_streams 0
}
whoami
}
```