温馨提示×

如何禁止linux dhcp客户端

小樊
40
2026-09-30 21:03:50
栏目: 智能运维

在 Linux 中“禁止 DHCP 客户端”通常有两种含义,下面分别说明:


一、禁止系统通过 DHCP 自动获取 IP(不使用 DHCP)

1. 使用 NetworkManager(常见桌面/服务器)

编辑对应连接配置,改为手动 IP:

nmcli connection modify <连接名> \
  ipv4.method manual \
  ipv4.addresses 192.168.1.10/24 \
  ipv4.gateway 192.168.1.1 \
  ipv4.dns 8.8.8.8
nmcli connection down <连接名>
nmcli connection up <连接名>

或直接使用 nmtui 图形化修改。


2. 使用 systemd-networkd

编辑 /etc/systemd/network/xxx.network:

[Match]
Name=eth0

[Network]
DHCP=no
Address=192.168.1.10/24
Gateway=192.168.1.1
DNS=8.8.8.8

然后:

systemctl restart systemd-networkd

3. 使用 /etc/network/interfaces(Debian 系)

改为 static:

auto eth0
iface eth0 inet static
    address 192.168.1.10
    netmask 255.255.255.0
    gateway 192.168.1.1

二、彻底禁止 DHCP 客户端程序运行

如果你是想不让任何 DHCP 客户端进程启动:

1. 停止并禁用 DHCP 客户端服务

常见 DHCP 客户端服务:

  • dhclient
  • dhcpcd
  • NetworkManager(内部含 DHCP)
# dhclient
systemctl stop dhclient
systemctl disable dhclient

# dhcpcd
systemctl stop dhcpcd
systemctl disable dhcpcd

# 若不用 NetworkManager
systemctl stop NetworkManager
systemctl disable NetworkManager

2. 卸载 DHCP 客户端(谨慎)

# Debian/Ubuntu
apt remove isc-dhcp-client dhcpcd5

# RHEL/CentOS
yum remove dhclient

3. 防止程序被调用(兜底)

chmod 000 /sbin/dhclient
chmod 000 /usr/sbin/dhcpcd

三、只禁止某块网卡使用 DHCP

在 NetworkManager 中:

nmcli connection modify <连接名> ipv4.method disabled

如果你能说明:

  • 使用的发行版(Ubuntu / CentOS / Arch 等)
  • 网络管理方式(NetworkManager / systemd-networkd / 手动)
  • 目的是“固定 IP”还是“彻底禁用 DHCP”

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

0 踩