本記事ではネットワーク管理者必須のWindows10/11用フリーソフト「ExPing」を紹介します。「ExPing」は、同時に複数のサーバーやPCへpingを送信できるソフトで起動までの簡便さが最大のメリットです。本記事では、起動後すぐに自動実行する方法も紹介します。サーバー管理者向けに「ExPing」と同等ソフトのLinux用「fping」も比較し紹介します。
本記事の読者層は以下の方を想定しています。
- Pingを複数IPへ同時実行したい方
- Windows10/11で「ExPing」を自動実行したい方
- Windows「Exping」とLinuxソフト「fping」の比較して知りたい方
Pingとは
サーバー初心者が知っておくと便利なネットワークコマンドの1つとして「pingコマンド」があります。
Pingコマンドは、Linuxの「Termnal」他に、Windowsの「MS-DOS」、macOSの「Termnal」でも利用可能で以下の特徴があります。
Pingとは
- ①「相手先とホストが通信ができているか」
- ②「応答時間はどのくらいか」
を確認するためのコマンドです。
たとえば、pingコマンドの後にホスト名「www.google.co.jp」を入力すると、そのホストの応答を調べることができます。
例:Pingコマンド
$ ping www.google.co.jp
64 bytes from nrt12s35-in-f3.1e100.net (142.250.196.99): icmp_seq=1 ttl=115 time=10.9 ms
64 bytes from nrt12s35-in-f3.1e100.net (142.250.196.99): icmp_seq=2 ttl=115 time=7.09 ms
この仕組みは、まずホストにICMPプロトコルの「ECHOリクエスト」というパケット (icmp) を相手に送ります。
この「ECHOリクエスト」が相手から戻ってくれば、ネットワーク経路に問題なくホストが生きていると確認できます。
この戻ってくるまでの時間は「ラウンドトリップ」と呼ばれる応答時間(time)で表示されます。
このラウンドトリップはping値とも呼ばれています。
一般的に応答時間が50ms以下であれば、ネット環境に問題がないと言えます。(上記では10.9 ms< 50 msでOK)
pingコマンド実行後は連続して実行されるため、中断には「Ctrl+C」を押せば強制終了します。
Pingコマンドでは、1つのホストに対して確認することができますが、
- ①複数のホストに対して確認することが難しい
- ②プロンプトを出してPingコマンドと相手先を入力が手間
といった煩わしさがあります
このような問題を解決できるのが、次に示すWindowsのソフト「ExPing」です。
ExPingとは
ExPingの特徴
「ping」は1つのIPアドレスに対しての応答確認したが、「Exping」をつかうと複数IPアドレスの応答確認ができます。
「ping」と「Exping」の違いは以下の通りです。
- 1つのIPアドレスに対しての応答確認
- Linux/macOS/Windowsのターミナル
- 複数のIPアドレスに対してpingを実行
- Windows10やWindows11
ExPingは、いくつかのアドレス先を指定しておくことで、同時にPing先のネットワークの状態を知ることができ、NW(ネットワーク)エンジニアにとって重宝するものです。
さらに、ExPingには以下の3つの特徴があります。
ExPingの3つの特徴
- 複数の端末を対象として「Pingを実行」。
- 複数の端末を対象として「TraceRouteを実行」。
- 一定時間ごとの「Ping発行による恒常的な監視」。
つぎにExPingについて解説していきます。
ExPingのダウンロード
まず、下記のURLへアクセスして最新版のExPingをダウンロードください。
2022年11月の時点での最新版はExPing Version 1.33です。(実際には2001年からの更新はありません。開発は止まっていると思われます。)
使用可能OS:Windows 10/11でも問題なく動くことは確認済みです。
ダウンロードしたZIPファイルの解凍後ファイルは以下の通りです。
解凍ソフトはWindows標準(右クリックから「解凍」選択)でも良いし、無料のRARソフトでも解凍可能です。
解凍ファイル内容
- Exping.def
- Exping.exe
- ExPing.ini
- ExPint.txt
20年以上前に開発されたソフトのため、知名度が高いくネットワークエンジニアに重宝されているソフトです。
Pingには脆弱性の問題が取り沙汰されていますが、Expingの脆弱性の問題は今のところ議論されてはいません。
ExPingの使い方
ExPingには、基本的に以下の3つの使い方ができます。
ExPingの使い方
- Ping実行
- TraceRoute実行
- 範囲指定Ping実行
まず、以下それぞれの使い方を説明致します。
使い方①:Ping実行
Ping先の入力
解凍後に同一フォルダにできる「ExPing.def」というファイル内にPing先を書けばPingを飛ばせるようになります。
まずは、「ExPing.def」ファイルをテキストエディタで開いてみて下さい。
いくつかURLアドレスが表記されていると思います。こちらにPing先を記載下さい。
Pingの実行
STEP1 exping.exeファイルをクリックし立ち上げ後、以下のスクリーンのようになります。
この「対象」に現れる表記はExping.def内の記載がそのまま表記されます。
内容は、DNS名ならびに宛先をコメントで記載します。
STEP2 実行には、メニュー→「機能」→「ping実行」を選択クリック。
実際のping結果は以下のようになります。
○はPingによるレスポンスがかえって来て、Timeには応答時間であるping値が記載されています。
×NGと表示されると、IPは表示されないまま、Unknown hostとして応答時間の返答がかえって来ないものもあります。
設定の変更方法
環境タブを開くと以下の初期設定値が記録されています。
- 繰り返し回数:3回
- 実行間隔: 1000ミリ秒
- ブロックサイズ: 64bit
- タイムアウト: 1000s (断時間)
- TTL: 255
となっています。
「ExPing.def.#CONFIG#」内の設定を変更することで、立ち上げ後に変更した値で利用可能です。
PingCount=3 (繰り返し回数)
PingWait=1000 (実行間隔)
Sorted=1(繰り返し順序:ソートしない)
TimeOut=1000 (タイムアウト)
BlockSize=64 (ブロックサイズ)
TimeToLive=255 (TTL)
Parmanent=0 (「定期的に実行する」にチェック)
Interval=5 (分間隔)
MaxHops=20(最大HOPS数)
ResolveHostName=1(「ホスト名の解決を行う」にチェック)
ここで、「TTL(Time To Live)」は、相手側からこちらへpingの応答が戻ってくるまでに何台のルータを通過できるかの最大数値(ホップ数)である。初期値では255台が可能である。
定期的のボタンをチェックすると等間隔で無限にpingを飛ばせます。
使い方②:traceroute実行(通信経路の確認)
トレースルートとは、通信経路を確認するツールです。たとえば、googleのDNS [8,8,8,8]への経路を調べたいときに、Linuxコマンドプロンプト上であれば、以下のように入力することで経路を調べてくれます。
実行例
$ traceroute % traceroute 8.8.8.8
traceroute to 8.8.8.8 (8.8.8.8), 64 hops max, 52 byte packets
1 buffalo.setup (192.168.10.254) 107.115 ms 3.816 ms 3.712 ms
9 * * *
10 dns.google (8.8.8.8) 18.185 ms 13.582 ms 15.791 ms
これをExpingでできるようになっています。
使い方③:範囲指定Ping実行
ExPingにおいて、メニュー→「機能」→「範囲指定ping実行」を選択クリック。
すると以下のような範囲指定Pingのメニューが出てきます。
ここで、上に開始IPアドレスと終了IPアドレスを入力してOKを押すだけで範囲内のIPでPing処理してくれます。
停止するときには中断のアイコンを押してください。
例) 192.168.12.1-254
実行結果は以下のようになります。
ExPingの結果のログを保存方法
これらの結果はログファイルにてExcel形式で保存ができます。
知って得するExPingの自動実行の方法
自動実行方法を説明する前に、ExPingでのコマンド実行方法について解説します。
コマンドプロンプト上でのExPingの実行方法
コマンドプロンプトやPowerShell等からExPingを起動したい場合は解凍先のフォルダへ移動して以下のコマンドを入力するとWindows上にExPingアプリが立ち上がり自動的にPingが画面走ります。
$ ./ExPing.exe -R
現在利用可能な対象先
現在利用可能なPingの対象先はPing結果で「OK」と表示されます。
ただ、利用できる対象先は現在のDNSアドレスが変更されているのかほとんどが「NG」という結果でPing応答がかえってきません。
確認した限りではPing応答の返答があるのは以下の4つだけでした。
Ping応答が帰ってくるリスト
- (1) 理化学研究所
- (2) (株)インターネットイニシアティブ
- (3) (株)ドリームレインインターネット
- (4) Ring Server Project
このため、ExPing.def内のPing先のテキストは以下のように変更してみるのが良いかと思います。
' (記述例)
core.ring.gr.jp Ring Server Project
ftp.iij.ad.jp (株)インターネットイニシアティブ
ftp.riken.go.jp 理化学研究所
ftp.dti.ad.jp (株)ドリームトレインインターネット
ExPingの自動実行の方法
設定環境で、すぐに自動実行したい場合は、テキストファイルで以下の記述を入力後、「ping.bat」として保存下さい。できた「ping.bat」ファイルをクリックするとExpingが起動・自動実行されます。
ExPing.exe -R
Linuxで使えるExpingの代替えソフト
fping
「ExPing」のように利用できるLinuxソフトとして、「fping」があります。
Expingとfpingの特徴を以下に比較しておきます。
- 複数のIPアドレスに対してPingを実行
- Windows10やWindows11
- 複数のIPアドレスに対してPingを実行
- Linux/macOS/Windowsのターミナル
fpingはLinuxターミナルでインストールが可能です。
$ sudo apt-get install fping
異なる2つのIPアドレスへPing
また、fpingを利用すると、以下のように複数のIPアドレス(IPアドレス1,IPアドエス2)の入力も可能です。
$ fping -s -g IPアドレス1 IPアドレス2
実行例は以下の通りです。異なる二つのIPアドレスを叩くと結果がかえって来ます。
実行例1
% fping -s -g 192.168.12.1 192.168.12.2
192.168.12.1 is alive
192.168.12.2 is alive
2 targets
2 alive
0 unreachable
0 unknown addresses
0 timeouts (waiting for response)
2 ICMP Echos sent
2 ICMP Echo Replies received
0 other ICMP received
0.23 ms (min round trip time)
0.26 ms (avg round trip time)
0.30 ms (max round trip time)
0.011 sec (elapsed real time)
複数IPアドレスへのPing
複数IPアドレスを叩く際には、以下のように命令することで同時pingもできます。
実行例は以下の通りです。-aオプションを使い開始IPアドレスと終了IPアドレスを記載します。
実行例2
$ fping -s -g 開始IPドレス 終了IPアドレス
脆弱性への対応
Windowsのサーバー側で、セキュリティの要求がpingに対する応答が帰ってこず、タイムアウトする場合があります。
本記事のポイントは
- 本記事ではWindows版「ExPing」の利用方法を解説しました。
- バッチファイルを作成することでクリック一発で自動起動する設定の仕方を紹介しました。
- また、Linux版「fping」の利用方法についても解説しました。
次回の記事をご期待下さい。どうぞよろしくお願いいたします。
コメント