MENU

この端末の管理アクセス先は?意外に難関な、IP捜査

法人などの常駐SEであったり、SIerとしてのプレ案件進める上で、顧客に問われる「この端末XのIPアドレスって、幾つだっけ?」という、調査依頼。
結構な頻度でこのやり取りが発生してしまうわけですが、情シス担当者でも、実は設定書も知らないことが結構あります。
しかし、モニターも無いうえ易々とコンソールへ触れられない、無線LANやサーバであっても、目前に機器のIPアドレスを設定書もなしに割り出すことは、困難な作業です。
「あれ?自分て、この程度のSEだっけ・・・?」などとめげずに、SEだからこそやれることを、探してみましょう。
そこで今回は、実践的な端末IPの調査方法をピックアップしてみました。

目次

ARP情報を繰り出し、IPを見つけよう

ARP(Address Resolution Protocol)とは、同セグメント内から、送信先IPを探すために、MACアドレス同士で所在確認を行うというプロトコルです。
つまり例えば、192.168.1.2/24のIPアドレスを持っていたら、192.168.1.0/24範囲内の254個の、MACアドレスに対応したIPアドレスを探すことができるというわけです。

大抵の機器は、ネットワーク通信を行う際に、MACアドレスとIPアドレスを紐づける「ARPテーブル」を持っております。
ARPテーブル情報は、Windows機をはじめとした、様々なクライアントやサーバ、ネットワーク機器へ標準で搭載されており、このコマンドで確認することができるのです。

つまり、調査用端末が端末Xと同じセグメントに位置していた場合「もしかしたら、調査用端末が端末XのIP情報をすでに持っているかもしれない」のです。

早速確認してみましょう。
Windows機におけるARPテーブル確認コマンドは「arp -a」です。

ちなみに上記結果の192.168.1.1はブロードバンドルータのIP/MACアドレス、192.168.1.255は、ブロードキャストドメインです。
本件の主旨はあくまで「調査端末の属するセグメント内で、端末Xを探し出す」ことなので、192.168.1.0/24内の情報に注目していくことになります。
(224.0.0.Xはマルチキャストアドレス、239..255.255.250はユニバーサルプラグアンドプレイのブロードキャストアドレス、255.255.255.255はブロードキャストアドレスなので、無視してOKです)
MACアドレスは、前半の「cc-1a-fa」という部分が「ベンダーコード」になっています。
ベンダーコードをGoogleなどで検索することにより「どのメーカーのNICなのか?」が分かります。
これは、端末Xを調査するうえで、重要なヒントにもなり得ます。

また、ARPテーブルによる調査を実施する場合、同セグメントに属するサーバか、ネットワーク機器であるほうが良いです。
ARPテーブルの特性は「接続対象もしくは接続目的のあるARP情報のみ、4時間ほど保持する」からです。
つまり、端末Xへ接続経歴のない端末は、ARPテーブルに端末Xの情報を載せている確率が低いのです。
端末XのARP情報を持っている確率が高くなるのは、自然と「ネットワーク機器>サーバ機器>他のクライアント」という順番になります。

なお、ARPテーブルを引き出すコマンドは、Windowsサーバやクライアントでは「arp -a」、LinuxサーバやMacOSでは「arp」、ネットワーク機器は「show arp」「display arp」等
が使用できますので、試してみましょう。

DHCPを捜索。割当IPの中から、IP捜査

身近なARPテーブルでの調査方法が上手くいかない場合、もっと上の階層での切り分けを実施するのが必然です。
(ネットワーク調査は、レイヤー1→7の順番に確認していくと、正確でスピーディな解析ができます)
DHCPサーバが社内にある場合、そのプール中のリストを把握するとよいかもしれません。
DHCPサーバの発行済みIPアドレスは、大抵の場合、DHCPサーバのUIに明記されています。

また、DHCPの割り当てパターンの多くは「所属セグメントの前半もしくは後半」であることが殆どです。
IPアドレス設計上、IPアドレスを固定しなくてはならない複合機やサーバのIPは、前半か後半どちらかに偏ることが多く、浮動IPを取り扱うDHCPは、DHCP用のIPゾーンが設けられていることが殆どだからです。

