Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學

netsh指令實戰:一鍵切換固定IP/DHCP、DNS與多網路環境腳本自動化

編輯:XP 系統應用技巧

筆電在公司、家庭、客戶端、咖啡廳等多網路環境穿梭,手動修改IP、閘道、DNS極其繁瑣。Windows內建 netsh 指令支援腳本化網路設定,配合批次檔即可實現一鍵切換。本文提供即用型腳本範本與完整指令參考。

一、一鍵切換至固定IP腳本(儲存為 static_ip.cmd)

@echo off
rem 修改以下變數對應您的環境
set INTERFACE="區域連線"
set IP=192.168.1.100
set MASK=255.255.255.0
set GATEWAY=192.168.1.1
set DNS1=168.95.1.1
set DNS2=8.8.8.8

netsh interface ip set address %INTERFACE% static %IP% %MASK% %GATEWAY% 1
netsh interface ip set dns %INTERFACE% static %DNS1% primary
netsh interface ip add dns %INTERFACE% %DNS2% index=2
echo 固定IP設定完成:%IP%
pause

關鍵說明:

  • %INTERFACE%:對應「網路連線」視窗中的連線名稱(預設為「區域連線」或「乙太網路」),請以實際名稱替換雙引號內容。
  • 最後一個參數 1 為躍點數,單一網卡通常為1。
  • index=2 指定第二組DNS順序。

二、一鍵切換至DHCP自動取得腳本(儲存為 dhcp_ip.cmd)

@echo off
set INTERFACE="區域連線"
netsh interface ip set address %INTERFACE% dhcp
netsh interface ip set dns %INTERFACE% dhcp
echo 已切換為DHCP自動取得IP與DNS
pause

三、netsh 進階指令速查表

功能指令範例
顯示所有介面目前IP設定netsh interface ip show config
刪除所有閘道netsh interface ip delete address "區域連線" gateway=all
刪除所有DNSnetsh interface ip delete dns "區域連線" all
新增靜態IP(保留原有)netsh interface ip add address "區域連線" 10.0.0.5 255.255.255.0
匯出網路設定至檔案netsh -c interface dump > netcfg.txt
從檔案匯入網路設定netsh -f netcfg.txt

四、常見問題排除

  • 「指定的介面無效」:啟動「Remote Registry」服務(services.msc → Remote Registry → 啟動類型:自動 → 啟動)。
  • 需系統管理員權限:以系統管理員身分執行批次檔(右鍵 → 「以系統管理員身分執行」)。
  • 無線網卡介面名稱不同:用 netsh interface show interface 確認無線介面名(如「無線網路連線」),修改腳本變數。

五、進階應用:多環境選單式腳本

@echo off
:MENU
cls
echo ===== 網路環境快速切換 =====
echo 1. 公司固定IP
echo 2. 家庭DHCP
echo 3. 客戶端固定IP
echo 4. 顯示目前設定
echo 0. 離開
set /p CHOICE=請輸入選項:
if "%CHOICE%"=="1" call :COMPANY
if "%CHOICE%"=="2" call :HOME
if "%CHOICE%"=="3" call :CLIENT
if "%CHOICE%"=="4" netsh interface ip show config & pause & goto MENU
if "%CHOICE%"=="0" exit
goto MENU

:COMPANY
set INTERFACE="區域連線"
netsh interface ip set address %INTERFACE% static 192.168.10.50 255.255.255.0 192.168.10.254 1
netsh interface ip set dns %INTERFACE% static 192.168.10.1
goto MENU

:HOME
set INTERFACE="區域連線"
netsh interface ip set address %INTERFACE% dhcp
netsh interface ip set dns %INTERFACE% dhcp
goto MENU

:CLIENT
set INTERFACE="區域連線"
netsh interface ip set address %INTERFACE% static 10.10.20.100 255.255.255.0 10.10.20.1 1
netsh interface ip set dns %INTERFACE% static 10.10.20.1
netsh interface ip add dns %INTERFACE% 8.8.8.8 index=2
goto MENU

將上述腳本存為 net_switch.cmd,以系統管理員權限執行,即可輕鬆管理多網路環境。建議為每個腳本建立捷徑並指定熱鍵(右鍵捷徑 → 內容 → 快捷鍵),效率再升級。

Copyright © Windows教程網 All Rights Reserved