Skip to content

Resolve nameserver and MX details in the DNS tab and JSON#60

Merged
retlehs merged 3 commits into
mainfrom
resolve-ns
Jun 23, 2026
Merged

Resolve nameserver and MX details in the DNS tab and JSON#60
retlehs merged 3 commits into
mainfrom
resolve-ns

Conversation

@retlehs

@retlehs retlehs commented Jun 23, 2026

Copy link
Copy Markdown
Owner

Adds i resolve ns on the DNS tab, mirroring i resolve mx — it lists the IPv4/IPv6 addresses and reverse DNS (PTRs) for each nameserver. The MX/NS resolution logic is now a shared dnsutil.ResolveHosts helper rather than a mail-specific one.

The IP/PTR data shown by i resolve was previously TUI-only, so a --resolve flag is added to the dns, mail, and all commands that includes it in JSON via new NSResolved/MXResolved fields. It's opt-in to keep the default output fast and avoid the extra per-host lookups.

Close #58

retlehs and others added 3 commits June 23, 2026 17:57
Generic hostname -> A/AAAA -> reverse-DNS resolver using the configured
resolver, returning all PTR names per address. Extracted so both MX and NS
resolution can share it, and structured behind a small resolver interface so
the logic is unit-testable without real DNS.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Add "i resolve ns" on the DNS tab, mirroring the existing "i resolve mx" on
the Mail tab: it lists the IPv4/IPv6 addresses and reverse DNS for each
nameserver, toggling expand/collapse.

Migrate the old mail-specific MX resolution onto the shared
dnsutil.ResolveHosts, dropping the duplicated ResolveMX/MXResolution/MXIP from
the mail package. Add MXResolved/NSResolved fields to the record types so the
resolved data can be surfaced beyond the TUI.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The IP/PTR data shown by "i resolve mx"/"i resolve ns" in the TUI was not
available in JSON output. Add an opt-in --resolve flag to the dns, mail and
all commands that populates NSResolved/MXResolved with each host's addresses
and reverse DNS. It is opt-in so the default output stays fast and avoids the
extra per-host lookups.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@retlehs retlehs self-assigned this Jun 23, 2026
@retlehs
retlehs merged commit 5864cb5 into main Jun 23, 2026
1 check passed
@retlehs
retlehs deleted the resolve-ns branch June 23, 2026 22:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Feature suggestion: resolve nameservers names

1 participant