すべてのIPアドレスを表示するWindowsコマンド


31

LAN上のすべてのコンピューターのIPアドレス(使用されているもの)を表示するのに役立つコマンドとその引数の1行があることを知っています。それは何ですか?


私はこれがそのような一般的な方法で可能だとは思わない。
theglauber

ローカルサブネットをpingスキャンし、次にリストされているarp -aコマンドを使用する必要があります。
cpt_fink 14年


「Angry IPアドレス」を使用してすべてのIPアドレスを確認することをお勧めします。
vembutech

回答:


28

このarp -aコマンドを実行して、ネットワーク上のコンピューターに関するテーブル内のすべてのARPエントリを表示できます。

ソース


6
それはあなたのコンピューターが知っている/話したすべてのシステムを表示します-しかし、それは完全ではないかもしれません-私はarp -aで簡単な実験を実行し、それをpingするまで私のシステムの1つまたは2つを表示しませんでした。
ジャーニーマンオタク

Ya、私が投稿したリンクのように、テーブルに保存されていない限りすべてを表示しないので、マシンは表示されませんが、かなり良いリストを表示します。
GigabitP 14年

Welcone to Stack Exchange、Gigabit Pony!リンクが回答の大部分を占める場合、後で死ぬ場合に備えて重要な部分を常に引用する必要があります。良い答えを書く方法についてもご覧ください。
ブラックライトシャイニング14年

21

IPアドレスを持つすべてがコンピューターであるとは限りません-これらの提案のどれもがすべてのアクティブなIPアドレスを返さないことに気付きました-実際、ほとんどはほとんど返されませんでした。私のホームネットワークには、有線と無線のデバイスと2つのルーター、携帯電話、テレビ、PVR、Apple AirPortの組み合わせがあり、おそらく忘れてしまったものがいくつかあります。次を使用して、192.168.1.xxxサブネット上のすべてのアドレスをスキャンしました。

for /L %i in (0,1,255) do ping -n 1 -w 250 192.168.1.%i>>ipaddress.txt

結果のファイルipaddress.txtにはすべてのアドレスのpingの結果が含まれており、「Received = 1」が付いているものを探しました-現在16個のアドレスが結果を返しました-私は家に4台のコンピューターしかありませんが、すべてがオンではありませんでした。


提案された編集(ロールバック)にfor /L %i in (0,1,255) do ping -n 1 192.168.1.%i -4 | findstr -m "bytes=32" >> ipaddress.txtはメリットがありますが、答えの基本ではなく、のReceived = 1代わりに使用した残りの答えとは一致せbytes=32ず、必ずしも私がした方法ではありません。提案が役立つと思う人がいれば、このコメントを追加します。
クリフォード

1
for /L %i in (1,1,254)xxxxxx.0は、ネットワーク全体のアドレスでxxxxxx.255あり、ブロードキャストアドレスであるため、より適切な場合があります。
スコット

13

net view /all同じLANに接続されているすべてのコンピューター名をリストするコマンドがあります。

それから、nslookup <computer name>コマンドを使用して個々のIPアドレスを取得するか、バッチスクリプトを作成して実行できます。

これは、説明のためにまとめたサンプルバッチです。

@echo off
setlocal EnableDelayedExpansion
set "xNext="
set "xComputer="
for /f %%A in ('net view /all') do (
    set "xComputer=%%~A"
    if "!xComputer:~0,2!"=="\\" for /f "tokens=2,* delims=. " %%X in ('nslookup %%A') do (
        if "!xNext!"=="1" (
            echo.!xComputer! = %%X.%%Y
            set "xNext=0"
        )
        if "!xComputer:~2!"=="%%~X" set "xNext=1"
    )
)
endlocal
pause

5

、、、またはバッチスクリプトの記述を除いてarp -anet view /allこれを行うためのネイティブ/組み込みのコマンドラインはありません(少なくとも私が知っていることはありません)。

非ネイティブコマンドを使用する場合は、Nmapを使用することをお勧めします。あなたは実行することができますnmap -sn 192.168.0.0/24ので、より一層確実に、あなたが探しているものを達成するために(あなたのLANに適したものとサブネットを置き換える)、net view /allまたはarp -a私の意見では。



1

arp -aただし、ARPがすべてのデバイスを報告するように、他の誰かが示したように、ブロードキャストアドレスを最初にpingするようにしてください。例えば、ping 192.168.0.255

IPアドレスとMACアドレスによってネットワークに接続されているすべてのデバイスのリストを取得します。https://aruljohn.com/mac.plなどのWebサイトでMACアドレスを検索して、NICのベンダーを確認できます。これにより、ほとんどのデバイスを絞り込むことができます。すなわち、コンピューター、プリンター、テレビ、携帯電話など。



0

これが私の簡単な解決策です。各IPアドレスで接続されているデバイスのタイプがわかります。

netstat -r 

0

すべてのコンピューターIPアドレス(使用されているもの)を表示する

netstat -aこれはあなたにアクティブなリストを与えることを意味すると思うかもしれません。IPアドレスを使用してプログラムを知りたい場合は、netstat -b(管理者として開く)を使用します。


技術的に言えば、netstat -a現在のネットワーク接続のリストをダンプします。左のIPアドレスの列には、ローカルインターフェイスが含まれています。
ベンN
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.