萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 作業系統 >  >> Windows 7 教學

筆電 Win7 系統批次檔 (.bat) 一鍵切換固定 IP/動態 DHCP,跨網路環境零痛切換

前言

筆電在公司 (靜態 IP)、家裡 (DHCP)、客戶端 (不同靜態 IP) 往返頻繁,手動切換 IPv4 設定極度繁瑣。批次檔 (.bat) 封裝 netsh 指令,實現「雙擊即切換」零門檻自動化。本文提供可直接修改參數的通用腳本範本。

建立切換腳本

  1. 桌面右鍵 →「新增」→「文字文件」→ 命名為 SetIP_Company.bat (副檔名 .bat)。
  2. 右鍵編輯,貼入以下內容並修改參數:
@echo off
chcp 65001 >nul
rem === 使用者設定區開始 ===
set "IFACE=乙太網路"          &rem 介面名稱:netsh interface show interface 查詢確認 (常見: 乙太網路 / Wi-Fi / 區域連線)
set "IP=192.168.1.100"         &rem 目標靜態 IP
set "MASK=255.255.255.0"       &rem 子網路遮罩
set "GW=192.168.1.1"           &rem 預設閘道
set "DNS1=192.168.1.1"         &rem 慣用 DNS
set "DNS2=8.8.8.8"             &rem 替代 DNS
rem === 使用者設定區結束 ===

echo 正在設定 %IFACE% 為靜態 IP %IP% ...
netsh interface ip set address name="%IFACE%" source=static address=%IP% mask=%MASK% gateway=%GW% gwmetric=1
netsh interface ip set dns name="%IFACE%" source=static address=%DNS1% register=primary validate=no
netsh interface ip add dns name="%IFACE%" address=%DNS2% index=2 validate=no
echo 設定完成,目前 IP 狀態:
ipconfig | findstr /i "%IFACE%\|IPv4\|Default Gateway\|DNS"
pause
建立文字文件
批次檔內容範例
  1. 同理建立 SetIP_Home_DHCP.bat 切回自動取得:
@echo off
chcp 65001 >nul
set "IFACE=Wi-Fi"
netsh interface ip set address name="%IFACE%" source=dhcp
netsh interface ip set dns name="%IFACE%" source=dhcp
echo 已切換為 DHCP 自動取得 IP
ipconfig | findstr /i "%IFACE%\|IPv4\|Default Gateway\|DNS"
pause

關鍵參數取得方法

  • 介面名稱:netsh interface show interface → 觀察「介面名稱」欄 (中文環境常為「乙太網路」、「Wi-Fi」、「區域連線」)。
  • 需以系統管理員身分執行:右鍵 .bat →「以系統管理員身分執行」,或建立捷徑 → 內容 → 進階 → 勾選「以系統管理員身分執行」。

進階:單一腳本互動式選單

@echo off
chcp 65001 >nul
echo ========== IP 切換選單 ==========
echo 1. 公司靜態 IP (192.168.1.100)
echo 2. 家裡 DHCP
echo 3. 客戶端 A 靜態 IP (10.0.0.50)
echo 0. 結束
set /p choice=請輸入選項:
if "%choice%"=="1" call :SET_STATIC "乙太網路" "192.168.1.100" "255.255.255.0" "192.168.1.1" "192.168.1.1" "8.8.8.8"
if "%choice%"=="2" call :SET_DHCP "Wi-Fi"
if "%choice%"=="3" call :SET_STATIC "乙太網路" "10.0.0.50" "255.255.0.0" "10.0.0.1" "10.0.0.1" "114.114.114.114"
goto :EOF

:SET_STATIC
netsh interface ip set address name="%1" source=static address=%2 mask=%3 gateway=%4 gwmetric=1
netsh interface ip set dns name="%1" source=static address=%5 register=primary validate=no
netsh interface ip add dns name="%1" address=%6 index=2 validate=no
echo 完成: %1 = %2
goto :EOF

:SET_DHCP
netsh interface ip set address name="%1" source=dhcp
netsh interface ip set dns name="%1" source=dhcp
echo 完成: %1 = DHCP
goto :EOF

結語

批次檔 + netsh 將繁瑣網路切換轉化為「雙擊/選單選擇」單一動作。建議將常用環境腳本置於桌面/工作列/啟動資料夾,配合「以系統管理員身分執行」捷徑屬性,實現真正的一鍵切換。同邏輯適用於 Win10/11,命令完全相容。

copyright © 萬盛學電腦網 all rights reserved