温馨提示×

ubuntu dhcp怎么改端口

小樊
36
2026-10-04 02:40:12
栏目: 智能运维

在 Ubuntu 上,DHCP 服务通常是由 ISC DHCP Server(isc-dhcp-server) 提供的,默认监听 UDP 67 端口。
需要注意:DHCP 协议标准端口就是 67,改端口通常不是标准用法,很多客户端并不支持。

下面分情况说明:


一、如果你用的是 isc-dhcp-server

1. 安装(如未安装)

sudo apt update
sudo apt install isc-dhcp-server

2. 修改监听端口

isc-dhcp-server 本身不直接支持修改端口参数,但可以通过:

✅ 方法一:用 DHCPDARGS + 端口(不推荐,兼容性差)

编辑:

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

例如:

DHCPDARGS="eth0:6767"

⚠️ 但 多数客户端仍然只发往 67 端口,这种方式基本只用于实验。


✅ 方法二(推荐):用 iptables 端口转发

保留 67,对外“看起来像”另一个端口:

sudo iptables -t nat -A PREROUTING -i eth0 -p udp --dport 6767 -j REDIRECT --to-port 67

查看:

sudo iptables -t nat -L -n

二、如果你用的是 dnsmasq(常见于 Ubuntu / 桌面 / 路由)

1. 修改端口

编辑:

sudo nano /etc/dnsmasq.conf

添加或改:

dhcp-port=6767

重启:

sudo systemctl restart dnsmasq

验证:

sudo netstat -anu | grep 6767

三、如果你用的是 kea-dhcp(新方案)

编辑配置:

sudo nano /etc/kea/kea-dhcp4.conf
"dhcp4": {
  "interfaces-config": {
    "interfaces": ["eth0"]
  },
  "socket-type": "udp",
  "port": 6767
}

四、重要提醒

  • DHCP 客户端默认只连 UDP 67
  • 改端口通常用于 内网实验 / 中继 / 特殊环境
  • 如果是 DHCP Relay,改的是 relay 端口,不是 server

如果你能告诉我:

  • Ubuntu 版本
  • 用的 DHCP 软件(isc / dnsmasq / kea)
  • 为什么要改端口(实验?多实例?安全?)

我可以给你 最合适、可落地的配置方案。

0 踩