Windowsバッチファイル

バッチファイルでネットワーク操作を自動化する【ping・ipconfig・net use】

Windowsバッチファイル
記事内に広告が含まれています。

バッチファイルからネットワーク操作を自動化する方法を解説します。pingipconfignetstatnet use の使い方と、実務での活用例を紹介します。

pingコマンド:疎通確認を自動化する

@echo off

rem 基本的なpingによる疎通確認
ping 8.8.8.8

rem -n 1 で1回だけpingを送る(デフォルトは4回)
ping -n 1 8.8.8.8

rem 出力を捨てて終了コードだけ確認
ping -n 1 8.8.8.8 >nul 2>&1
if %errorlevel% equ 0 (
    echo 8.8.8.8に到達できます
) else (
    echo 8.8.8.8に到達できません
)

rem 複数のサーバーをチェック
for %%s in (192.168.1.1 192.168.1.2 192.168.1.3) do (
    ping -n 1 %%s >nul 2>&1
    if %errorlevel% equ 0 (
        echo [OK] %%s
    ) else (
        echo [NG] %%s
    )
)

ipconfigコマンド:IPアドレスを取得する

@echo off

rem IPアドレスの確認
ipconfig

rem DNSキャッシュのクリア(管理者権限が必要)
ipconfig /flushdns

rem DHCPアドレスの更新(管理者権限が必要)
rem ipconfig /release && ipconfig /renew

rem for /f でIPアドレスを変数に取得
for /f "tokens=2 delims=:" %%a in ('ipconfig ^| findstr /i "IPv4"') do (
    set IP=%%a
    rem 先頭のスペースを除去
    set IP=%IP: =%
)
echo このPCのIPアドレス: %IP%

netstatコマンド:接続状態とポートを確認する

@echo off

rem 全接続を表示
netstat -an

rem ESTABLISHED(確立済み接続)のみ表示
netstat -an | findstr "ESTABLISHED"

rem LISTENINGポートのみ表示(サーバーが待ち受けているポート)
netstat -an | findstr "LISTENING"

rem プロセスIDも表示(-o)
netstat -ano

rem 特定ポートを使っているプロセスを調べる(80番ポート)
netstat -ano | findstr ":80 "

net useコマンド:ネットワークドライブを接続する

@echo off

rem ネットワークドライブをZドライブとして接続
net use Z: \\fileserver\share /persistent:no
if %errorlevel% equ 0 (
    echo Zドライブの接続に成功しました
) else (
    echo 接続に失敗しました
    exit /b 1
)

rem 現在の接続一覧を表示
net use

rem Zドライブを切断
net use Z: /delete

rem ログイン情報付きで接続
net use Z: \\fileserver\share /user:DOMAIN\Username password

まとめ

  • ping -n 1 でerrorlevelを確認して疎通チェックを自動化できる
  • ipconfigとfor /fを組み合わせてIPアドレスを変数に取得できる
  • netstat -an | findstr で特定の接続状態やポートを絞り込める
  • net useでネットワークドライブの接続・切断を自動化できる

コメント

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