Solution to scan error "RPC server is not available". (「RPC 伺服器無法使用」掃瞄錯誤的解決方法。)

若要使用 AIT 進行網路掃瞄,必須將目前的 IT 基礎架構,以及目前的安全性原則和設定納入考量。此外,應確認要掃瞄的 PC 是直接還是間接連線 LAN (VPN)。以下是當您取得錯誤訊息「RPC 伺服器無法使用」時,對掃瞄問題進行排除的程序。

此掃瞄錯誤解決方案的步驟:

  1. 視掃瞄時是否指定網域名稱以及是否使用 IP 範圍而定,請務必確定報告此錯誤的 IP 位址是 Windows 裝置或網路裝置,因為如果不是 Windows 裝置,AIT 將找不到執行的 WMI 服務,因此它會報告此錯誤也屬正常。
  2. 如果 Windows 裝置報告此錯誤,請務必確認網路上是否可找到該 PC,即其是否回應 Ping (如果啟用 ICMP 通訊協定,則會回應 Ping)。若要執行此檢查,我們建議使用下列 PowerShell 指令碼,以便執行量體 Ping,並參考 AIT 建立的 AD_Computs.txt 檔案。考慮 PC 的大概總數,並比較回應 ping 的 PC 數量。如果 PC 的回應數目不足,則導致掃瞄錯誤的原因可能是 PC 未連線網路,或位於無法連線的 VLAN。另一方面,如果 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"
              
                    }      
          
} 
  1. 當確定防火牆是造成掃瞄錯誤的原因時,應驗證掃瞄所針對的每台 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 端點對應程式服務,RPC 端點對應程式則會告訴它正在偵聽哪個 WMI 連接埠,該連接埠號碼是隨機號碼,可介於 1025-5000 或 49152-65535 之間。您必須確認電腦防火牆設定正確,並允許所有 WMI 流量。如上所述,開啟特定連接埠是不夠的,因為流量是透過隨機連接埠傳送。
  1. 如果防火牆由 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 群組原則,請參閱允許輸入遠端管理的群組原則設定

  1. 如果防火牆由非 Windows 的安全性解決方案管理,您必須登入該解決方案的管理主控台並編輯目前的防火牆規則,以允許 PC 在 AIT 所需的連接埠上接收要求,請參閱網路掃瞄時的 AIT TCP/IP 通訊流量
  1. 執行此程序後若仍顯示「RPC 伺服器無法使用」錯誤,請復原所有變更,然後繼續使用其他方法設定 AIT:

允許輸入遠端管理的群組原則

  1. 在 Active Directory 伺服器上,開啟群組原則管理員
  2. 於所選的網域樹系或組織單位上按一下右鍵,建立一個新的 GPO,為了可追溯性起見,建議將其命名為「Autodesk Inventory Tool」
  3. 建立 GPO 後,在其上按一下右鍵,然後選取「Edit」(編輯)
  4. 在群組原則編輯器中,移至路徑:(根據您的作業系統和設定語言進行檢查)。
Computer Configuration\Administrative Templates\Network\Network Connections\Windows Defender Firewall\Domain Profile
Computer Configuration\Administrative Templates\Network\Network Connections\Windows Firewall\Domain Profile
  1. 移至該位置後,根據已設定的作業系統和語言設定 GPO:
Windows Defender Firewall: Allow inbound remote administration exception
Windows Firewall: Allow inbound remote administration exception
Windows Firewall: Allow remote administration exception
  1. 選取後,按一下右鍵然後選取「Edit」(編輯),接著在設定中選取「Enabled」(啟用)。在設定選項的「Allow unsolicited incoming messages from these IP addresses」(允許來自這些 IP 位址的未經要求傳入訊息) 文字方塊中,輸入安裝 AIT 的伺服器或 PC 的 IP 位址。

網路掃瞄時的 AIT TCP/IP 通訊流量

以下圖表說明掃瞄網路時 AIT 所執行的網路通訊