えー、久々のWSHネタで、需要が少なそうなスクリプト。Win2KとかXPとかでネットワーク設定を構成する「netsh」ってコマンドがあるんだけども、これが設定のダンプやリストアができるので、ちょこちょこっとTCP/IPの設定切り替えたりするのに割と便利。
例えば「netsh interface dump」ってコマンドラインから実行すると、こんな感じで表示される。
C:\Documents and Settings\dara-j>netsh interface dump #======================== # インターフェイス構成 #======================== pushd interface reset all popd # インターフェイス構成の最後 # ---------------------------------- # インターフェイス IP 構成 # ---------------------------------- pushd interface ip # "ローカル エリア接続" のインターフェイス IP 構成 set address name = "ローカル エリア接続" source = dhcp set dns name = "ローカル エリア接続" source = dhcp set wins name = "ローカル エリア接続" source = dhcp popd # インターフェイス IP 構成の最後 C:\Documents and Settings\dara-j>この例はシンプルなDHCP設定の状態を示している。手動でIP設定をしていると、こんな感じ。(IP構成の部分のみの抜粋)
# ---------------------------------- # インターフェイス IP 構成 # ---------------------------------- pushd interface ip # "ローカル エリア接続" のインターフェイス IP 構成 set address name = "ローカル エリア接続" source = static addr = 192.168.0.100 ma sk = 255.255.255.0 set address name = "ローカル エリア接続" gateway = 192.168.0.1 gwmetric = 2 set dns name = "ローカル エリア接続" source = static addr = 192.168.0.1 set wins name = "ローカル エリア接続" source = static addr = none
んで、この一連の出力は、netshでネットワーク構成を行うバッチコマンドになっているので、これをテキストファイルに保存しておいて、「netsh exec ファイル名」なんてすると、構成をリストアできる。
これだけでも十分実用的なのだが、最近3〜4種類のIP設定を頻繁に切り替える需要がdara-j的に発生したので、いちいちファイル名をタイプするのが面倒くさくなってきたのでスクリプトを書いてみた。
セコメントをする