温馨提示×

Debian DHCP中继怎么设置

小樊
57
2026-08-15 00:02:00
栏目: 智能运维

在 Debian 上设置 DHCP 中继(DHCP Relay / dhcrelay),通常使用 ISC DHCP 中继(isc-dhcp-relay)。下面按步骤说明。


一、安装 DHCP 中继软件

sudo apt update
sudo apt install isc-dhcp-relay

安装过程中会弹出配置界面,也可以跳过,后面手动配置。


二、基本配置(推荐方式)

1️⃣ 编辑配置文件

sudo nano /etc/default/isc-dhcp-relay

典型配置示例:

# DHCP 服务器地址(可以是多个,用空格分隔)
SERVERS="192.168.10.5"

# 需要监听 DHCP 请求的接口
INTERFACES="eth0 eth1"

# 可选:指定本地源地址(通常是接口 IP)
OPTIONS="-a -pf /var/run/dhcrelay.pid"

说明:

  • SERVERS:真正的 DHCP 服务器 IP
  • INTERFACES:接收 DHCP 广播的接口
  • -a:保留客户端源地址(推荐)

三、启动并设置开机自启

sudo systemctl restart isc-dhcp-relay
sudo systemctl enable isc-dhcp-relay

查看状态:

systemctl status isc-dhcp-relay

四、防火墙与网络注意事项(非常重要)

✅ 1. 允许 DHCP 相关端口

DHCP 使用:

  • UDP 67(服务器)
  • UDP 68(客户端)

如果启用了防火墙(如 nftables / iptables):

# iptables 示例
sudo iptables -A INPUT -p udp --dport 67 -j ACCEPT
sudo iptables -A INPUT -p udp --dport 68 -j ACCEPT

✅ 2. 确认路由正常

中继服务器必须能 直接访问 DHCP 服务器

ping 192.168.10.5

五、验证是否工作

在 DHCP 服务器上抓包:

tcpdump -i eth0 port 67 or port 68

在客户端:

dhclient -v eth0

如果看到 DHCP Discover → DHCP Offer → DHCP ACK,说明中继成功。


六、常见问题排查

❌ 客户端收不到 IP

  • 中继接口是否监听正确?
  • DHCP 服务器是否允许该网段?
  • 是否被防火墙拦截?

❌ DHCP 服务器日志无请求

  • 检查 SERVERS 是否写错
  • 检查路由是否可达

七、示例拓扑说明

客户端 (192.168.1.0/24)
     |
DHCP 中继 (Debian)
     |
DHCP 服务器 (192.168.10.5)

✅ 中继只需一个网卡能通 DHCP 服务器即可
✅ 不需要在 Debian 上运行 DHCP 服务


如果你愿意,可以告诉我:

  • Debian 版本(11 / 12)
  • 网络拓扑(几个网段)
  • 是否有防火墙(nftables / iptables)

我可以给你一份 完全贴合你环境的配置示例。

0 踩