在 Ubuntu 上查看 DHCP 客户端列表,取决于你用的是哪种 DHCP 服务。常见情况如下:
isc-dhcp-server(最常见)如果你装的是 isc-dhcp-server:
cat /var/lib/dhcp/dhcpd.leases
或实时监控:
tail -f /var/lib/dhcp/dhcpd.leases
内容示例:
lease 192.168.1.100 {
starts 1 2024/01/01 10:00:00;
ends 1 2024/01/01 11:00:00;
hardware ethernet 00:11:22:33:44:55;
client-hostname "phone";
}
✅ 有 hardware ethernet 和 IP 的就是客户端
grep "lease" /var/lib/dhcp/dhcpd.leases
或:
awk '/lease/ {print $2}' /var/lib/dhcp/dhcpd.leases
dnsmasq(常见于路由器/软路由)如果你用的是 dnsmasq:
cat /var/lib/misc/dnsmasq.leases
或:
cat /var/lib/dnsmasq/dnsmasq.leases
格式:
过期时间 MAC IP 主机名 客户端ID
示例:
1700000000 00:11:22:33:44:55 192.168.1.50 android-xxx
arp -n
或:
ip neigh
⚠️ 只能看到最近通信过的设备
nmap(扫描式,不依赖 DHCP)sudo nmap -sn 192.168.1.0/24
systemctl status isc-dhcp-server
systemctl status dnsmasq
如果你愿意,可以告诉我:
isc-dhcp-server 还是 dnsmasq我可以给你更精确的命令。