Sửa lỗi 'Error 1722: The RPC server is unavailable' trên Windows

intermediate🪟 Windows2026-05-23| Windows 10, Windows 11, Windows Server 2016/2019/2022 — quản lý từ xa qua MMC, sc.exe, PowerShell remoting, WMI, hoặc Event Viewer

Error Message

Error 1722: The RPC server is unavailable.
#rpc#windows-services#quản-lý-từ-xa#tường-lửa#windows

Lỗi Gặp Phải

Bạn mở Services, Event Viewer, hoặc Device Manager để kết nối đến máy từ xa — hoặc chạy lệnh sc — và Windows chặn bạn ngay lập tức:

Error 1722: The RPC server is unavailable.

Máy đó vẫn online. Ping vẫn hoạt động. Nhưng bất cứ thứ gì liên quan đến RPC đều bị chết. Dưới đây là cách xác định nguyên nhân và khắc phục.

Nguyên Nhân Gốc Rễ

RPC (Remote Procedure Call) là tầng vận chuyển nằm bên dưới hầu hết mọi công cụ quản lý từ xa trên Windows. Lỗi 1722 nghĩa là phía client đã kết nối được đến mạng nhưng không thể hoàn tất quá trình bắt tay. Thường là do một trong những nguyên nhân sau:

  • Dịch vụ Remote Procedure Call (RPC) hoặc RPC Endpoint Mapper đã bị dừng trên máy đích
  • Tường lửa đang chặn cổng TCP 135 (RPC Endpoint Mapper) hoặc các cổng RPC động (49152–65535)
  • Cấu hình network adapter đã chuyển từ Private sang Public, âm thầm vô hiệu hóa các quy tắc quản lý từ xa
  • DNS trả về địa chỉ IP sai, khiến RPC không thể xác định được endpoint — phổ biến trong môi trường domain sau khi thay đổi DHCP
  • Kết nối lại VPN hoặc thay đổi mạng để lại một route cũ đến máy đích

Bước 1 — Kiểm Tra Dịch Vụ RPC Đang Chạy Trên Máy Đích

Trước tiên hãy đăng nhập vào máy đích qua RDP hoặc trực tiếp. Sau đó chạy:

sc query RpcSs
sc query RpcEptMapper

Cả hai đều phải hiển thị STATE: 4 RUNNING. Nếu đang dừng? Khởi động chúng lên:

net start RpcSs
net start RpcEptMapper

Nếu RpcSs từ chối khởi động, hệ thống đang ở trạng thái lỗi. Mở eventvwr → Windows Logs → System và lọc theo nguồn Service Control Manager — sẽ có một sự kiện giải thích lý do.

Bước 2 — Kiểm Tra Quy Tắc Tường Lửa Windows Trên Máy Đích

Chín lần mười, đây chính là vấn đề. Chạy trên máy đích:

# Xem những quy tắc quản lý từ xa nào đang thực sự được bật
Get-NetFirewallRule -DisplayName "*Remote*" | Select DisplayName, Enabled, Profile

Ba nhóm quy tắc phải được bật:

  • Remote Service Management (RPC)
  • Remote Service Management (RPC-EPMAP)
  • Windows Management Instrumentation (WMI-In)

Bật tất cả bằng hai lệnh:

Enable-NetFirewallRule -DisplayGroup "Remote Service Management"
Enable-NetFirewallRule -DisplayGroup "Windows Management Instrumentation (WMI)"

Không có quyền truy cập PowerShell remoting? Dùng netsh thay thế:

netsh advfirewall firewall set rule group="Remote Service Management" new enable=Yes
netsh advfirewall firewall set rule group="Windows Management Instrumentation (WMI)" new enable=Yes

Bước 3 — Kiểm Tra Cổng 135 Có Thể Truy Cập Từ Máy Của Bạn

Từ máy trạm của bạn:

Test-NetConnection -ComputerName TARGET_HOSTNAME -Port 135

TcpTestSucceeded : False nghĩa là có tường lửa đang chặn đường truyền — có thể là Windows Firewall, tường lửa phần cứng, hoặc một network ACL. RPC không thể hoạt động cho đến khi cổng 135 được mở. Không có ngoại lệ.

Trong khi đang kiểm tra, hãy thử thêm vài cổng động:

Test-NetConnection -ComputerName TARGET_HOSTNAME -Port 49152
Test-NetConnection -ComputerName TARGET_HOSTNAME -Port 49153

Bước 4 — Khắc Phục Lỗi Sai Network Profile Của Tường Lửa

Windows duy trì các bộ quy tắc tường lửa riêng biệt cho mạng Domain, Private và Public. Các quy tắc quản lý từ xa chỉ áp dụng cho Domain và Private. Nếu một NIC chuyển sang Public — điều này xảy ra sau khi thay đổi mạng hoặc sự cố DHCP — các quy tắc đó sẽ biến mất một cách âm thầm.

