Windows Server 2025 / 如何排查 IP、DNS 和 DHCP 问题
排查 Windows Server 2025 网络问题时,应分别检查 IP 配置、网络路径、DNS 名称解析和实际服务。先记录 CLIENT1 当前配置,与同一网络中正常客户端的相同测试对照,再一次只修改一个有依据的设置并重测。ping 回应、DNS 应答和 TCP 端口连通各自证明的内容不同,不能相互替代。
明确故障范围与近期变化
先明确故障范围:所有客户端还是单个客户端受影响?名称和 IP 都无法访问,还是只有名称失败?是否仅某个服务出错?记录目标、时间、错误信息,以及近期重启、适配器、虚拟交换机和 DHCP 选项变化。IP 是互联网协议(Internet Protocol),DNS 是域名系统(Domain Name System),DHCP 是动态主机配置协议(Dynamic Host Configuration Protocol)。在同一网段用相同测试比较,不要同时修改 DNS 和防火墙,否则无法判断哪项修改起效。
| 症状 | 优先检查方向 |
|---|---|
| 名称和 IP 都失败 | 分别检查连接、地址、服务及防火墙规则。 |
| 只有名称失败 | 检查 DNS 服务器、记录、后缀与缓存。 |
| 单个客户端地址错误 | 对照手动配置、租约及其他 DHCP 服务器。 |
| 本地子网正常,外部访问失败 | 按网络设计检查网关、路由、NAT 与出站规则。 |
使用 IP 访问有助于区分名称问题,但不一定等同于使用服务名称访问,两者的证书要求和 Kerberos 身份验证条件可能不同。Windows 默认不会在目标以 IP 表示时尝试 Kerberos,详见 Kerberos 与 IP 目标的说明。诊断连接不应未经评估就成为长期访问方式,也不要忽略证书警告。
读取客户端实际配置
ipconfig /all
Get-NetIPConfiguration
Get-NetAdapter
Get-NetRoute -AddressFamily IPv4
在 CLIENT1 控制台的 Windows PowerShell 中执行此块。找准实验网适配器,记录 IP、掩码、DNS、DHCP 服务器、后缀及自动或手动配置方式。完成 DHCP 实验后,预期租约为 172.24.50.100–172.24.50.150,掩码为 255.255.255.0,DNS 为 172.24.50.10。Get-NetAdapter 用于核对适配器与状态;Get-NetRoute 显示目的前缀和下一跳,有默认路由时可见 0.0.0.0/0。无路由器的隔离网不需要网关也能在本子网内通信,此设计无法访问互联网属于预期结果。若 Get-NetIPConfiguration 未显示目标接口,可检查 -All 或指定实际接口索引,参见 IP 配置查询文档。
169.254.x.x 通常提示没有获得可用租约,但不能单凭此断定 DHCP 服务器损坏。先检查虚拟机是否启动、适配器是否启用并连接正确交换机,以及需要 DHCP 的客户端是否自动获取 IP。还应核对实际 DHCP 服务器是否为 DC1。DHCP 客户端排障指南指出,可在事件查看器的“应用程序和服务日志”中查看 DHCP 客户端的 Operational 和 Admin 事件。将事件与故障时间、适配器对照,而不是只看是否存在任意错误。
区分网络可达与服务可用
ping 172.24.50.10
Test-NetConnection -ComputerName 172.24.50.20 -Port 445
在 CLIENT1 执行这两个测试。ping 检查互联网控制消息协议(ICMP,Internet Control Message Protocol)的回应;回应被阻止不代表所有服务都不可用。Test-NetConnection 带 -Port 检查传输控制协议(TCP,Transmission Control Protocol)连接,应查看该目标与端口的 TcpTestSucceeded,详见 连接诊断命令文档。TCP 445 用于服务器消息块协议(SMB,Server Message Block)文件共享。仅在 FS1 已于 .20 提供服务时才预期成功,本课程此时可能尚未配置。True 不验证身份认证、共享权限或文件读取。
同子网内失败时,检查虚拟机运行状态、交换机连接、重复 IP 和掩码。只有外部访问失败时,检查真实网关、路由、网络地址转换(NAT,Network Address Translation)及出站规则,不要为隔离网随意填写路由器地址。改测其他端口前,确认确实应有服务监听该端口。检查相关防火墙规则的配置文件、允许来源和目标,不要整体关闭防火墙。
比较指定 DNS 与默认解析路径
Resolve-DnsName 'fs1.lab.example.test' -Type A -Server 172.24.50.10
nslookup fs1.lab.example.test 172.24.50.10
Resolve-DnsName 'fs1.lab.example.test' -Type A
在 CLIENT1 上,前两条查询明确指定 DC1 的 172.24.50.10,最后一条使用客户端配置的解析路径。fs1.lab.example.test 的 A 记录已创建时,解析结果应包含 172.24.50.20;不要把应答中的 DNS 服务器地址当成主机解析地址。nslookup 不使用客户端 DNS 缓存。指定服务器的查询成功而默认查询失败时,应检查 DNS 设置、适配器、策略和缓存;这只是排查线索,不能直接确定唯一原因。完全限定域名(FQDN,Fully Qualified Domain Name)成功而短名称失败时,检查后缀与搜索列表。
区分 NXDOMAIN 所表示的名称不存在与未收到回应的超时;名称也可能存在,但缺少请求类型的记录。结合DNS 客户端检查与 服务器区域和转发器检查进行判断。Clear-DnsClientCache 清空本地客户端缓存,Clear-DnsServerCache 针对 DNS 服务器服务缓存;即使在 DC1 上,这两个角色也不同。先确定相关缓存并保留观察结果,再决定是否清理;两者都不能修复权威区域中的错误记录。仅外部名称失败时,检查转发器和出口路径,不要把内部 DNS 换成公共 DNS 来掩盖问题。
检查 DHCP 并重复原测试
在 DC1 上以管理员身份打开 Windows PowerShell,执行下方本地服务器查询。检查 DHCPServer 是否为 Running、172.24.50.0 作用域是否激活、有无可用容量,以及是否有对应实际客户端的租约。另行检查隔离网接口绑定;仅在已有域时检查 Active Directory 授权。DHCP 综合排障指南涵盖这些检查。跨子网客户端可能需要 DHCP 中继代理,但单交换机实验中的故障不应通过无必要地添加中继来处理。
Get-Service DHCPServer
Get-DhcpServerv4Scope
Get-DhcpServerv4ScopeStatistics -ScopeId 172.24.50.0
Get-DhcpServerv4Lease -ScopeId 172.24.50.0
需要续租时,在 CLIENT1 控制台操作,并限定正确适配器。修改一个设置后,重复原来失败的同一名称、IP 或端口测试,同时确认原先正常的功能没有受影响。无改善时,仅恢复刚改动的值,并记录命令、目标、时间和错误信息。整体关闭防火墙、清空所有缓存和同时重建作用域会破坏排障线索,也增加恢复难度。
例如,指定 .10 的查询正确、默认查询失败,而且确认 CLIENT1 手动填写了错误 DNS。先记录原值,打开 ncpa.cpl → 隔离网适配器的“属性”→“Internet 协议版本 4 (TCP/IPv4)”→“属性”,仅将错误 DNS 值纠正为 172.24.50.10,保留 IP、掩码和网关,再重复两种查询。若 DNS 来自 DHCP,应检查作用域选项 006 并让客户端续租,而不是用手动例外掩盖配置错误。具体检查可参阅DHCP 作用域及选项配置。




