温馨提示×

怎样测试Debian DHCP

小樊
54
2026-09-14 01:04:01
栏目: 智能运维

在 Debian 上“测试 DHCP”通常分为几种场景:测试 DHCP 服务器是否正常工作、测试客户端能否获取地址、抓包分析 DHCP 交互。下面按常见用法说明。


一、测试 Debian 作为 DHCP 客户端

1. 使用 dhclient 测试

sudo dhclient -v eth0
  • -v:显示详细过程
  • eth0:网卡名(用 ip addr 查看)

释放地址:

sudo dhclient -r eth0

2. 查看是否获取到 IP

ip addr show eth0

或

hostname -I

3. 查看 DHCP 分配信息

cat /var/lib/dhcp/dhclient.leases

二、测试 Debian 作为 DHCP 服务器(isc-dhcp-server)

1. 安装

sudo apt update
sudo apt install isc-dhcp-server

2. 配置示例

编辑:

sudo nano /etc/dhcp/dhcpd.conf

示例:

subnet 192.168.1.0 netmask 255.255.255.0 {
  range 192.168.1.100 192.168.1.200;
  option routers 192.168.1.1;
  option domain-name-servers 8.8.8.8;
}

指定监听网卡:

sudo nano /etc/default/isc-dhcp-server
INTERFACESv4="eth0"

3. 启动并测试

sudo systemctl restart isc-dhcp-server
sudo systemctl status isc-dhcp-server

4. 查看租约

cat /var/lib/dhcp/dhcpd.leases

三、用另一台机器测试 DHCP 服务

在客户端机器上:

sudo dhclient -v eth0

成功时应看到:

  • DHCPDISCOVER
  • DHCPOFFER
  • DHCPREQUEST
  • DHCPACK

四、用 tcpdump 抓包测试(推荐)

在 DHCP 服务器上:

sudo tcpdump -i eth0 port 67 or port 68 -e -n

然后客户端执行:

sudo dhclient -r eth0
sudo dhclient -v eth0

可以看到完整的 DHCP 四次交互。


五、常见问题排查

1. 防火墙阻止

sudo ufw disable

或允许:

sudo ufw allow 67/udp

2. 多 DHCP 服务器冲突

网络中只能有一个 DHCP 服务器(或需配置中继)。

3. 网卡未 up

ip link set eth0 up

如果你能说明你是:

  • ✅ 测试 DHCP 服务器
  • ✅ 测试 DHCP 客户端
  • ✅ 在 虚拟机 / 容器 / 物理机
  • ✅ 使用 isc-dhcp / dnsmasq

我可以给你更精确的测试步骤。

0 踩