Kiểm tra profile hiện tại trên máy đích:

Get-NetConnectionProfile

Thấy NetworkCategory: Public trên adapter LAN nội bộ? Sửa lại:

Set-NetConnectionProfile -InterfaceAlias "Ethernet" -NetworkCategory Private

Thay Ethernet bằng tên interface thực tế xuất hiện trong kết quả lệnh trên.

Bước 5 — Kiểm Tra Phân Giải DNS

RPC dùng hostname trong quá trình tra cứu endpoint. Một bản ghi DNS cũ trả về IP sai là đủ để phá vỡ mọi thứ, kể cả khi tường lửa và dịch vụ đều hoạt động bình thường.

# Từ máy của bạn
nslookup TARGET_HOSTNAME

# Cách dùng PowerShell
Resolve-DnsName TARGET_HOSTNAME

IP sai hoặc phân giải thất bại? Hãy sửa bản ghi DNS, hoặc kết nối trực tiếp qua địa chỉ IP thay vì hostname. Trên máy đích, xóa cache và đăng ký lại:

ipconfig /flushdns
ipconfig /registerdns

Bước 6 — Bật WinRM Nếu Bạn Đang Dùng PowerShell Remoting

PowerShell remoting và WMI có tầng vận chuyển riêng nằm trên RPC. Nếu dịch vụ Windows Remote Management bị dừng, bạn vẫn nhận được Error 1722 dù RPC cơ bản đang hoạt động tốt.

# Cách nhanh nhất — chạy trên máy đích
winrm quickconfig

# Hoặc bật PS remoting bắt buộc
Enable-PSRemoting -Force

Xác Nhận Kết Quả

Quay lại máy trạm của bạn, xác nhận mọi thứ đã hoạt động:

# Kiểm tra cổng 135
Test-NetConnection -ComputerName TARGET_HOSTNAME -Port 135

# Truy vấn một dịch vụ từ xa (Spooler luôn có mặt)
Get-Service -ComputerName TARGET_HOSTNAME -Name Spooler

# Lệnh tương đương kiểu cũ
sc \\TARGET_HOSTNAME query Spooler

Get-Service trả về kết quả mà không báo lỗi? RPC đã hoạt động. Bạn cũng có thể mở services.msc → chuột phải vào node gốc → Connect to another computer → nhập hostname. Danh sách dịch vụ tải được nghĩa là bạn đã xong.

Checklist Nhanh Cho Môi Trường Production

  • Máy đích có kết nối được không? — ping, rồi Test-NetConnection -Port 135
  • Dịch vụ RPC đang chạy?sc query RpcSssc query RpcEptMapper
  • Quy tắc tường lửa đã bật? — nhóm Remote Service Management
  • Network profile đúng chưa? — Domain hoặc Private, không bao giờ Public trên adapter nội bộ
  • DNS phân giải đúng chưa?nslookup TARGET_HOSTNAME phải trả về IP đúng
  • VPN hoặc thay đổi mạng gần đây? — kết nối lại VPN hoặc khởi động lại adapter

Nếu Máy Đích Nằm Ở Subnet Khác

Trước khi đổ lỗi cho RPC, hãy loại trừ các vấn đề định tuyến cơ bản. Khi máy trạm quản lý của bạn nằm ở một VLAN khác với máy đích — phổ biến trong môi trường server phân vùng — bạn cần xác nhận rằng định tuyến IP thực sự đã được thiết lập. Tôi dùng Subnet Calculator trên ToolCraft để kiểm tra nhanh các dải CIDR và xác nhận cả hai máy cùng subnet hoặc đã có route giữa chúng. Chạy hoàn toàn trên trình duyệt, không có dữ liệu nào rời khỏi máy bạn.

Phòng Ngừa

  • Đẩy một GPO để áp đặt quy tắc tường lửa Remote Service ManagementWMI cho tất cả server — cấu hình cục bộ có thể bị trôi dạt; policy thì không
  • Đặt cảnh báo cho trạng thái dịch vụ RpcSsRpcEptMapper trong hệ thống giám sát — cả hai dịch vụ bị dừng là tác dụng phụ đã biết của việc thay đổi service dependency sai
  • Nếu tường lửa không thể xử lý dải cổng động, hãy cố định RPC vào một dải cố định: đặt HKLM\Software\Microsoft\Rpc\Internet với dải cổng xác định (ví dụ: 50000–50100) và chỉ mở những cổng đó
  • Ghi lại network profile dự kiến cho từng network adapter trên server — một NIC âm thầm chuyển sang Public là nguyên nhân gây lỗi định kỳ rất khó phát hiện

Related Error Notes