From fb97bbad1448eef936f19b6e543d8be08c1a5d9f Mon Sep 17 00:00:00 2001 From: Doug Koerich Date: Mon, 26 Jan 2026 11:23:55 -0300 Subject: [PATCH] TASK-91082: Adding doc for new dns_udp_xxxbuf_size options Signed-off-by: Doug Koerich --- content/momentum/4/config-options-summary.md | 2 ++ content/momentum/4/config/index.md | 2 ++ .../4/config/ref-dns-udp-buffer-size.md | 30 +++++++++++++++++++ content/momentum/4/modules/dnsbuf.md | 2 +- 4 files changed, 35 insertions(+), 1 deletion(-) create mode 100644 content/momentum/4/config/ref-dns-udp-buffer-size.md diff --git a/content/momentum/4/config-options-summary.md b/content/momentum/4/config-options-summary.md index 3c997e98..9a890c0d 100644 --- a/content/momentum/4/config-options-summary.md +++ b/content/momentum/4/config-options-summary.md @@ -130,6 +130,8 @@ The `Version` column indicated the version(s) of Momentum that support the optio | [dns_expire_interval](/momentum/4/config/ref-dns-expire-interval) – How often to check for domains with expired DNS information | sending | 10 | 4.0 and later | global | | [dns_failures_to_purge](/momentum/4/config/ref-dns-failures-to-purge) – Configure the maximum number of DNS lookups | sending | 10 | 4.0 and later | domain, global | | [dns_fallback_to_tcp](/momentum/4/config/ref-dns-fallback-to-tcp) – Whether or not to fail over to TCP in place of UDP | both | false | 4.0 and later | global | +| [dns_udp_rcvbuf_size](/momentum/4/config/ref-dns-udp-buffer-size) - Set the size of the UDP socket receiving buffer used by DNS lookups | both | 0 | 5.2 and later | global | +| [dns_udp_sndbuf_size](/momentum/4/config/ref-dns-udp-buffer-size) - Set the size of the UDP socket sending buffer used by DNS lookups | both | 0 | 5.2 and later | global | | [domain](/momentum/4/config/ref-domain) *(scope)* – Configure domain-specific options | sending |   | 4.0 and later | binding, binding_group, global | | [domain_for_unqualified_recipient_addresses](/momentum/4/config/ref-domain-for-unqualified-recipient-addresses) – Configure a domain which will be used to resolve delivery for unqualified addresses | receiving |   | 4.0 and later | esmtp_listener, global, listen, pathway, pathway_group, peer | | [domain_for_unqualified_sender_address](/momentum/4/config/ref-domain-for-unqualified-sender-address) – Configure a domain which will be used to substitute for unqualified sender addresses | receiving |   | 4.0 and later | esmtp_listener, global, listen, pathway, pathway_group, peer | diff --git a/content/momentum/4/config/index.md b/content/momentum/4/config/index.md index e9527aa3..9a528823 100644 --- a/content/momentum/4/config/index.md +++ b/content/momentum/4/config/index.md @@ -66,6 +66,8 @@ description: "This chapter provides the definitions of the configuration options | [dns_expire_interval](/momentum/4/config/ref-dns-expire-interval) | how often to check for domains with expired DNS information | | [dns_failures_to_purge](/momentum/4/config/ref-dns-failures-to-purge) | configure the maximum number of DNS lookups | | [dns_fallback_to_tcp](/momentum/4/config/ref-dns-fallback-to-tcp) | whether or not to fail over to TCP in place of UDP | +| [dns_udp_rcvbuf_size](/momentum/4/config/ref-dns-udp-buffer-size) | set the size of the UDP socket receiving buffer used by DNS lookups | +| [dns_udp_sndbuf_size](/momentum/4/config/ref-dns-udp-buffer-size) | set the size of the UDP socket sending buffer used by DNS lookups | | [domain_for_unqualified_recipient_addresses](/momentum/4/config/ref-domain-for-unqualified-recipient-addresses) | configure a domain which will be used to resolve delivery for unqualified addresses | | [domain_for_unqualified_sender_address](/momentum/4/config/ref-domain-for-unqualified-sender-address) | configure a domain which will be used to substitute for unqualified sender addresses | | [domain](/momentum/4/config/ref-domain) | configure domain specific options | diff --git a/content/momentum/4/config/ref-dns-udp-buffer-size.md b/content/momentum/4/config/ref-dns-udp-buffer-size.md new file mode 100644 index 00000000..76c78f3f --- /dev/null +++ b/content/momentum/4/config/ref-dns-udp-buffer-size.md @@ -0,0 +1,30 @@ +--- +lastUpdated: "01/31/2026" +title: "dns_udp_rcvbuf_size, dns_udp_sndbuf_size" +description: "dns_udp_***buf_size set the size of the UDP socket buffers used by DNS lookups" +--- + + +## Name + +dns_udp_rcvbuf_size — set the size of the UDP socket receiving buffer used by DNS lookups + +dns_udp_sndbuf_size - set the size of the UDP socket sending buffer + +## Synopsis + +`dns_udp_rcvbuf_size = 65536` + +`dns_udp_sndbuf_size = 16384` + + +## Description + +By default, Momentum uses the operating system's default buffer sizes for the UDP sockets used for DNS lookups. In high-volume environments with tens of thousands of domains, these default buffer sizes may be insufficient. When the receive buffer fills up, incoming DNS responses can be dropped, causing unnecessary DNS failures and retries that further increase query volume. These configuration options allow you to increase the DNS socket buffer sizes at startup. + +The default value for both options is `0` (use OS defaults). + + +## Scope + +Both `dns_udp_rcvbuf_size` and `dns_udp_sndbuf_size` are valid in the global scope. diff --git a/content/momentum/4/modules/dnsbuf.md b/content/momentum/4/modules/dnsbuf.md index 5fee9d18..19da523f 100644 --- a/content/momentum/4/modules/dnsbuf.md +++ b/content/momentum/4/modules/dnsbuf.md @@ -8,7 +8,7 @@ description: "Configuration Change This feature is available in Momentum 4 2 and **Configuration Change.** This feature is available from Momentum 4.2 through 4.7. -> **NOTE: This feature was DEPRECATED in Momentum 4.8 and is no longer supported.** +> **NOTE: This feature was DEPRECATED in Momentum 4.8 and is no longer supported. Please refer to [here](/momentum/4/config/ref-dns-udp-buffer-size) for alternative configuration options.** Momentum does not manipulate the size of UDP sockets it creates and uses for DNS queries; instead, it will use the default sizes configured by the Operating System. This can create problems for clients with too many domains (e.g., tens of thousands) in the system. Responses may be dropped, causing unnecessary DNS failures and retries, thus further increasing the DNS query volume. The `dnsbuf` module enables the client to manipulate the DNS buffer sizes on demand, on the fly.