[GH-ISSUE #2577] Recursor: Use glue A/AAAA records from responses to NS queries #1020

Closed
opened 2026-03-16 01:18:00 +03:00 by kerem · 1 comment
Owner

Originally created by @divergentdave on GitHub (Nov 15, 2024).
Original GitHub issue: https://github.com/hickory-dns/hickory-dns/issues/2577

I noticed that ns_pool_for_referral() can get IP addresses from the query cache, from glue records in the referral, or by making new requests, while ns_pool_for_zone() can only get IP addresses from the query cache or by making requests. I experimented with some NS queries, and it looks like it's common for nameservers to return glue A/AAAA records in the additional section. Thus, we could try using the additional section first, and cut out a round trip in many cases.

Originally created by @divergentdave on GitHub (Nov 15, 2024). Original GitHub issue: https://github.com/hickory-dns/hickory-dns/issues/2577 I noticed that `ns_pool_for_referral()` can get IP addresses from the query cache, from glue records in the referral, or by making new requests, while `ns_pool_for_zone()` can only get IP addresses from the query cache or by making requests. I experimented with some NS queries, and it looks like it's common for nameservers to return glue A/AAAA records in the additional section. Thus, we could try using the additional section first, and cut out a round trip in many cases.
kerem closed this issue 2026-03-16 01:18:05 +03:00
Author
Owner

@divergentdave commented on GitHub (Nov 15, 2024):

Nevermind, I did some further testing, and DnsLru::insert_records() caches the glue A/AAAA records from the additional section under a separate A/AAAA query. The glue records from the NS query are getting included when building pools, but indirectly, via the cache.

<!-- gh-comment-id:2480046246 --> @divergentdave commented on GitHub (Nov 15, 2024): Nevermind, I did some further testing, and `DnsLru::insert_records()` caches the glue A/AAAA records from the additional section under a separate A/AAAA query. The glue records from the NS query are getting included when building pools, but indirectly, via the cache.
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#1020
No description provided.