修改Ubuntu DHCP服务器设置的完整步骤
修改配置文件前,务必备份原始文件以避免配置错误导致服务中断:
sudo cp /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.conf.bak # 备份主配置文件
sudo cp /etc/default/isc-dhcp-server /etc/default/isc-dhcp-server.bak # 备份接口配置文件
若系统未安装DHCP服务器,通过以下命令安装:
sudo apt update
sudo apt install isc-dhcp-server -y
配置文件路径为/etc/dhcp/dhcpd.conf,使用文本编辑器(如nano)打开:
sudo nano /etc/dhcp/dhcpd.conf
根据网络需求调整以下关键参数:
option domain-name "example.com"; # 域名(可选)
option domain-name-servers 8.8.8.8, 8.8.4.4; # DNS服务器(替换为你的DNS)
default-lease-time 600; # 默认租约时间(秒,如10分钟)
max-lease-time 7200; # 最大租约时间(秒,如2小时)
authoritative; # 声明此服务器为权威DHCP(避免客户端拒绝配置)
subnet 192.168.1.0 netmask 255.255.255.0 { # 子网地址及掩码(需与本地网络一致)
range 192.168.1.100 192.168.1.200; # 可分配的IP地址范围(避免与静态IP冲突)
option routers 192.168.1.1; # 默认网关(替换为你的网关IP)
option subnet-mask 255.255.255.0; # 子网掩码(通常与子网定义一致)
option broadcast-address 192.168.1.255; # 广播地址(自动计算,可省略)
}
host printer { # 主机名(自定义)
hardware ethernet 00:1a:2b:3c:4d:5e; # 设备MAC地址(需替换为实际值)
fixed-address 192.168.1.50; # 分配的固定IP
}
option ntp-servers 192.168.1.10; # NTP服务器地址(替换为实际值)
编辑/etc/default/isc-dhcp-server文件,设置DHCP服务器监听的网络接口:
sudo nano /etc/default/isc-dhcp-server
找到INTERFACESv4行,修改为你的网络接口名称(可通过ip a命令查看,如eth0、enp0s3):
INTERFACESv4="eth0" # 若有多个接口,用空格分隔(如"eth0 eth1")
修改完成后,重启服务以使更改生效:
sudo systemctl restart isc-dhcp-server
若需设置开机自启(推荐):
sudo systemctl enable isc-dhcp-server
检查服务是否正常运行:
sudo systemctl status isc-dhcp-server
若显示active (running),则表示服务已启动。
在客户端设备(如另一台电脑或手机)上,将网络设置为“自动获取IP地址”,然后执行以下命令验证是否获取到配置范围内的IP:
ip addr show dev eth0 # Linux客户端(替换为实际接口名)
ipconfig /all # Windows客户端
若获取到的IP在range指定的范围内,且网关、DNS符合配置,则说明修改成功。
sudo tail -f /var/log/syslog | grep dhcpd # 实时查看DHCP日志
sudo dhcpd -t # 测试配置文件语法(不会重启服务)
ufw防火墙,需允许DHCP流量(UDP 67/68端口):sudo ufw allow 67/udp
sudo ufw allow 68/udp
sudo ufw reload
通过以上步骤,你可完成Ubuntu DHCP服务器的设置修改。根据实际网络环境调整参数(如子网地址、IP范围、DNS服务器等),确保与现有网络架构兼容。