AdguardTeam / AdguardTeam/DeadDomainsLinter

Validate domain availability in many ways

未关闭
#40 7 条评论 0 个 reaction 已指派 1 人 已被 @maximtop 认领 在 GitHub 查看
Priority: P4
主要语言
JavaScript
星标
35
派生
3
PR 合并指标
30 天内没有已合并 PR

描述

Currently, the `DeadDomainsLinter` only checks the exact domain for A record, but:

- An entry `||example.com` might be added by a filter because it might want to block any subdomains, no matter whether the apex domain is reachable or not.
- A domain might only support IPv6 (e.g., `||ipv6.ipcheck.example.com` might be blocked even if it has no A record).

I propose adding extra checks:

- Search for both A and AAAA records
- Use [`tldts`](https://github.com/remusao/tldts) library to get the "registerable" part of the domain (extracting `example.com` from `||blocked.example.com`, `github.io` from `||example.github.io`), check its NS records and whois.
- If an apex domain doesn't have NS records, the answers should only contain SOA records
- Do notice that some authoritative DNS servers don't implement NS records properly (e.g. `qq.com`), that's why we need to check the domain's whois as well.
- Only all the above check fails, we can identify that an entry contains the dead domain.

贡献指南

这个仓库没有索引到贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。