温馨提示×

Debian如何验证DHCP状态

小樊
44
2026-07-30 10:33:20
栏目: 智能运维

在 Debian 系统中,验证 DHCP 状态 可以从 客户端(获取 IP)服务端(提供 IP) 两个角度来检查。下面按常见场景说明。


一、验证 DHCP 客户端状态(最常见)

1. 查看网络接口是否通过 DHCP 获取 IP

ip addr

ifconfig

如果接口(如 eth0ens33)有 inet 地址,说明已获取 IP。


2. 查看 DHCP 客户端进程(dhclient)

Debian 通常使用 dhclient

ps aux | grep dhclient

或查看是否正在运行:

pgrep -a dhclient

3. 查看 DHCP 租约信息(最可靠)

DHCP 租约一般保存在:

/var/lib/dhcp/dhclient.leases

查看内容:

cat /var/lib/dhcp/dhclient.leases

你将看到:

  • 分配的 IP
  • 子网掩码
  • 网关
  • DNS
  • 租约时间

4. 使用 systemd-networkd(如果使用)

如果系统使用 systemd-networkd

networkctl status

或查看具体接口:

networkctl status eth0

5. 使用 NetworkManager(桌面或服务器常见)

nmcli device show eth0

或查看连接:

nmcli connection show

查看是否使用 DHCP:

nmcli connection show <连接名> | grep ipv4.method

正常应为:

ipv4.method:                            auto

二、验证 DHCP 服务器状态(如搭建了 DHCP 服务)

1. 检查 DHCP 服务是否运行(ISC DHCP)

systemctl status isc-dhcp-server

启动/重启:

sudo systemctl restart isc-dhcp-server

2. 查看 DHCP 日志

journalctl -u isc-dhcp-server

或查看系统日志:

grep DHCP /var/log/syslog

3. 查看 DHCP 分配记录

cat /var/lib/dhcp/dhcpd.leases

三、快速判断 DHCP 是否正常工作的命令总结

目的 命令
是否获取 IP ip addr
DHCP 进程 pgrep -a dhclient
租约信息 cat /var/lib/dhcp/dhclient.leases
路由/DNS ip route / cat /etc/resolv.conf
DHCP 服务状态 systemctl status isc-dhcp-server

四、常见问题排查

没有 DHCP 地址?

sudo dhclient -v eth0

强制释放并重新获取

sudo dhclient -r eth0
sudo dhclient eth0

如果你能说明:

  • Debian 桌面还是服务器
  • 使用的是 NetworkManager / systemd-networkd / /etc/network/interfaces
  • 客户端还是服务器

我可以给你更精确的验证步骤。

0