把自動獲取到的IP修改為手動靜態IP,一般的做法是把自動獲取到的IP、dns等資訊,直接填入網絡卡的tcp/ipv4屬性上,或者使用需要每個單獨填入IP的批處理進行分別處理,不過這兩種辦法都做不到完全自動化,通用化,部署簡單化。
因為一旦遇到需要大批量設靜態IP情況,就會顯得很費時費力了,所以很有必要摸索出一個滿足自動化,通用化,部署簡單化的批處理來。
工具/原料
記事本
電腦
方法/步驟
開啟記事本
複製以下內容
@echo off
ipconfig>ipc.txt
netsh interface ip show address>gwc.txt
for /f "delims=: tokens=2" %%a in ('find "IPv4 地址" ipc.txt') do set IP=%%a
for /f "delims=: tokens=2" %%b in ('find "子網掩碼" ipc.txt') do set mask=%%b
for /f "delims=: tokens=2" %%i in ('find "預設閘道器" gwc.txt') do set gw=%%i
netsh interface ip set address "本地連線" static %IP% %mask% %gw% 0
netsh interface ip set dns "本地連線" static 首DNS primary
netsh interface ip add dns "本地連線" 次DNS
del ipc.txt
del gwc.txt
pause
------------------------
注:需要修改地方有兩個,那就是首DNS和次DNS,這個根據你電腦實際的DNS進行修改。
然後另存為bat檔案,記得儲存型別為所有檔案。
執行bat檔案就可以使用了。當bat檔案執行完成後,就會提示“請按任意鍵繼續...”,按任意鍵就可以退出。這裡就表示已經把自動獲取的IP自動轉化為靜態IP。
以下情況,執行此bat檔案會出錯:
1、有多個網絡卡或者網路介面卡;
2、連線網路的網絡卡名字不叫“本地連線”而是叫做“本地連線 2”或“本地連線 3”等。(執行bat檔案時會提示找不到元素)。
解決辦法:
第一情況,在執行之前,把除了需要設定靜態IP網絡卡外的網絡卡禁用掉,完成後,再啟用被禁用的網絡卡;
第二種情況、如果網絡卡的名字叫做“本地連線 2”,那就把批處理的“本地連線”改為“本地連線 2”,網絡卡的名字叫什麼,就把批處理“本地連線”改成什麼。
在已經設定好手動DNS或者新舊DNS不一致情況下,執行該bat檔案會提示“可能會提示配置的DNS伺服器不正確或不存在” 不過沒關係,bat檔案新的DNS會覆蓋電腦上舊的DNS,可忽略掉此錯誤。
注意事項
1、有多個網絡卡或者網路介面卡。
2、連線網路的網絡卡的名字不叫“本地連線”叫做“本地連線 2”或“本地連線 3”等(執行bat時會提示找不到元素)。
3、不同版本的windows網絡卡的顯示引數會不一樣。(例如winxp和win7網絡卡的顯示引數一樣,預設都是"IPv4 地址", "子網掩碼","預設閘道器","本地連線"。)