Windowsを複数ネットワークに繋ぎかえるとき、しかも片方がDHCPでの自動割り振りで、もう片方が固定でIPアドレスを指定しないいけない場合。
いちいちネットワークインターフェースのプロパティからIPアドレスを変更するのは大変に面倒な作業である。
調べてみたらコマンドラインでも変更はできるとか。
ならばバッチファイルで手軽に変えられる。
その経緯を示す。
対象OSはWindows 7。xpだと動かないかも。
結論
バッチファイル例を示す。
拡張子.batの適当な名前で保存し、必要なときに実行すればよい。
固定IPアドレスを設定するとき
IPアドレスを固定で指定したい場合。
インターフェース名: “ローカル エリア接続”
IPアドレス: 192.168.0.100
ネットマスク: 255.255.255.0
デフォルトゲートウェイ: 192.168.0.1
DNS: 192.168.0.1
@echo off
netsh interface ip set address "ローカル エリア接続" static 192.168.0.100 255.255.255.0 192.168.0.1
netsh interface ip set dns "ローカル エリア接続" static 172.16.1.11 primary
ipconfig
pause
DHCPで設定するとき。
インターフェース名: “ローカル エリア接続”
@echo off
netsh interface ip set address "ローカル エリア接続" dhcp
netsh interface ip set dns "ローカル エリア接続" dhcp
ipconfig
pause
書式
netsh interface ip setで設定する。
オプションは以下の通り、netsh interface ip setだけで実行すればずらずらと表示される。
C:¥>netsh interface ip set
使用できるコマンドは次のとおりです:
このコンテキストのコマンド:
set address - インターフェイスに IP アドレスまたはデフォルト ゲートウェイを設
定します。
set compartment - コンパートメント構成パラメーターを変更します。
set dnsservers - DNS サーバーのモードおよびアドレスを設定します。
set dynamicportrange - 動的ポート割り当てに使用するポートの範囲を変更します。
set global - グローバル構成一般パラメーターを変更します。
set interface - IP のインターフェイス構成パラメーターを変更します。
set neighbors - 近隣アドレスを設定します。
set route - ルートのパラメーターを変更します。
set subinterface - サブインターフェイス構成パラメーターを変更します。
set winsservers - WINS サーバーのモードおよびアドレスを設定します。
このうち、よく使うのはaddress, dnsserverだろう。
なおdnsserverはdnsでも大丈夫のようだ。
address設定方法については;
使用法: set address [name=]<文字列>
[[source=]dhcp|static]
[[address=][/<整数>] [[mask=]]
[[gateway=]|none [gwmetric=]<整数>]
[[type=]unicast|anycast]
[[subinterface=]<文字列>]
[[store=]active|persistent]
パラメーター:
タグ 値
name - インターフェイス名またはインデックスです。
source - 次のいずれかの値を指定します:
dhcp: 指定したインターフェイスの IP アドレスの構成で
DHCP を使用できるようにします。
static: 指定したインターフェイスの IP アドレスの構成で
DHCP を使用できないようにします。アドレスまたは
ゲートウェイが構成されている場合、この値を指定
する必要があります。
address - 追加または変更する IPv4 アドレスです。
サブネット プレフィックス長を後に指定することもできます。
mask - 指定した IP アドレスの IP サブネット マスクです。
gateway - 次のいずれかの値を指定します:
: 設定している静的 IP アドレスに対する特定
のデフォルト ゲートウェイです。
none: デフォルト ゲートウェイは設定されません。
これは既定値です。
以上