highpowerrouter
  • デスクトップ
  • タブレット
  • モニター
  • ルーター
  • Digitalni život
  • Serbian (Latin)
    • English
    • Serbian (Latin)
    • Finnish
    • Czech
    • Bulgarian
    • Japanese
  • Home
  • ルーター
  • 今、そこにある機器
03 Apr, 2022

今、そこにある機器

数年前のこと、筆者宅でPCのIPアドレス割り当てが「予想もしていない」アドレスになったことがある。原因はポータブルテレビ。本体とディスプレイの接続に無線LANを使っていて、無線LANアクセスポイント経由で接続しない場合、本体が無線LANのアクセスポイントやDHCPサーバー、ルーターになるものだった。簡単にいうと、テレビの中に無線LANルーターが入っているようなものだ。購入時には、自宅のアクセスポイントを経由して接続するよう設定したが、あるとき調子が悪いので出荷状態に戻したときに、直接接続するモードに戻ってしまった。このため、ネットワーク内に2つのDHCPサーバーが存在し、一部のPCがテレビからIPアドレスをもらっていたわけだ。こういうとき、ネットワーク内のノードを列挙できるツールが使えるとかなり助かる。

ネットワーク内のノードを列挙したい

Windowsではエクスプローラーのネットワークを開くと、同じネットワークに属するPCやプリンタ、ファイルサーバーなどを見ることができる。しかし、ネットワークにあるすべての機器を表示できるわけではない。Windowsからアクセス可能な機器だけが見える。たとえば、Chromebookは、SMBプロトコルを使ってWindows PCが公開している共有フォルダにアクセスできるが、エクスプローラーには表示されない。エクスプローラーは、限られたプロトコルでしか機器を探さないからだ。ネットワークフォルダを「詳細表示」させて探索方法の列を見ると、そこには「WSD」、「SSDP」、「WCN」などのキーワードが並ぶ。

もしかしたら、まだSMBv1の機器もあるかもしれない。かつてのWindowsでは、SMBv1プロトコルを使ってネットワーク内機器を探索していたが、Windows 10 Ver.1709(RS3)でSMBv1が廃止された(ただし、Ver.1709以前からSMBv1を利用していると残ったままになる)。SMBv2以降は、ネットワーク上の機器の検出には、WSD(Web Services for DevicesあるいはWeb Services on Devicesとも)を利用する。

これは、Web Services Dynamic Discovery(WS-Discovery)プロトコルを使い、Devices Profile for Web Services(DPWS)に準拠したデバイスを探索するしくみ。基本的にはWindowsは、これで他のWindowsマシンやプリンタをネットワークから見つける。

SSDPは、UPnP(Universal Plug and Play)で使われるSimple Service Discovery Protocolのことで、ネットワーク上のサービスやその存在を発見するためものだ。WSDは、PCの検出に使われるが、SSDPは、テレビなどのネットワーク対応AV機器で主に使われる。また、WCNは、Windows Connect Nowの略で、無線LANのWPS(Wi-Fi Protected Setup)と、WSC(Wi-Fi Simple Configuration)を使った簡易なデバイス発見、設定方法だ。Windowsでは、これらを使ってネットワーク内の機器を探して表示するが、逆にいうと、これらに対応しない機器は、Windowsのエクスプローラーから見ることができない。

今、そこにある機器

となると、積極的にネットワークにある機器を探すツールが必要になる。簡易には、多くのプラットフォームで、利用可能なARP(Address Resolution Protocol)のarpコマンドを使う方法もある。しかし、事前に該当アドレスへのアクセスが必要なこと、同一ネットワーク内でないと記録が残らない(他のネットワークへのアクセス時にはmacアドレスが不要であるため)。ただし、ARPにより一回macアドレスとIPアドレスの対応付けがなされると、一定時間は、キャッシュに残るため、現在は、通信できなくても機器を列挙できる。WindowsでもLinuxでも「arp -a」で記憶しているIPアドレスとmacアドレスを表示できる。

ネットワーク機器を列挙するコマンド

Windowsでは、PowerShellを使えば、ネットワーク内の機器を列挙できる。それには、Get-NetNeighborコマンドを使う。ただし大量のアドレスが表示されるので、オプション(表01)を使って出力を制限するか、Where-Objectを使って、特定の機器(たとえばLinkLayerAddressがすべてゼロではないなど)だけ抜き出す。たとえば、“-InterfaceIndex”を使うと、特定のネットワークアダプターから発見できるネットワーク機器だけを表示できる。なお、この値は、get-netadapterコマンドで探すことが可能だ。

■表1 Get-NetNeighborのオプション(一部)
オプション意味
-IPAddress "アドレス文字列"IPアドレスを指定。ワイルドカード利用可能
-InterfaceIndex 番号番号でネットワークアダプタを指定。"-ifIndex"も可
-LinkLayerAddress "macアドレス文字列"macアドレスを指定。ワイルドカード利用可能
-State "ステート"Reachableなどの機器の状態を指定
-AddressFamily "IPv6"または"IPv4"IPv4またはIPv6アドレスのみを出力
Get-NetNeighbor -ifIndex 5 | ?{ $_.LinkLayerAddress -ne "00-00-00-00-00-00" }

