GNU/Linux >> Linux の 問題 >  >> Linux

ローカルネットワークに接続されている他のマシンを見つける方法は?

自分が所属しているLANで利用可能なすべてのマシンのリストを確認するにはどうすればよいですか。

承認された回答:

問題のLANについてどのくらい知っていますか?ケーブルを差し込んだり、wifiに接続したりしただけでは何もわからないと思います。

  1. DHCPを使用してIPアドレスを要求してみてください。もらえますか?そうすれば、ゲートウェイIP、DHCPサーバーIP、サブネットマスク、そしておそらくDNSサーバーなどのいくつかのことをすでに知っています。
  2. 取得できない場合は、DHCPサーバーがないか、ネットワークがMACフィルター処理されています。
  3. どちらの方法でも、wiresharkを使用してパケットのキャプチャを開始します。ワイヤレスを使用している場合やハブに接続している場合は、簡単です。スイッチに接続している場合は、MACフラッディングを試して「ハブモード」に戻すことができますが、よりスマートなスイッチを使用すると、ポートが無効になります。とにかくそれを試してみたい場合は、ettercapがこれを行うことができます。 (またはmacchangerとシェルスクリプト🙂)
  4. パケットを見るとIPアドレスが見つかりますが、最も重要なのは、ネットワークパラメータを推測できることです。 MACフィルタリングが疑われる場合は、MACアドレスを、離れた後に監視対象のアドレスの1つに変更します(しばらくの間何も送信しません)。
  5. ネットワーク構成(ネットマスク、ゲートウェイなど)についてよくわかっている場合は、nmapを使用してスキャンします。 Nmapは-sPよりも多くのことを実行できます 一部のホストがpingに応答しない場合(ドキュメントを確認してください)。 nmapが機能するのは、ネットワーク設定とルートが正しい場合のみであることが重要です。
  6. nmapのアイドルスキャンでさらに多くのホストを見つけることができる可能性があります。

一部の(ほとんどの?)システム管理者は、上記の方法のいくつかを好まないため、許可されていることを確認してください(たとえば、ネットワークの場合)。また、独自のファイアウォールによってこれらの方法の一部を防ぐことができるため(DHCPでIPを取得する場合でも)、最初にルールを確認してください。

Nmap

nmapを使用して基本的なホスト検出を行う方法は次のとおりです。私が言ったように、これを試すときはネットワーク構成が正しいはずです。あなたが192.168.0.50であり、/24サブネット上にいるとしましょう。あなたのMACアドレスは、接続などが許可されているものです。wiresharkを実行して、自分が何をしているかを確認したいと思います。

まず、リストスキャンを試してみます。これは、指定されたIPアドレスのDNSのPTRレコードのみを解決しようとします。ホストには何も送信しないため、実際に接続またはオンになっている保証はありませんが、十分な可能性があります。このモードには明らかに、あなたと話をしてくれるDNSサーバーが必要です。

nmap -vvv -sn -sL 192.168.1.0/16

これは何も見つからないか、すべてのIPが稼働していることを示している可能性があります。

関連:muttを使用してマークダウンで書かれたメールを送信しますか?

それから私は通常ARPスキャンに行きます。 ARPリクエストを送信します("Who has <target IP>? Tell <your IP>"として表示されます Wiresharkで)。誰もARPをフィルタリングしたり偽造したりしないので、これはかなり信頼できます。主な欠点は、サブネットでのみ機能することです。

nmap -vvv -sn -PR 192.168.1.0/24

ルーターやファイアウォールの背後にあるものをスキャンする場合は、SYNおよびACKスキャンを使用します。 SYNはTCP接続を開始し、応答としてRSTまたはSYNACKを取得します。いずれにせよ、ホストは稼働しています。ファイアウォールがあると、ICMP通信が禁止されるなどの問題が発生する可能性があります。ほとんどの場合、ファイアウォールがパケットをフィルタリングした場合、何も得られません。一部のタイプのファイアウォールは、TCP SYNパケットのみをフィルタリングし、他のすべてのTCPパケットを通過させます。これがACKスキャンが役立つ理由です。ホストが稼働している場合は、応答としてRSTを取得します。どのファイアウォールが設置されているかわからないので、両方を試してください。

nmap -vvv -sn -PS 10.1.2.0/24
nmap -vvv -sn -PA 10.1.2.0/24

その後、もちろん、-PE-PP-PMでICMPベースのスキャンを使用できます。

もう1つの興味深い方法は、プロトコル番号が存在しない-POです。多くの場合、ファイアウォールではTCPとUDPのみが考慮され、不明なプロトコルを試したときに何が起こるかをテストする人は誰もいません。ホストが稼働していると、ICMPプロトコルに到達できなくなります。

nmap -vvv -sn -PO160 10.1.2.0/24

nmapに、ホスト検出(-Pn)をスキップして、すべてのホストでポートスキャンを実行するように指示することもできます。これは非常に遅いですが、何らかの理由でホスト検出が見逃した他のホストが見つかる可能性があります。


Linux
  1. ゾンビプロセスとは何ですか?ゾンビプロセスを見つけて殺す方法は?

  2. ロケールを設定する方法とその意味は何ですか?

  3. Sambaに接続するためのドメインを確認する方法は?

  1. ネットワークケーブル/コネクタの物理的な接続状態を検出する方法は?

  2. ローカル ネットワーク内の NFS サーバーに接続されているクライアントのリストを取得する方法は?

  3. システムに搭載されているハードディスクを確認するにはどうすればよいですか?

  1. システムにログオンしているユーザーとそのユーザーが行っていることを確認する方法

  2. Linux –システムに搭載されているハードディスクを確認する方法は?

  3. パイプの反対側にあるプロセスを見つける