Windows バッチファイルで簡単に Wi-Fi 接続する方法

はじめに

新しい社員が入社した際や、複数の拠点でネットワークを利用する場合、Wi-Fi 接続の手順を個別に教えるのは時間と労力がかかります。そこで、バッチファイルを用意しておけば、IT 部門は一度設定したファイルを複数のデバイスに簡単に適用でき、運用が効率化されます。本記事では、Wi-Fi に自動で接続するバッチファイルの作成方法について紹介します。

Wi-Fi プロファイルの作成

Wi-Fi プロファイルとは?
Wi-Fi プロファイルは、特定の Wi-Fi ネットワークに接続するための設定を保存するファイルです。このプロファイルには、SSID(ネットワーク名)、パスワード、セキュリティタイプ(WPA2 など)などの情報が含まれており、一度設定すれば、手動で入力することなく自動的にネットワークに接続できます。[1]Windows 10 では、Wi-Fi … Continue reading


プロファイル作成手順
次に、Wi-Fi プロファイルを XML ファイルとして作成する手順を説明します。このファイルは、バッチファイルと連携させて自動的に Wi-Fi 接続を行うために使用します。以下は、SSID「mytech」に接続するための XML ファイルの例です。

<?xml version="1.0"?>
<WLANProfile xmlns="http://www.microsoft.com/networking/WLAN/profile/v1">
    <name>mytech</name>
    <SSIDConfig>
        <SSID>
            <name>mytech</name>
        </SSID>
    </SSIDConfig>
    <connectionType>ESS</connectionType>
    <connectionMode>auto</connectionMode>
    <MSM>
        <security>
            <authEncryption>
                <authentication>WPA2PSK</authentication>
                <encryption>AES</encryption>
                <useOneX>false</useOneX>
            </authEncryption>
            <sharedKey>
                <keyType>passPhrase</keyType>
                <protected>false</protected>
                <keyMaterial>password</keyMaterial>
            </sharedKey>
        </security>
    </MSM>
</WLANProfile>

この XML ファイルを作成し、任意の名前(例:「WiFiProfile.xml」)で保存します。バッチファイルと同じフォルダに保存するのが一般的です。

バッチファイルの作成と設定

バッチファイルは、複数のコマンドを順次実行するスクリプトファイルで、拡張子は「.bat」です。これにより、手動でコマンドを入力する手間を省き、設定作業を自動化できます。以下は、Wi-Fi プロファイルを読み込み、接続するための基本的なバッチファイルの例です。

@echo off
netsh wlan add profile filename="WiFiProfile.xml" user=all
netsh wlan connect name="mytech"

各コマンドの説明:

  • @echo off:コマンドの実行結果を表示しないようにします。
  • netsh wlan add profile filename="WiFiProfile.xml" user=all:作成した XML ファイルを Windows に読み込みます。
  • netsh wlan connect name="mytech":指定された SSID に接続します。

応用編:接続確認機能とメッセージ表示の追加

この基本的なバッチファイルに、以下の機能を追加することで、接続確認とユーザーへのメッセージが表示できます。

  • 接続前の確認メッセージ:
    ユーザーに対して、SSID「mytech」に接続するかどうかを確認するメッセージを表示し、エンターキーで処理を進めます。

  • 接続中メッセージ:
    接続中に「接続中…」というメッセージを表示して、処理が進行中であることをユーザーに知らせます。

  • 接続確認とタイムアウト処理:
    Wi-Fi 接続が成功するかどうかを30秒間確認し、接続が成功した場合は成功メッセージを表示、失敗した場合はエラーメッセージを表示します。

改良版バッチファイルの例

@echo off
echo SSID: mytech に接続します。
echo 接続してもよろしいですか?続行するにはEnterキーを押してください...
pause > nul

echo 接続中... しばらくお待ちください。
netsh wlan add profile filename="WiFiProfile.xml" user=all
netsh wlan connect name="mytech"

REM 30秒間接続を確認するループ
set /a count=0
:CHECK_CONNECTION
set /a count+=1
ping -n 2 127.0.0.1 > nul
netsh wlan show interfaces | findstr /C:"mytech" > nul
if %errorlevel%==0 (
    echo 正常に接続しました。
    echo 終了するにはEnterキーを押してください...
    pause > nul
    exit /b 0
) else (
    if %count% geq 15 (
        echo 接続に失敗しました。時間内に接続できませんでした。
        echo 終了するにはEnterキーを押してください...
        pause > nul
        exit /b 1
    ) else (
        goto CHECK_CONNECTION
    )
)

実際の活用方法

企業環境では、異なる部署やフロアごとに異なる Wi-Fi ネットワークがある場合、移動する際にネットワークを迅速に切り替えることが求められます。また、特定の会議室やワークスペースで専用の SSID を利用する場合にも、バッチファイルを活用することで、簡単に接続先を管理できます。

  • 例1:社内で移動する際、各フロアやエリアに設定された SSID に迅速に接続できるように、部署ごとのバッチファイルを用意しておきます。

  • 例2:会議やプレゼンテーションの際に専用ネットワークを使用する場合、事前に設定したバッチファイルでスムーズに接続を切り替えられます。

セキュリティ上の注意点

パスワードを平文で扱うリスク

バッチファイルに Wi-Fi パスワードを平文で記載することには、セキュリティ上のリスクがあります。例えば、バッチファイルが他者にアクセスされると、Wi-Fi パスワードがそのまま見られてしまいます。これにより、ネットワークの不正利用や情報漏洩のリスクが高まります。

セキュリティリスクを管理するためのアドバイス
これらのリスクを軽減するためには、次のような対策を講じることが重要です。

  • バッチファイルの保護:
    バッチファイルを保存する場所に十分なセキュリティを施すことが大切です。パスワードで保護されたフォルダや、暗号化されたドライブに保存することで、アクセスを制限できます。


  • 限定的な配布:
    バッチファイルは、必要最低限のユーザーにのみ配布するようにし、不特定多数がアクセスできないようにします。特に企業環境では、特定の社員のみが利用できるようにアクセス権限を管理することが重要です。


  • 定期的なパスワード変更:
    パスワードが漏洩するリスクを軽減するために、定期的に Wi-Fi ネットワークのパスワードを変更し、バッチファイルも更新する習慣を持つことが推奨されます。これにより、古いパスワードが漏洩しても、被害を最小限に抑えることができます。

参考リンク

以上

脚注

脚注
1Windows 10 では、Wi-Fi プロファイルを利用して、特定のネットワークに接続する設定を保存します。これにより、ネットワークに再接続する際の手順が簡略化され、特に複数のデバイスやユーザーが同じネットワークに接続する場合に便利です。