Linuxならnmapコマンドを使うのが手っ取り早い。多くのディストリビューションでは、nmapパッケージをインストールすればよい(Windows版もありwingetでインストールが可能)。Windows上のWSLからも利用可能だが、WSL2は、ホスト側Windowsとは異なる内部ネットワークをブリッジしているため、LAN側のスキャンに少し時間がかかる。自分のLANのネットワークアドレスが192.168.0.0/24ならば、

nmap -sn 192.168.0.0/24

でpingを使ったネットワークのスキャンが行える。なにもオプションを付けずにネットワークアドレスだけ指定すれば、開いているポートの表示もできるし、オプションでOSやバージョンの判定も可能だ(写真01)。Get-NetNeighborはアドレスの指定は不要だが、nmapの場合にはスキャン対象のネットワークアドレスを指定する必要がある。

どちらも、IPアドレスを持っている機器ならば探索が可能だが、UPnPを使うと、機器自身が提供する情報も取得できる。エクスプローラーでネットワーク対応テレビやBDレコーダーなどが機種名やアイコンを表示するのは、この機能のためだ。こうした機器は、WSDには反応しないものが多い。

Linuxならgupnp-toolsパッケージの中にあるgssdp-discoverを使うと、ネットワーク内のSSDP対応機器をスキャンしてくれる。ただし、SSDPではマルチキャストを使うため、発見できるのは同一ネットワーク内に限られる。WindowsのWSL1ではgssdp-discoverが動かず、WSL2のLinuxは仮想マシン内で動作するため、ホスト側PCとは別ネットワークになる。このため、WSLではgssdp-discoverでUPnP機器を発見することはできない。WSLではなく物理ハードウェアで動いているLinuxが必要になる。

Windows向けのUPnPツールは、かつてはIntelが開発した“Intel Tools for UPnP”があったのだが、配付が止まったのかIntelのサイトでみつけることができなかった。インターネット検索するとオープンソースのものがあるようだが、きちんと評価する時間がなかった。とりあえずエクスプローラーがSSDP対応機器を表示してくれるのでなんとかなるだろう。

同一ネットワーク内の機器が列挙できれば、これをもとにさまざまなネットワークサービスを使って、情報収集やリモート管理などが可能になる。ネットワークの機器リストは、その意味でネットワーク管理の「基礎」ともいえる。スマートフォンやタブレットなどバッテリ駆動で、接続が間欠的になる機器もあれば、昔に比べるとネットワーク接続可能な機器の価格も下がったが、寿命も短くなった。実際に動いている機器は数台でも、人手で調べた機器リストによる管理は、一般ユーザーでもそろそろ限界だろう。

Prev Next
Tags: ルーターでのwpsの意味

Navigation Lists

  • ネットワーク内のノードを列挙したい
  • ネットワーク機器を列挙するコマンド

Category

  • デスクトップ
  • タブレット
  • モニター
  • ルーター
  • Digitalni život

Related Articles

  • バッファロー、アニメ「タイバニ2」コラボのWi-Fi 6ルーター2モデルを発売

    バッファロー、アニメ「タイバニ2」コラボのWi-Fi 6ルーター2モデルを発売

    03 Apr, 2022 - By highpowerrouter
  • リーバイスに学べ 出遅れてもなお老朽化したERPを刷新すべき理由:CIO Dive

    リーバイスに学べ 出遅れてもなお老朽化したERPを刷新すべき理由:CIO Dive

    03 Apr, 2022 - By highpowerrouter
  • プライバシーは人権です。接続元を匿名化するブラウザ「Tor」がサーバー不足でピンチに

    プライバシーは人権です。接続元を匿名化するブラウザ「Tor」がサーバー不足でピンチに

    03 Apr, 2022 - By highpowerrouter
  • 関空直結のエアロプラザに1泊6200円からのコンパクトホテル「ファーストキャビン関西空港」

    関空直結のエアロプラザに1泊6200円からのコンパクトホテル「ファーストキャビン関西空港」

    03 Apr, 2022 - By highpowerrouter
  • 自分の時間を可視化して行動にメリハリを!「aTimeLogger 2」

    自分の時間を可視化して行動にメリハリを!「aTimeLogger 2」

    03 Apr, 2022 - By highpowerrouter

Hot Articles

  • Windows 11にオプションパッチ「KB5010414」が配信開始。タスクバーの機能強化や印刷/ドライバの問題などに対処。必要に応じてインストールを
    Windows 11にオプションパッチ「KB5010414」が配信開始。タスクバーの機能強化や印刷/ドライバの問題などに対処。必要に応じてインストールを
    03 Apr, 2022 - By highpowerrouter
  • マウスが加水分解でベタベタ化した話
    マウスが加水分解でベタベタ化した話
    03 Apr, 2022 - By highpowerrouter
  • ゲームモニターを選択する方法
    ゲームモニターを選択する方法
    03 Apr, 2022 - By highpowerrouter
  • 03 Apr, 2022 - By highpowerrouter
  • HONOR X8a: ミッドレンジのスマートフォンが 100MP カメラ システムでカメラ テクノロジーをどのように再定義するか
    HONOR X8a: ミッドレンジのスマートフォンが 100MP カメラ システムでカメラ テクノロジーをどのように再定義するか
    03 Apr, 2022 - By highpowerrouter

Copyright © 2023 highpowerrouter.com. All rights reserved.