|
|
1 mês atrás | |
|---|---|---|
| cmd | 1 mês atrás | |
| configs | 1 mês atrás | |
| internal | 1 mês atrás | |
| web | 1 mês atrás | |
| .gitignore | 1 mês atrás | |
| API_EXAMPLES.md | 1 mês atrás | |
| BUILD.md | 1 mês atrás | |
| CHANGELOG.md | 1 mês atrás | |
| CLIENTS_FEATURE.md | 1 mês atrás | |
| DELIVERY.md | 1 mês atrás | |
| DEPLOY.md | 1 mês atrás | |
| Dockerfile | 1 mês atrás | |
| FEATURES.md | 1 mês atrás | |
| FIX_SUMMARY.md | 1 mês atrás | |
| INDEX.md | 1 mês atrás | |
| INSTALL.md | 1 mês atrás | |
| PROJECT_SUMMARY.md | 1 mês atrás | |
| QUICKSTART.md | 1 mês atrás | |
| README.md | 1 mês atrás | |
| TROUBLESHOOTING.md | 1 mês atrás | |
| USE_CASES.md | 1 mês atrás | |
| WINDOWS_GUIDE.md | 1 mês atrás | |
| diagnose.sh | 1 mês atrás | |
| docker-compose.yml | 1 mês atrás | |
| fix-deps.sh | 1 mês atrás | |
| go.mod | 1 mês atrás | |
| go.sum | 1 mês atrás | |
| install.sh | 1 mês atrás | |
| start.bat | 1 mês atrás | |
| start.sh | 1 mês atrás | |
| test-api.sh | 1 mês atrás | |
| uninstall.sh | 1 mês atrás |
一个基于 Go 的轻量级 DHCP 和 DNS 服务,带有 Web 管理界面。
# 构建并启动
docker-compose up -d
# 查看日志
docker-compose logs -f
# 停止服务
docker-compose down
默认账号:admin / admin
# 安装依赖
go mod download
# 创建数据目录
mkdir -p data
# 运行
go run ./cmd -config configs/config.json
# 或者编译后运行
go build -o dhcp-dns-manager ./cmd
./dhcp-dns-manager -config configs/config.json
配置文件位于 configs/config.json:
{
"dhcp": {
"enabled": true, // 是否启用 DHCP
"interface": "eth0", // 网络接口
"network": "192.168.1.0", // 网络地址
"netmask": "255.255.255.0", // 子网掩码
"gateway": "192.168.1.1", // 网关
"dns_servers": ["192.168.1.1", "8.8.8.8"],
"lease_time": 86400, // 租约时间(秒)
"ip_pool_start": "192.168.1.100",
"ip_pool_end": "192.168.1.200"
},
"dns": {
"enabled": true,
"listen_addr": "0.0.0.0",
"listen_port": 53,
"upstream": ["8.8.8.8", "1.1.1.1"],
"cache_size": 1000
},
"web": {
"host": "0.0.0.0",
"port": 8080,
"session_key": "change-this-to-a-random-secret"
},
"database": {
"path": "data/dhcp-dns.db"
}
}
dhcp-dns-manager/
├── cmd/ # 主程序入口
│ └── main.go
├── internal/ # 核心逻辑
│ ├── config/ # 配置管理
│ ├── db/ # 数据库操作
│ ├── dhcp/ # DHCP 服务
│ ├── dns/ # DNS 服务
│ └── web/ # Web 服务
├── web/ # 前端资源
│ ├── static/
│ │ ├── css/
│ │ └── js/
│ └── templates/
├── configs/ # 配置文件
├── data/ # 数据库文件(运行时创建)
├── Dockerfile
├── docker-compose.yml
└── README.md
POST /api/login - 用户登录GET /api/dhcp/leases - 获取租约列表GET /api/dhcp/bindings - 获取静态绑定POST /api/dhcp/bindings - 创建静态绑定DELETE /api/dhcp/bindings/:id - 删除静态绑定GET /api/dns/records - 获取 DNS 记录POST /api/dns/records - 创建 DNS 记录DELETE /api/dns/records/:id - 删除 DNS 记录GET /api/dns/logs - 获取查询日志GET /api/dashboard - 获取仪表盘数据GET /api/config - 获取配置PUT /api/config - 更新配置⚠️ 权限要求
⚠️ 网络配置
MIT
欢迎提交 Issue 和 Pull Request!