温馨提示×

linux dhcp怎样查看租约

小樊
47
2026-10-27 06:16:22
栏目: 智能运维

在 Linux 下查看 DHCP 租约(lease),取决于你是 DHCP 客户端 还是 DHCP 服务器,以及使用的是哪种 DHCP 软件(通常是 dhclient、dhcpcd 或 isc-dhcp-server)。

下面按常见情况说明:


一、查看本机作为 DHCP 客户端获取的租约

1. 使用 dhclient(最常见,如 Ubuntu/CentOS)

租约文件一般在:

/var/lib/dhcp/dhclient.leases

或

/var/lib/dhcp/dhclient-*.leases

查看内容:

cat /var/lib/dhcp/dhclient.leases

示例内容:

lease {
  interface "eth0";
  fixed-address 192.168.1.100;
  option subnet-mask 255.255.255.0;
  option routers 192.168.1.1;
  option dhcp-lease-time 3600;
  option dhcp-server-identifier 192.168.1.1;
}

2. 使用 dhcpcd(如 Arch Linux、Raspberry Pi)

租约文件通常在:

/var/lib/dhcpcd/eth0.lease

查看:

cat /var/lib/dhcpcd/eth0.lease

3. 使用 nmcli(NetworkManager)

如果你用 NetworkManager:

nmcli dev show eth0 | grep DHCP

或查看详细租约:

journalctl -u NetworkManager | grep -i dhcp

4. 查看当前生效的 IP(间接判断)

ip addr

或

ifconfig

二、查看 DHCP 服务器分配的租约(你建了 DHCP 服务器)

1. ISC DHCP Server(最常见)

租约文件:

/var/lib/dhcpd/dhcpd.leases

查看:

cat /var/lib/dhcpd/dhcpd.leases

示例:

lease 192.168.1.101 {
  starts 2 2026/01/21 10:00:00;
  ends 2 2026/01/21 11:00:00;
  binding state active;
  hardware ethernet 00:11:22:33:44:55;
}

2. dnsmasq(常用于路由器/轻量 DHCP)

dnsmasq 默认 不保存租约文件,除非配置:

dhcp-leasefile=/var/lib/dnsmasq/dnsmasq.leases

查看:

cat /var/lib/dnsmasq/dnsmasq.leases

格式:

时间戳 MAC IP 主机名

三、实时查看租约变化(调试用)

tail -f /var/lib/dhcpd/dhcpd.leases

或

journalctl -u dhcpd -f

四、快速总结表

场景 查看方式
客户端(dhclient) /var/lib/dhcp/dhclient.leases
客户端(dhcpcd) /var/lib/dhcpcd/*.lease
DHCP 服务器 /var/lib/dhcpd/dhcpd.leases
dnsmasq dhcp-leasefile 指定文件

如果你能告诉我:

  • 用的是 哪个 Linux 发行版
  • 是 客户端还是服务器
  • 用的是什么 DHCP 软件

我可以给你更精确的命令。

0 踩