Show HN: VirtualDNS – 可编程的私有环境内部 DNS

1作者: virtualdns24 天前
Hi HN, 我构建了 VirtualDNS,一个用于私有环境的可编程内部 DNS,因为我每次更改 IP、添加服务或尝试保持多个环境一致时,都会搞垮自己的基础设施。 这并非公共 DNS。它是一个用于内部连接、服务发现和基础设施自动化的私有、多租户 DNS 层。 我构建它的原因: - &#x2F;etc&#x2F;hosts 在不同机器之间漂移 - 内部 DNS 设置没有审计日志 - 由于配置未对齐,导致环境表现不同 - IP 更改悄无声息地破坏服务 - 团队构建自己的“迷你 DNS”脚本 - 仅使用公共域名来测试内部内容 - 私有环境内部传播缓慢 - 希望进行服务发现,但又不想承担 Consul&#x2F;CoreDNS 的开销 它的作用: - 仅在您的项目&#x2F;组织内部可解析的虚拟域名 - 用于负载均衡、故障转移和高可用性的多 IP 记录 - 健康状况排序的 IP 响应 - 完整的解析和修改审计日志 - 带回滚的版本控制更改 - 具有每个项目范围的细粒度令牌 - CLI、SDK 和用于 OS 级解析的守护程序 - 没有公共 DNS,没有 TTL 延迟,没有外部暴露 技术说明: - 从头开始实现的解析器,独立于 OS DNS,除非使用守护程序 - 域名和记录存储为版本状态(类似提交) - 每次解析都会记录请求者、令牌、时间戳和元数据 - 项目完全隔离,允许不同组织使用相同的域名 - 多 IP 响应支持基于服务健康状况的重新平衡 - 守护程序充当轻量级本地 DNS 转发器 我正在寻找: - 处理内部 DNS 或服务发现的人的反馈 - 我应该考虑的边缘情况 - 关于使用托管内部 DNS 的担忧 - 关于集成点的建议(Terraform、WireGuard、Nomad 等) 登陆页面(非常早期):<a href="https:&#x2F;&#x2F;virtualdns.io" rel="nofollow">https:&#x2F;&#x2F;virtualdns.io</a> 乐于回答技术问题。
查看原文
Hi HN,<p>I built VirtualDNS, a programmable internal DNS for private environments, because I kept breaking my own infrastructure every time I changed an IP, added a service, or tried to keep multiple environments consistent.<p>This is not public DNS. It is a private, multi-tenant DNS layer for internal connectivity, service discovery, and infra automation.<p>Why I built it:<p>- &#x2F;etc&#x2F;hosts drift across machines<p>- Internal DNS setups with no audit logs<p>- Environments behaving differently because configs weren’t aligned<p>- IP changes silently breaking services<p>- Teams building their own “mini DNS” scripts<p>- Using public domains just to test internal stuff<p>- Slow propagation inside private environments<p>- Wanting service discovery without the overhead of Consul&#x2F;CoreDNS<p>What it does: - Virtual domains resolvable only inside your project&#x2F;org<p>- Multi-IP records for load balancing, failover, and high availability<p>- Health-ordered IP responses<p>- Full audit logs for resolutions and modifications<p>- Versioned changes with rollback<p>- Granular tokens with per-project scopes<p>- CLI, SDKs, and a daemon for OS-level resolution<p>- No public DNS, no TTL delays, no external exposure<p>Technical notes:<p>- Resolver implemented from scratch, independent of OS DNS unless using the daemon<p>- Domains and records stored as versioned states (commit-like)<p>- Each resolution is logged with requester, token, timestamp, and metadata<p>- Projects are fully isolated, allowing identical domain names across orgs<p>- Multi-IP responses support rebalancing based on service health<p>- Daemon works as a lightweight local DNS forwarder<p>What I&#x27;m looking for:<p>- Feedback from people who handle internal DNS or service discovery<p>- Edge cases I should consider<p>- Concerns about using a managed internal DNS<p>- Suggestions for integration points (Terraform, WireGuard, Nomad, etc.)<p>Landing page (very early): <a href="https:&#x2F;&#x2F;virtualdns.io" rel="nofollow">https:&#x2F;&#x2F;virtualdns.io</a><p>Happy to answer technical questions.