本文提供將工作群組電腦加入域時,解決遠端程序呼叫(RPC)狀態代碼 0x6bf 或 0xc002001c 的疑難排解步驟。
當您將工作組電腦加入網域時,您會收到下列錯誤訊息:
遠端過程呼叫失敗且未執行。
當您檢查 NetSetup.log 檔案時,您會看到下列條目。 例如:
NetpGetLsaHandle: LsaOpenPolicy on \\<DC name>.<domain>.<tld> failed: 0xc002001c
NetpGetLsaPrimaryDomain: status: 0xc002001c
NetpJoinDomain: initiaing a rollback due to earlier errors
NetpJoinDomain: status of disconnecting from '\\<DC name>.<domain>.<tld>': 0x0
NetpDoDomainJoin: status: 0x6bf
網路裝置拒絕網路封包
當網路裝置(路由器、防火牆或虛擬專用網 (VPN) 裝置拒絕加入用戶端與域控制器 (DC) 之間的網路封包時,就會發生此錯誤。
錯誤 0x6ba(RPC_S_SERVER_UNAVAILABLE)與其他不同。 發生錯誤0x6ba時,裝置無法建立到伺服器端口的 TCP 連線會話。 錯誤0x6bf表示可以建立 TCP 連線,但無法成功傳送 RPC 請求訊息,因此 TCP 連線已被重設。
RPC 網路會話問題的另一個變化是錯誤0x6be(RPC_S_CALL_FAILED)。 在此情況下,可以傳遞 RPC 要求訊息,但在收到回應之前會重設 TCP 會話。
驗證及測試連線
若要針對此問題進行疑難解答,請使用下列步驟:
驗證已加入的用戶端設備與目標DC之間透過必要埠和通訊協定的連線。
伺服器埠 服務/通訊協定 傳輸控制通訊協定 (TCP) 135 RPC 終端點對應器 TCP 49152 - 65535 RPC (動態埠設定) TCP 445 伺服器訊息區 (SMB) 用戶數據報通訊協定 (UDP)/TCP 389 輕量型目錄存取通訊協定 (LDAP) 請參閱 如何為 Active Directory 網域和信任設定防火牆中的必要埠清單。
執行下列 Cmdlet 以測試用戶端與 DC 之間的連線:
Test-NetConnection <IP_address_of_the_DC> -Port 389
預期的輸出如下所示:
ComputerName : <ComputerName> RemoteAddress : <RemoteAddress> RemotePort : 389 InterfaceAlias : Ethernet 2 SourceAddress : <SourceAddress> TcpTestSucceeded : True
輸出表示LDAP埠 TCP 389 在用戶端與 DC 之間開啟。
使用 PortQry 命令列工具,識別 DC 上的埠 (TCP/UDP) 是否遭到封鎖。 如需詳細資訊,請參閱 使用 PortQry 命令行工具。
以下是一些範例語法:
portqry -n <problem_server> -e 135
portqry -n <problem_server> -e 445
portqry -n <problem_server> -e 389
portqry -n <problem_server> -p UDP -e 389
portqry -n <problem_server> -r 49152:65535
以下是一些範例輸出:
如果 DC 上的 TCP 135 連接埠連線遭到封鎖,您會看到下列輸出:
C:\PortQryV2>portqry -n dc2 -e 135 Querying target system called: Dc2 Attempting to resolve name to IP address… Name resolved to 192.168.1.2 querying... TCP port 135 <epmap service>: FILTERED
如果 DC 上的 TCP 389 連接埠連線成功,您會看到下列輸出:
C:\PortQryV2>portqry -n dc2 -e 389 Querying target system called: Dc2 Attempting to resolve name to IP address… Name resolved to 192.168.1.2 querying... TCP port 389 <ldap service>: LISTENING
若要判斷是否有任何進一步的網路連線問題,請在重現問題時視需要收集網路追蹤。 您可以使用 netsh trace
來產生 ETL 檔案,並將 ETL 檔案轉換成 PCAP 檔案,Wireshark 可以讀取該檔案。