温馨提示×

Ubuntu DHCP如何更新软件

小樊
40
2025-12-16 07:27:15
栏目: 智能运维

Ubuntu DHCP 更新与续租操作指南

适用场景与术语说明

  • 本回答涵盖两类“更新”:
    • 软件包更新:升级 DHCP 客户端 dhclientDHCP 服务器 isc-dhcp-server
    • 运行时更新:让客户端向服务器重新获取 IP、DNS、租约 等(不改动软件包)。

更新 DHCP 软件包

  • 客户端 dhclient(若系统将客户端打包为 isc-dhcp-client,则更新该包):
    • 执行:sudo apt update && sudo apt install --only-upgrade isc-dhcp-client(或 sudo apt install --only-upgrade dhclient,以实际包名为准)。
  • 服务器 isc-dhcp-server:
    • 执行:sudo apt update && sudo apt install --only-upgrade isc-dhcp-server
  • 说明:保持 DHCP 相关软件为最新版本有助于修复已知漏洞与兼容性问题,建议纳入常规系统更新流程。

客户端立即重新获取 IP 与 DNS(无需改配置)

  • 释放并续租(推荐):
    • 释放:sudo dhclient -r <接口名>(如 eth0)。
    • 获取:sudo dhclient <接口名>
  • 仅续租(不先释放):
    • sudo dhclient -1 <接口名>(发送单播请求,快速续租)。
  • 验证结果:
    • 查看地址:ip -4 addr show dev <接口名>
    • 查看路由:ip route
    • 查看租约与服务器:cat /var/lib/dhcp/dhclient.<接口名>.leases
    • 查看 DNS:在 /etc/resolv.conf 或通过 resolvectl status(取决于系统解析栈)。
  • 适用:网络异常、租约异常、DNS 变更后需要快速刷新等场景。

修改 DHCP 客户端配置并使其生效

  • 编辑配置文件:
    • sudo nano /etc/dhcp/dhclient.conf
    • 常用项:在 request 列表中增删所需选项(如 subnet-mask、routers、domain-name-servers 等),或添加 send host-name "your-host"; 等自定义请求。
  • 使配置生效(按所用网络栈选择其一):
    • 使用 ifupdown:sudo systemctl restart networking
    • 使用 NetworkManager:
      • 指定接口:sudo nmcli con mod <连接名> ipv4.method auto
      • 使生效:sudo nmcli con up <连接名>
    • 使用 Netplan(Ubuntu Server 常见):
      • 应用:sudo netplan apply
  • 验证:再次执行 ip -4 addrcat /var/lib/dhcp/dhclient.<接口名>.leasesresolvectl status 确认变更。

服务器侧更新与验证(isc-dhcp-server)

  • 升级软件包:
    • sudo apt update && sudo apt install --only-upgrade isc-dhcp-server
  • 检查与重启服务:
    • 状态:sudo systemctl status isc-dhcp-server
    • 重启:sudo systemctl restart isc-dhcp-server
  • 防火墙放行(若启用 UFW):
    • sudo ufw allow 67/udp
    • sudo ufw allow 68/udp
  • 查看日志与租约:
    • 日志:sudo tail -f /var/log/syslog | grep dhcpd
    • 租约:sudo tail -f /var/lib/dhcp/dhcpd.leases
  • 说明:升级后建议核对 /etc/dhcp/dhcpd.conf 关键参数(如 subnet、range、routers、domain-name-servers)与接口绑定 /etc/default/isc-dhcp-server 是否仍符合网络规划。

0