在 Ubuntu 上查看 DHCP 租约(lease)信息,取决于你是用 DHCP 客户端(如 dhclient / NetworkManager)还是搭了 DHCP 服务器(isc-dhcp-server / dnsmasq)。下面分情况说明。
dhclient(最常见)如果你用 dhclient 获取 IP:
cat /var/lib/dhcp/dhclient.leases
或按网卡查看:
cat /var/lib/dhcp/dhclient-*.leases
示例内容:
lease {
interface "eth0";
fixed-address 192.168.1.100;
option routers 192.168.1.1;
option dhcp-lease-time 3600;
renew 3 2024/01/01 10:00:00;
expire 3 2024/01/01 11:00:00;
}
NetworkManager 也用 dhclient,但租约一般在:
/var/lib/NetworkManager/dhclient-*.lease
查看:
ls /var/lib/NetworkManager/
cat /var/lib/NetworkManager/dhclient-*.lease
ip / nmcli 看当前信息(不是完整租约文件)ip addr show
nmcli device show eth0 | grep DHCP
租约文件位置:
/var/lib/dhcp/dhcpd.leases
查看:
cat /var/lib/dhcp/dhcpd.leases
实时查看:
tail -f /var/lib/dhcp/dhcpd.leases
dnsmasq 默认 不写详细租约文件,但可配置:
cat /var/lib/misc/dnsmasq.leases
或查看配置:
grep dhcp-leasefile /etc/dnsmasq.conf
# 查看 DHCP 相关进程
ps aux | grep dhcp
# 查看日志
journalctl -u isc-dhcp-server
journalctl -u NetworkManager
如果你能告诉我:
我可以给你更精确的命令。