Add network scan page (arp-scan)

New /scan page lists all active devices on the subnet (ARP scan):
- 静态绑定: matches a host declaration
- 动态分配: matches a dhcpd.leases entry
- 未知 / 外部: nothing matches (manually configured or from other DHCP server)

Click '转为静态绑定' to convert a discovered device to a static host binding.

Also includes:
- arp-scan wrapper in dhcp_ops.py (get_local_network, arp_scan, classify_devices)
- /scan route with optional auto-refresh every 30s
- README updated with arp-scan install step + new feature bullet
This commit is contained in:
DHCP Service Bot
2026-07-09 17:37:50 +08:00
parent 90736253b1
commit 21e3d61871
5 changed files with 230 additions and 3 deletions
+3 -2
View File
@@ -9,10 +9,11 @@
- 🟢 静态绑定(host):MAC + 固定 IP + 主机名
- 🟢 监听接口配置(INTERFACESv4
- 🟢 租约查询(按 IP/MAC/主机名搜索)+ 地址池使用率
- 🟢 网络扫描(arp-scan):列出网段内活跃设备,标记 静态绑定 / 动态分配 / 未知
- 🟢 服务状态 + reload / restart + 语法检查
- 🟢 操作日志(谁在什么时间做了什么)
- 🟢 用户名密码登录 + 改密
- 🟢 所有变更自动:写文件 → 备份 → `dhcpd -t` 语法检查 → `systemctl reload isc-dhcp-server`
- 🟢 所有变更自动:写文件 → 备份 → `dhcpd -t` 语法检查 → `systemctl restart isc-dhcp-server`(带 is-active 验证)
## 文件结构
@@ -30,7 +31,7 @@ dhcp-service/
## 安装
```bash
apt-get install -y isc-dhcp-server # 后端 DHCP 服务
apt-get install -y isc-dhcp-server arp-scan dhcping # 后端 DHCP 服务 + 扫描工具
pip3 install -r requirements.txt --break-system-packages
```