DHCP 客户端与 68 端口
68 是 DHCP 客户端的默认端口(UDP),服务器侧使用 67。客户端从首次获取地址到续租、释放,全程都通过这两个端口与服务端或中继交互。先广播寻找服务器、服务器给出候选地址、客户端确认、服务器确认租约,这四步通常被简称为 DORA。地址以自动私有地址开头通常意味着获取失败,是可以直接看出来的一个重要信号。
基本信息
| 服务 | DHCP 客户端(系统内置或第三方客户端) |
|---|---|
| 协议 | UDP 68(服务器侧 67) |
| 规范 | RFC 2131 |
| 租约文件 | Linux 常见于 /var/lib/dhcp 或发行版对应目录 |
| 常见工具 | 系统网络管理服务、命令行客户端工具 |
| 排查要点 | 确认端口未被防火墙拦截、二层可达、地址池未耗尽 |
典型使用场景
- 新装系统首次联网:自动获取地址、网关与 DNS 参数
- 网络变更后重新获取:调整网段或地址池后让终端刷新配置
- 故障复现:手动触发获取流程,观察四步报文是否完整
- 租约核查:确认地址到期时间与服务端来源,排查地址冲突
- 批量排查:在终端侧收集证据,与服务器日志对照定位问题
手动获取与释放地址
手动获取与释放地址
sudo dhclient -r eth0 && sudo dhclient -v eth0 # 先释放再获取,-v 输出完整四步
ip -4 addr show dev eth0 | grep inet # 确认拿到的地址
cat /var/lib/dhcp/dhclient.leases | tail -20 # 查看租约起止时间与服务端标识
# 地址以自动私有地址开头说明获取失败,需要继续排查各平台客户端命令
| 系统 | 命令 | 判读要点 |
|---|---|---|
| Linux | dhclient -v eth0 | 观察四步报文是否完整 |
| Linux 租约 | 查看租约文件 | 关注起止时间与服务端标识 |
| Windows | ipconfig /all | 看租约获得与到期时间、服务器地址 |
| Windows 刷新 | 先释放再获取 | 释放后地址应暂时消失再重新出现 |
Windows 侧证据收集
Windows 侧证据收集
ipconfig /all | Select-String 'DHCP|Lease|Default Gateway|IPv4' # 关键字段一次看全
ipconfig /release; ipconfig /renew # 强制重新获取
Get-WinEvent -LogName System -MaxEvents 100 | Where-Object { $_.ProviderName -like '*Dhcp*' } # 客户端事件日志续租是客户端主动发起的:租期过半时开始单播续租,若未成功则继续尝试,直到租期临近结束时才转为广播并重新走一遍获取流程;间歇性断网可以对照续租失败的时间窗来定位。
虚拟化环境要注意多网卡:一台虚机同时跑两个客户端时容易出现地址要到另一张网卡上,表现为某块网卡上不了网而另一块拿到两个地址,排查时先核对地址与网卡对应关系。
排查顺序:先确认端口未被本机与上游防火墙拦截,再确认二层可达与地址池未耗尽,最后再看服务端日志;客户端侧拿不到地址时,先收集服务端日志与终端线索,比盲目重启服务有效。