[PR #1173] [MERGED] Make EDNS optional for resolvers #2039

Closed
opened 2026-03-16 04:58:05 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/hickory-dns/hickory-dns/pull/1173
Author: @CtrlZvi
Created: 7/26/2020
Status: Merged
Merged: 8/4/2020
Merged by: @bluejekyll

Base: mainHead: optional-edns


📝 Commits (1)

  • afb3fb1 Make EDNS optional for resolvers

📊 Changes

4 files changed (+15 additions, -4 deletions)

View changed files

📝 crates/proto/src/xfer/dns_handle.rs (+1 -2)
📝 crates/proto/src/xfer/dns_request.rs (+2 -0)
📝 crates/resolver/src/async_resolver.rs (+9 -2)
📝 crates/resolver/src/dns_sd.rs (+3 -0)

📄 Description

Some servers do not support EDNS, and some (such as the ingress-dns
addon to Minikube) return malformed DNS responses when sent EDNS
additional records. Previously, it was not possible to not send the
EDNS records, despite having a ResolverOpts field for it, which was
confusing.

This commit wires the ResolverOpts edns0 option to a new
DnsRequestOptions field and uses that option to control whether or not
additional EDNS records should be used.

Note: this changes the default behavior of the resolver, as the default
value for ResolverOpts::edns0 is false, but previously the additional
EDNS records would be added anyway. It seems this change is inline with
the desired behavior, as the defaults are intended to match the
resolv.conf defaults, which do not use EDNS.

Signed-off-by: Zvi "CtrlZvi" Effron viz_skywalker+GitHub@outlook.com


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/hickory-dns/hickory-dns/pull/1173 **Author:** [@CtrlZvi](https://github.com/CtrlZvi) **Created:** 7/26/2020 **Status:** ✅ Merged **Merged:** 8/4/2020 **Merged by:** [@bluejekyll](https://github.com/bluejekyll) **Base:** `main` ← **Head:** `optional-edns` --- ### 📝 Commits (1) - [`afb3fb1`](https://github.com/hickory-dns/hickory-dns/commit/afb3fb15dc588a66d9f2a3a4fe93daaf427f98b5) Make EDNS optional for resolvers ### 📊 Changes **4 files changed** (+15 additions, -4 deletions) <details> <summary>View changed files</summary> 📝 `crates/proto/src/xfer/dns_handle.rs` (+1 -2) 📝 `crates/proto/src/xfer/dns_request.rs` (+2 -0) 📝 `crates/resolver/src/async_resolver.rs` (+9 -2) 📝 `crates/resolver/src/dns_sd.rs` (+3 -0) </details> ### 📄 Description Some servers do not support EDNS, and some (such as the ingress-dns addon to Minikube) return malformed DNS responses when sent EDNS additional records. Previously, it was not possible to not send the EDNS records, despite having a ResolverOpts field for it, which was confusing. This commit wires the ResolverOpts edns0 option to a new DnsRequestOptions field and uses that option to control whether or not additional EDNS records should be used. Note: this changes the default behavior of the resolver, as the default value for ResolverOpts::edns0 is false, but previously the additional EDNS records would be added anyway. It seems this change is inline with the desired behavior, as the defaults are intended to match the resolv.conf defaults, which do not use EDNS. Signed-off-by: Zvi "CtrlZvi" Effron <viz_skywalker+GitHub@outlook.com> --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-03-16 04:58:05 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/hickory-dns#2039
No description provided.