在 Linux 系统中配置 DHCP 客户端通常涉及修改网络配置文件或使用命令行工具。以下是不同发行版和网络管理工具的配置方法:
network-scripts
(旧版 CentOS/RHEL)bash
sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0
修改或添加以下内容:
ini
BOOTPROTO=dhcp
ONBOOT=yes
重启网络服务:
bash
sudo systemctl restart network
编辑 Netplan 配置文件(通常位于 /etc/netplan/
):
bash
sudo vi /etc/netplan/01-netcfg.yaml
示例配置:
yaml
network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: true
应用配置:
bash
sudo netplan apply
systemd-networkd
(通用)创建或编辑配置文件:
bash
sudo vi /etc/systemd/network/10-eth0.network
内容如下:
```ini
[Match]
Name=eth0
[Network]
DHCP=yes
启用并重启服务:
bash
sudo systemctl enable systemd-networkd
sudo systemctl restart systemd-networkd
```
bash
sudo dhclient eth0 # 释放旧租约:sudo dhclient -r eth0
nmcli
(NetworkManager)bash
sudo nmcli con add type ethernet ifname eth0 con-name eth0-dhcp
sudo nmcli con mod eth0-dhcp ipv4.method auto
sudo nmcli con up eth0-dhcp
bash
ip addr show eth0
bash
cat /var/lib/dhcp/dhclient.leases # 或 journalctl -u dhclient
bash
ping -c 4 google.com
DHCP 服务未响应
ip link set eth0 up
)。保留自定义 DNS
在 DHCP 配置中添加(如 Netplan):
dhcp4-overrides:
use-dns: false
多网卡配置
为每个接口单独配置 DHCP,或使用 Match
规则(systemd-networkd)。
发行版 | 推荐配置方式 |
---|---|
Ubuntu 18.04+ | Netplan |
CentOS/RHEL 8+ | NetworkManager 或 nmcli |
Debian | /etc/network/interfaces 或 systemd-networkd |
Arch Linux | systemd-networkd |
根据系统环境选择合适的配置方式即可。