Repolode
BeryJu

BeryJu/gravity

基于 etcd 实现多节点复制的 DNS、DHCP 与 TFTP 服务器,自带 Web 界面和广告拦截。

Star
932
Fork
33
未关闭 Issue
57
最近提交
昨天

这是什么?

Gravity 是一个网络基础服务器,在一个或多个节点上同时提供 DNS、DHCP 和 TFTP 功能。配置与运行状态保存在 etcd 中,DNS 区域、记录和 DHCP 租约等变更会在集群所有节点之间自动复制,而不是只存在于单台机器上。

项目提供 Web 界面,用于管理区域、记录和租约,并可查看集群节点状态。DNS 部分支持广告拦截与缓存,并暴露 Prometheus 指标,截图中包含 Grafana 仪表盘。同时提供 API,便于自动化集成。

Gravity 使用 Go 编写,采用 GPL-3.0 许可证。它适合家庭实验室和小型网络,希望获得冗余的 DNS 与 DHCP 服务,而无需手动维护多台独立服务器。

核心功能

  • 01通过 etcd 在节点之间复制 DNS 区域、记录和 DHCP 租约。
  • 02在同一个服务器中提供 DNS、DHCP 和 TFTP 服务。
  • 03支持广告拦截与 DNS 缓存。
  • 04提供 Web 界面管理区域、记录和租约。
  • 05暴露 Prometheus 指标并提供 API。

适用场景

  • 为家庭实验室或小型办公网络部署冗余的 DNS 和 DHCP 服务。
  • 在多台服务器之间保持 DNS 记录和 DHCP 租约一致。
  • 在网络 DNS 层面拦截广告和追踪器。
  • 使用 Prometheus 和 Grafana 监控 DNS 与 DHCP 服务。

使用前须知

  • 需要 etcd 集群作为后端存储,自托管时会增加较重的依赖。
  • 采用 GPL-3.0 许可证,这是一种 copyleft 许可证,衍生作品必须以相同条款发布。

收录于专题

标签

常见问题

gravity 是什么?
基于 etcd 实现多节点复制的 DNS、DHCP 与 TFTP 服务器,自带 Web 界面和广告拦截。 Gravity 是一个网络基础服务器,在一个或多个节点上同时提供 DNS、DHCP 和 TFTP 功能。配置与运行状态保存在 etcd 中,DNS 区域、记录和 DHCP 租约等变更会在集群所有节点之间自动复制,而不是只存在于单台机器上。
gravity 可以免费使用吗?用的什么许可证?
gravity 以 GPL-3.0 许可证开源。用于商业产品前,请先确认许可证条款。
gravity 还在维护吗?
活跃维护中。gravity 最近一次提交是在 2026年11月6日。
gravity 适合用来做什么?
为家庭实验室或小型办公网络部署冗余的 DNS 和 DHCP 服务。 在多台服务器之间保持 DNS 记录和 DHCP 租约一致。 在网络 DNS 层面拦截广告和追踪器。 使用 Prometheus 和 Grafana 监控 DNS 与 DHCP 服务。
在哪里获取 gravity?
源代码和安装说明在 GitHub 上:https://github.com/BeryJu/gravity

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目

合并多个公开黑名单生成的统一 hosts 文件,可拦截广告、追踪、恶意软件,并按需启用多个分类。

安全#hosts#ad-blocker#privacy
3.1万+60 本周2446PythonMIT维护活跃更新于 6天前