Hi,
I would like to report what appears to be an inconsistency in forwarding behavior between global forwarders and FWD records used in Conditional Forwarder Zones.
Observed behavior
On my Technitium DNS setup:
Enable Concurrent Forwarding is enabled
Forwarder Concurrency is set to 2
- I have a Conditional Forwarder Zone for
example.com
- Inside that zone, I created 4
FWD records pointing to 4 different DNS servers
When I query any record under example.com and inspect the traffic with tcpdump, I can see that the DNS server sends requests to all 4 configured FWD targets at the same time, instead of limiting concurrent upstream queries to 2.
This makes it look like the global Forwarder Concurrency setting is applied to global forwarders, but not to FWD records inside Conditional Forwarder Zones.
Why this matters
Using only Priority to control this behavior is not always convenient enough.
A practical example is a clustered multi-datacenter deployment:
- several Technitium DNS servers are deployed in different locations
- a clustered Conditional Forwarder Zone is shared between them
- the zone contains multiple
FWD records pointing to all available upstream DNS servers (for example, AD DC/DNS servers across sites)
In such a setup, it would be very useful if the server could:
- consider all configured
FWD targets
- apply a concurrency limit (for example,
2)
- select the best candidates using the existing latency-based logic
- use the fastest valid response
This would allow both:
- cross-site resiliency/failover
- avoiding unnecessary fan-out to every configured upstream server for each query
Expected behavior
It would be great if one of the following could be implemented:
Option 1
Apply the existing global Forwarder Concurrency setting to FWD records in Conditional Forwarder Zones as well.
Option 2
Introduce a zone-specific setting for Conditional Forwarder Zones, for example:
Conditional Forwarder Concurrency
- or per-zone override of forwarding concurrency
That would make it possible to control concurrent querying behavior more precisely for clustered/site-aware deployments.
Related use case
In my case, I would like a clustered Conditional Forwarder Zone to forward queries to multiple upstream DNS servers across datacenters, while still respecting concurrency limits and the existing "fastest forwarder" logic, instead of querying every FWD target simultaneously.
This would fit very well with the documented forwarding behavior:
The DNS server will automatically select forwarders (based on their average latency) to query and use the fastest response it receives from any of them.
Suggestion
Please consider making FWD records in Conditional Forwarder Zones respect Forwarder Concurrency, or adding a separate concurrency control specifically for conditional forwarders.
Thanks!
Hi,
I would like to report what appears to be an inconsistency in forwarding behavior between global forwarders and
FWDrecords used in Conditional Forwarder Zones.Observed behavior
On my Technitium DNS setup:
Enable Concurrent Forwardingis enabledForwarder Concurrencyis set to2example.comFWDrecords pointing to 4 different DNS serversWhen I query any record under
example.comand inspect the traffic withtcpdump, I can see that the DNS server sends requests to all 4 configuredFWDtargets at the same time, instead of limiting concurrent upstream queries to 2.This makes it look like the global
Forwarder Concurrencysetting is applied to global forwarders, but not toFWDrecords inside Conditional Forwarder Zones.Why this matters
Using only
Priorityto control this behavior is not always convenient enough.A practical example is a clustered multi-datacenter deployment:
FWDrecords pointing to all available upstream DNS servers (for example, AD DC/DNS servers across sites)In such a setup, it would be very useful if the server could:
FWDtargets2)This would allow both:
Expected behavior
It would be great if one of the following could be implemented:
Option 1
Apply the existing global
Forwarder Concurrencysetting toFWDrecords in Conditional Forwarder Zones as well.Option 2
Introduce a zone-specific setting for Conditional Forwarder Zones, for example:
Conditional Forwarder ConcurrencyThat would make it possible to control concurrent querying behavior more precisely for clustered/site-aware deployments.
Related use case
In my case, I would like a clustered Conditional Forwarder Zone to forward queries to multiple upstream DNS servers across datacenters, while still respecting concurrency limits and the existing "fastest forwarder" logic, instead of querying every
FWDtarget simultaneously.This would fit very well with the documented forwarding behavior:
Suggestion
Please consider making
FWDrecords in Conditional Forwarder Zones respectForwarder Concurrency, or adding a separate concurrency control specifically for conditional forwarders.Thanks!