Solution to scan error "RPC server is not available". (扫描错误“RPC 服务器不可用”的解决方案。)
对于使用 AIT 的网络扫描,必须考虑当前 IT 基础设施以及当前的安全策略和配置。此外,还应验证要扫描的 PC 是通过直接还是间接方式 (VPN) 连接到 LAN。在收到错误“RPC 服务器不可用”时,您可以按照以下步骤对出现的扫描问题进行故障排查。
解决此扫描错误的方法步骤:
- 根据在扫描时是指定了域名,还是使用了 IP 范围,请务必确定报告此错误的 IP 地址是 Windows 设备、网络设备还是其他设备,因为如果它不是 Windows 设备,AIT 将找不到正在运行的 WMI 服务,此时通常就会报告此错误。
- 如果是 Windows 设备报告了此错误,请务必了解 PC 在网络上是否可用,即能否响应 ping(如果 ICMP 协议处于启用状态,那么 ping 应该能正常获得结果)。要执行此检查,我们建议使用以下 PowerShell 脚本,该脚本允许以 AIT 创建的 AD_Computers.txt 文件为参考,执行批量 ping。将响应 ping 的 PC 数量与您认定的 PC 近似总数进行比较。如果响应 ping 的 PC 数量较少,则扫描错误的原因可能是 PC 未连接到网络或位于无法访问的 VLAN 中。另一方面,如果响应 ping 的 PC 数量接近 PC 总数,则扫描错误的原因是由于扫描目标的每台 PC 上使用的防火墙阻止了端口。
$PCName = Get-Content "C:\ProgramData\Autodesk\AIT\AD_Computers.txt"
$Successfulping = New-Item c:\Successfulping.txt -ItemType "file" -force
$Failedping = New-Item c:\Failedping.txt -ItemType "file" -force
foreach ($PC in $PCName) {
if (test-Connection -ComputerName $PC -Count 1 -Quiet ) {
"$PC is Pinging "
Add-Content -path $Successfulping -value "$PC is Pinging"
} else
{
"$PC not pinging"
Add-Content -path $Failedping -value "$PC not pinging"
}
}
- 在确定防火墙是扫描错误的原因时,应验证扫描目标的每台 PC 上使用的防火墙是由 Windows 管理的,还是由 Windows 以外的安全解决方案管理的,因为这决定了应在何处对现有防火墙规则进行技术调整。AIT 通过使用 WMI (Windows Management Instrumentation) 查询各种 Windows 操作系统数据点,以获取 Autodesk 产品清单(WMI 是 Windows 操作系统中内置的管理基础架构)。当 AIT 获得每台 PC 的 IP 时,它会尝试连接到其尝试扫描的每台 PC 上的 UDP 端口 137、138 以及 TCP 端口 135、139 和 445。AIT 连接到 TCP 端口 135 上的 RPC Endpoint Mapper 服务,RPC Endpoint Mapper 会告知它正在侦听哪个 WMI 端口,端口号是随机的,可能在范围 1025-5000 或 49152-65535 之间。必须确保计算机防火墙已正确配置为允许所有 WMI 流量。仅打开特定端口是不够的,因为流量是通过如上所述的随机端口发送的。
- 如果防火墙由 Windows 管理,可以执行的快速检查是在一台 PC 上本地启用所需的端口例外,然后启动仅指向该 PC 的 AIT 扫描,以验证网络扫描是否成功。要进行此项检查,必须在选定测试 PC 的命令提示符窗口中以管理员身份执行以下命令
call netsh firewall set service RemoteAdmin enable
call netsh firewall add portopening protocol=tcp port=135 name=DCOM_TCP135
如果在执行这些命令并启动 AIT 后扫描成功,那么可以确定,设置必然是在 PC 的 Windows 防火墙内进行的。要将此设置扩展至所有 PC,建议创建 Active Directory 组策略,请参见:通过组策略设置以允许入站远程管理。
- 如果防火墙由 Windows 以外的安全解决方案管理,您必须登录到该解决方案的管理控制台,并编辑允许 PC 在 AIT 所需端口上接收请求的当前防火墙规则。请参见:网络扫描中的 AIT TCP/IP 通信流。
- 如果执行此过程后仍然显示错误“RPC 服务器不可用”,请撤消所做的任何更改,然后继续使用其他方法配置 AIT:
通过组策略以允许入站远程管理
- 在 Active Directory 服务器上,打开组策略管理器。
- 右键单击选定的域、林或组织单位,创建一个新的 GPO(为便于跟踪,建议将其命名为“Autodesk Inventory Tool”)。
- 创建 GPO 后,用右键单击它,然后选择“Edit”(编辑)。
- 在组策略编辑器中,转到路径(具体路径取决于您的操作系统和语言配置)。
Computer Configuration\Administrative Templates\Network\Network Connections\Windows Defender Firewall\Domain Profile
Computer Configuration\Administrative Templates\Network\Network Connections\Windows Firewall\Domain Profile
- 进入此目录后,根据操作系统和已经配置的语言对 GPO 进行配置:
Windows Defender Firewall: Allow inbound remote administration exception
Windows Firewall: Allow inbound remote administration exception
Windows Firewall: Allow remote administration exception
- 选择后,单击鼠标右键并选择“Edit”(编辑),并在配置中选择“Enabled”(启用)。在显示“Allow unsolicited incoming messages from these IP addresses”(允许来自这些 IP 地址的未经请求的传入消息)的配置选项中,在文本框中输入安装 AIT 的服务器或 PC 的 IP 地址。