上記はWindowsサーバベースのDHCPサーバですが、アドレスがリースされたリストが表示されていることがわかります。
端末Xが「管理IPを忘れるほど」の扱いを受けていたということは、DHCPによる自動IP取得であった可能性が高く、もし「端末Xがオンラインの状態」であったならば、こちらのリストへ、端末Xがリース中のIPアドレスに出てきます。

しかし、DHCPによるIPリース期間も、ARPテーブルと同じく、期限があります。
デフォルト値で48時間程度であることが殆どですが、こちらも揮発性が高い情報であることは覚えておきましょう。

ICMPをブロードキャスト!最終手段のIP捜査

どんな手段を使っても、端末XのIPアドレスが見つからない。そんな時は「すべて調べて」しまいましょう。
具体的には、例えば192.168.1.0/24には、有効なIPアドレスが254個あります。
これら全てに全部、Pingを打ってしまうのです。

ExPingという、めちゃくちゃ便利なPingツールもありますが、今回の事例は「顧客先での依頼」を想定しているため、コマンドプロンプトとExcelさえあれば出来る、疎通確認方法をご紹介します。

  1. まず初めに、Excel上の適当なセルで「ping -n 2 -w 200 192.168.0.」と入力します。「-n 2」オプションは、「Pingを2回試行する」という意味です。スタンバイモードの端末は、1回目のPingに応答しないことも多く「1回目のPingでwake upし、2回目のPingに応答する」という事もあるからです。
    「-w 200」オプションは、「タイムアウトを5,000ms→200msにする」というものです。実際に、社内環境であれば、Pingは100msも掛からず返答されますし、宛先不明というだけで5秒も待つと、最大で「250箇所×5秒=20分以上」も時間がかかってしまうので、お勧めできません。
  2. 隣のセルへ1から順に、255までの数値を入力していきます。これはオートコンプリート機能を使うとよいでしょう。
  3. また次のセルへ「 >> Ping.txt」と入力します。これにより、Ping結果がPing.txtへ保存され、結果が後ほど確認出来るようになります。
  4. 「①③」の内容を、②の終端までコピーします。これで、同セグメントの疎通確認を網羅するPingコマンドが完成しました!
  5. コマンドプロンプト立ち上げ、Excelの内容を丸ごと貼り付けます。
  6. Ping結果がOKであった宛先IPを収集し、リストにまとめます。Pingの結果は、コマンドプロンプトの実行先(図の場合、C:Users\SX3\ping.txt)に保存されていますので、確認してみてください。
  7. ここで、①のコマンドを「nslookup 192.168.0.」に切り替え、③のコマンドを「 >> nslookup.txt 2>&1」へ切り替えます。「 2>&1」オプションを付けることで、DNSのホスト解決ができなかった場合は、明示的にエラーを報告してくれます(通常は無応答)。
  8. 絞り込んだ宛先IPへ、再びコマンドプロンプトからこれを実施し「宛先IPにホスト情報が存在するか」を確認します。端末Xがホスト名持ちであればそれが明確に、そうでなくても、他のホストが名乗りを上げるため、ヒントになるでしょう。

これで端末XのIPアドレスが確認できない場合は、端末Xはそもそもオフライン中か、別のセグメントで活動している状態でしょう。
(管理アクセスを許可していない場合や、Pingを許可していない場合もあります)

客先においては「このブロードキャストだと、ネットワークに負荷がかかるのではないか」という不安が出るかと思いますが、問題はありません。
端末は通常、ネットワークへ参加した際に、同様のブロードキャストをネットワーク内に放出しており、問題があるネットワークであれば、朝イチから遅延や通信不可が発生している筈です(朝は、一斉に端末が起動し始めるため)。
この状況は、概ね20年前のネットワーク環境下で頻発しておりましたが、現在では、ネットワーク機器も強化され、たかだか1台の端末だけで、事象が発生することはありえませんので、ご安心下さい。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

管理人のよしぞと申します。
フリーランス業界で働いている管理人が、業界で働く様々な視点からフリーランスエンジニアに挑戦するためのノウハウを掲載。独立を考えている方にとって手助けになるサイトを目指しています。

目次