Windows10 IPアドレス切り替えバッチファイル

Windows
この記事は約4分で読めます。

Windows PCでIPアドレスをGUIで手動設定で固定IPにしたり、DHCP設定にしたりするためには、いちいち設定画面やネットワークアダプターの設定画面を開かないといけません。

設定する頻度がときどきならばいいのですが、頻繁に設定を行う場合は切り替えがとても面倒です。

設定変更にかかる時間はわずかな時間ではあるものの、ちょっとでも時短にしたいものです。

そんなときはバッチファイルを作成して運用する方法があります。

                 

IP固定化バッチ

 

IPアドレスやDNSをしていするファイルです。

コマンドプロンプトで動作するスクリプトをバッチファイル化しているだけです。

 

事前に以下のコマンドでお使いのPCのインターフェース名を確認しておきましょう。

 

C:\WINDOWS\system32>netsh interface ip show interface

Idx     Met         MTU          状態                 名前
---  ----------  ----------  ------------  ---------------------------
  1          75  4294967295  connected     Loopback Pseudo-Interface 1
  9          55        1500  disconnected  Wi-Fi
  8          25        1500  connected     イーサネット
  7          25        1500  disconnected  ローカル エリア接続* 9
 12          25        1500  disconnected  ローカル エリア接続* 10
 24        5000        1500  connected     vEthernet (Default Switch)

上記の結果から設定したいインターフェース名を控えておきます。

今回はイーサネットという名前のインターフェースを対象にします。

 

 

後は以下の内容を記述します。

@echo off
pause

set IFNAME="イーサネット"
set IPADDR=192.168.1.1
set MASK=255.255.255.0
set GW=192.168.1.250
set DNS1=8.8.8.8
set DNS2=1.1.1.1

netsh interface ipv4 set address name=%IFNAME% static %IPADDR% %MASK% %GW% 1
netsh interface ipv4 set dnsservers name=%IFNAME% static %DNS1% primary validate=no
netsh interface ipv4 add dnsservers name=%IFNAME% %DNS2% index=2 validate=no

timeout /nobreak 3

ipconfig /all

pause

 

 

解説を加えておきます。

set ~で変数を設定しています。

set IFNAME="イーサネット"  ←インターフェース名
set IPADDR=192.168.1.1  ←IPアドレス
set MASK=255.255.255.0  ←サブネットマスク
set GW=192.168.1.250   ←デフォルトゲートウェイ
set DNS1=8.8.8.8     ←DNS1(プライマリ)
set DNS2=1.1.1.1     ←DNS2(セカンダリ)

 

 

netsh interface ipv4 ~でIPアドレスとDNSサーバーを指定しています。

netsh interface ipv4 set address name=%IFNAME% static %IPADDR% %MASK% %GW% 1
netsh interface ipv4 set dnsservers name=%IFNAME% static %DNS1% primary validate=no
netsh interface ipv4 add dnsservers name=%IFNAME% %DNS2% index=2 validate=no

validate=noはDNSへの接続確認をしないというものです。

 

timeout /nobreak 3 は次のコマンド実行まで3秒待つという意味です。

ipconfig /all をすぐ実行してしまうとIPアドレスが変更される前の結果が表示されることがあったので、3秒Waitするようにしました。

 

 

DHCP化バッチ

 

IPアドレス設定をDHCPで行うバッチファイルです。

 

@echo off
pause

set IFNAME="イーサネット"
set DNS1=8.8.8.8
set DNS2=1.1.1.1

netsh interface ipv4 set address name=%IFNAME% DHCP
netsh interface ipv4 set dnsservers name=%IFNAME% static %DNS1% primary validate=no
netsh interface ipv4 add dnsservers name=%IFNAME% %DNS2% index=2 validate=no

timeout /nobreak 3

ipconfig /all

pause

 

 

 

どちらのバッチファイルも管理者権限での実行が必要になる点は注意です。

これで、運用が楽になりました。

コメント

タイトルとURLをコピーしました