圖形介面操作雖直觀,但遇到服務管理單元 (services.msc) 無法開啟、使用者亂改 IP 導致衝突等棘手問題時,Windows 內建命令列工具 sc 與 regsvr32 能發揮「降維打擊」效果。本文實戰演示兩大經典場景。
背景: 為防止非法用戶利用預設隱藏共享 (C$, ADMIN$, IPC$) 攻擊或竊取隱私,需停用 Server (LanmanServer) 服務。但有時 services.msc 無法開啟或卡死,無法透過 GUI 操作。
解決方案:sc config 直接修改服務啟動類型
cmd → Ctrl+Shift+Enter)。sc config lanmanserver start= disabledstart= 後必須有一個空格)[SC] ChangeServiceConfig SUCCESS 即成功。net view \\localhost 或檢查「共用資料夾」→「共用資源」,隱藏共享 (帶 $ 尾碼) 應已全部消失。補充: sc (Service Control) 可查詢、啟動、停止、修改、刪除服務,功能完整對標 GUI,且可腳本化批次處理多台機器。
背景: 企業環境統一配置靜態 IP,但普通用戶遇網路問題即亂改 TCP/IP 設定,導致 IP 衝突頻發。
解決方案:反註冊網路介面相關 DLL,隱藏「網路連線」屬性頁
「網路連線」屬性頁 (含 TCP/IP 設定) 依賴三個系統 DLL:
netshell.dll — 網路殼層擴充netman.dll — 網路連線管理netcfgx.dll — 網路設定 COM 物件這些 DLL 預設向系統註冊。使用 regsvr32 /u 反註冊後,用戶嘗試開啟屬性頁將失敗 (找不到類別工廠),從而無法修改 IP。
regsvr32 /u netshell.dll
regsvr32 /u netcfgx.dll
regsvr32 /u netman.dll
執行後嘗試開啟「網路連線」屬性 → 系統報錯無法顯示 → 用戶無法修改 IP 設定 → IP 衝突徹底杜絕。
regsvr32 netshell.dll
regsvr32 netcfgx.dll
regsvr32 netman.dll
重新註冊即恢復正常管理介面。
netsh interface ip set address) 或重新註冊 DLL 才能操作。User Configuration → Policies → Administrative Templates → Network → Network Connections → Prohibit access to properties of LAN connection。| 指令 | 用途 | 典型參數 |
|---|---|---|
netsh winsock reset | 重置 Winsock 目錄 (修復「撥號通、IP 通、網頁不通」) | — |
netsh int ip reset | 重置 TCP/IP 協定棧 (相當於重裝 TCP/IP) | — |
ipconfig /release && ipconfig /renew | 釋放/續約 DHCP 租約 | — |
ipconfig /flushdns | 清除本地 DNS 快取 | — |
nbtstat -R / -RR | 清除/重新註冊 NetBIOS 名稱快取 | -R (本地), -RR (伺服器) |
arp -d * | 清除全部 ARP 快取 | * 代表全部 |
route -f | 清除路由表 (重開機後自動重建) | -f |